Git

合并请求Pull Request

你可能会说

我改完了,想请人看一眼没问题,再合进正式版本。

合并请求是在 GitHub 或 GitLab 上查看改动、讨论并决定是否合并的页面。例如把新导航的改动上传后,可以创建一个合并请求;其他人能逐行查看变化、留言并确认自动检查结果,再决定是否合进主版本。它不是终端命令,也不表示改动已经进入主版本。
新功能分支更新首页导航3 个文件有改动
发给别人检查Pull Request→
✓ 说明清楚✓ 检查通过可以合入主版本
在 GitHub 上创建 Pull Request

Pull Request 是一个检查页面,不是终端命令。它把“为什么改、改了什么、怎样验证”集中给团队确认,确认后才合入主版本。

组成结构 · Anatomy
● Openfeat: 首页加上深色模式 #12
xiao-hu 想把 feat/dark-mode 合并进 main
ConversationCommits 3Checks ✓Files changed 2
✓ 没有冲突,可以自动合并Squash and merge ▾
一句话说清改了什么;#12 是这张申请单的编号
从哪个分支合进哪个分支:feat/dark-mode → main
Conversation 讨论、Commits 存档点、Files changed 逐行改动
检查、测试和审批通过后再点;合并方式遵循项目约定
常见变体 · Variants
Squash and mergeSquash
3 commits → 整理为 1 条进入 main
需要将一组中间提交整理为一个完整改动时
Create a merge commitMerge Commit
每条 commit 原样保留 + 合并节点
需要保留完整过程记录时用
Rebase and mergeRebase
commits 排队接到 main 尾巴上
历史一条直线,没有合并节点
典型使用场景
GitHub 开 PR 页
Open a pull request
base: main ← compare: feat/dark-mode ✓ Able to merge
改了什么:导航栏 + 卡片支持深色
怎么验证:切换右上角开关看效果
PR 对话与 review
feat: 首页加上深色模式 #12
● Open xiao-hu 想把 3 个 commits 从 feat/dark-mode 合并进 main
狸
you · 2 小时前 · Approved
说明写得很清楚,深色下导航栏对比度也没问题,可以合。
ConversationCommits 3Checks ✓Files changed 2
Files changed 看改动
Files changed 2 +18 −4
📄 index.html
- <button>点我</button>
+ <button class="btn btn-primary">立即开始</button>
  </section>
按项目约定选择合并方式
✓ This branch has no conflicts with the base branch
3 个 commits 将压成 1 条进入 main:feat: 首页加上深色模式 (#12)
⤴ Merged xiao-hu merged 3 commits into main
延伸阅读 · 权威出处