how-to-contribute
https://github.com/firstcontributions/first-contributions

你怎么能直接 commit 到我的 master 分支啊?!GitHub 上不是这样!你应该先 fork 我的仓库,然后从 develop 分支 checkout 一个新的 feature 分支,比如叫 feature/confession。然后你把你的心意写成代码,并为它写好单元测试和集成测试,确保代码覆盖率达到95%以上。接着你要跑一下 Linter,通过所有的代码风格检查。然后你再 commit,commit message 要遵循 Conventional Commits 规范。之后你把这个分支 push 到你自己的远程仓库,然后给我提一个 Pull Request。在 PR 描述里,你要详细说明你的功能改动和实现思路,并且 @ 我和至少两个其他的评审。我们会 review 你的代码,可能会留下一些评论,你需要解决所有的 thread。等 CI/CD 流水线全部通过,并且拿到至少两个 LGTM 之后,我才会考虑把你的分支 squash and merge 到 develop 里,等待下一个版本发布。你怎么直接上来就想 force push 到 main?!GitHub 上根本不是这样!我拒绝合并!

怎么给开源项目提拉取请求(Pull Request)?

在 GitHub 上给开源项目提 PR(Pull Request)大致分为以下几个步骤:

1. Fork 项目

2. Clone 到本地

git clone https://github.com/你的用户名/项目名.git
cd 项目名

3. 添加上游(Upstream)远程仓库,这样能随时同步原项目的更新

git remote add upstream https://github.com/原作者/项目名.git

4. 创建新分支,不要在 main/master 上直接改动,可取的做法是新建一个分支

git checkout -b feature/你的修改内容

5. 修改代码并提交到 fork 仓库,在本地修改完成后

git add .
git commit -m "简要说明修改内容"
git push origin feature/你的修改内容

6. 提交 Pull Request

7. 等待维护者 Review

Git Commit 规范

Conventional Commits(约定式提交)
<type>(<scope>): <subject>

❤️ 转载文章请注明出处,谢谢!❤️