> 技术文档 > 新手Github提交PR(Pull requests)详细教程

新手Github提交PR(Pull requests)详细教程


一、什么是Pull requests?

Pull Requests(PR)是代码协作平台(如 GitHub、GitLab 等)中的一种功能,用于提议将某分支的代码变更合并到另一个分支(通常是主分支)。它允许开发者在合并前进行代码审查、讨论和修改,是团队协作开发的核心工具之一。

二、提交PR的作用

GitHub的Pull Request(PR)是协作开发中的核心功能,主要用于代码审查、讨论和合并贡献。以下是其主要作用:

促进代码审查与改进
PR允许贡献者将代码变更提交给项目维护者,维护者可以查看修改内容,提出建议或请求进一步调整。通过评论和讨论,确保代码质量符合项目标准。

简化协作流程
开源项目中,非核心成员通过PR提交代码变更,无需直接写入主仓库。维护者拥有最终合并权限,避免未经审核的代码影响主分支稳定性。

记录变更历史
PR包含完整的修改描述、讨论记录和审查意见,形成可追溯的文档。合并后自动关联提交历史,便于后续排查问题或理解代码演进过程。

自动化集成检查
GitHub可配置CI/CD工具(如Actions),在PR阶段自动运行测试、lint检查或构建流程。失败时会阻止合并,确保主分支始终处于可部署状态。

支持分阶段合并
大型项目可能使用多级PR流程,例如从开发分支提交到测试分支,再合并到主分支。不同环境对应不同审查标准,降低风险。

非代码类协作
PR不仅限于代码,也可用于文档更新、配置文件修改等。任何仓库内容的变更均可通过此机制提交和审核。

权限管理工具
对于企业或私有项目,PR是实施代码所有权(Code Ownership)策略的关键,特定文件修改需指定人员审批后方可合并。

通过PR机制,GitHub将分布式协作流程标准化,成为现代软件开发中质量控制的核心环节。

三、提交PR流程

我们以国内嵌入式操作系统RT-thread为例:

1、注册Github账户

首先需要注册一个自己的Github账户。
新手Github提交PR(Pull requests)详细教程

2、进入rt-thread仓库

https://github.com/RT-Thread/rt-thread,点击链接进入。
新手Github提交PR(Pull requests)详细教程

3、fork一份rt-thread源码进入自己仓库

新手Github提交PR(Pull requests)详细教程
我已经fork过了,所以会有下面的提示,没fork过的话选择自己的账户路径就OK了。
新手Github提交PR(Pull requests)详细教程
如果是较早之前fork的仓库,可以先和上游的仓库同步一下:
新手Github提交PR(Pull requests)详细教程

4、将代码从自己仓库拉取到本地

Github下载安装,点击链接进入
新手Github提交PR(Pull requests)详细教程

新手Github提交PR(Pull requests)详细教程
新手Github提交PR(Pull requests)详细教程
新手Github提交PR(Pull requests)详细教程
等待clone完成:
新手Github提交PR(Pull requests)详细教程
Github为国外网站,所以下载起来会比较慢。

5、创建一个新的分支

新手Github提交PR(Pull requests)详细教程

6、修改需要修改的部分

新手Github提交PR(Pull requests)详细教程
加入新的内容

7、提交推送

新手Github提交PR(Pull requests)详细教程

8、发起PR

新手Github提交PR(Pull requests)详细教程
填写相关内容
新手Github提交PR(Pull requests)详细教程
根据要求检查代码:
新手Github提交PR(Pull requests)详细教程
下面可以看到修改的内容:
新手Github提交PR(Pull requests)详细教程
检查没问题后点击按钮创建:
新手Github提交PR(Pull requests)详细教程

此时你就可以在rt-thread仓库看到你发起的PR了:
新手Github提交PR(Pull requests)详细教程
管理员检测没问题就会合并你的代码进入主仓库了。