在 GitHub 上提交 Pull Request(简称 PR,拉取请求)是参与开源项目或团队协作的核心方式。简单来说,就是把你修改好的代码“请求”合并到别人的项目里。
以下是提交 PR 的完整标准流程,你可以把它看作一份新手避坑指南:
🌱 1. Fork 项目(复制一份到你自己的仓库)
在你想要贡献代码的项目主页,点击右上角的 Fork 按钮。这会在你的 GitHub 账号下生成一个该项目的完整副本。
💻 2. Clone 到本地(把代码下载到电脑)
打开你 Fork 后的仓库,点击绿色的 Code 按钮,复制仓库的 HTTPS 或 SSH 链接。在本地终端(命令行)中执行克隆命令:
git clone 你的仓库链接
🌿 3. 配置上游仓库与创建分支(关键步骤)
进入项目文件夹后,千万不要直接在主分支(main/master)上修改代码!
- 添加上游仓库:为了后续能同步原项目的最新代码,需要把原项目添加为上游仓库(upstream)。
git remote add upstream 原项目的仓库链接 - 同步最新代码:先拉取原项目的最新代码,确保你的基础是最新的。
git checkout main然后git pull upstream main - 创建新分支:基于最新的 main 分支,创建并切换到一个新的功能分支。分支名最好有意义,例如
fix/typo-in-readme(修复文档错别字)或feature/new-login(新增登录功能)。
git checkout -b fix/typo-in-readme
✏️ 4. 开发与提交(写代码与 Commit)
在本地用你喜欢的编辑器修改代码。修改完成后,执行以下 Git 操作:
git add .(将修改加入暂存区)git commit -m "docs: fix typo in installation guide"(提交代码)- 提示:Commit 信息最好遵循规范,比如
feat:表示新功能,fix:表示修 Bug,docs:表示改文档,这样会显得非常专业。
- 提示:Commit 信息最好遵循规范,比如
git push origin fix/typo-in-readme(将你的分支推送到你远程的 GitHub 仓库)
🚀 5. 提交 Pull Request(发起合并请求)
代码推送到你的 GitHub 仓库后,打开你的仓库页面,通常会看到一个醒目的 Compare & pull request 按钮,点击它(或者去原项目的 Pull requests 页面点击 New pull request)。
- 填写 PR 描述:标题要简明扼要。在描述框里写清楚你解决了什么问题、是怎么修改的,如果有相关的 Issue 编号也可以关联(如
Closes #123)。 - 点击 Create pull request:正式提交请求,通知原项目的维护者来审查你的代码。
🔄 6. 应对反馈与合并(代码审查)
提交后,项目维护者会 Review 你的代码:
- 如果需要修改:直接在本地同一个分支(
fix/typo-in-readme)上继续修改,然后再次add、commit、push。PR 会自动更新,不需要重新提交。 - 如果发生冲突:如果原项目在你修改期间有了新更新,你可能需要先在本地
pull upstream main并解决冲突,然后再 push。 - 大功告成:维护者审核通过后,会点击 Merge pull request。你的代码就正式被合入原项目了!🎉
🧹 7. 收尾清理
PR 合并后,记得清理一下本地和远程的临时分支,保持环境整洁:
- 切回主分支并拉取最新代码:
git checkout main和git pull upstream main - 删除本地功能分支:
git branch -d fix/typo-in-readme
💡 给新手的建议:
如果你是第一次尝试,可以先从修复文档错别字、翻译或修正链接开始,这些都是非常受欢迎的入门贡献。另外,动手前记得阅读项目里的 CONTRIBUTING.md 文件,里面通常包含了该项目的具体贡献规范。祝你第一次提 PR 顺利!