合并
一句话解释
合并(merge)是把两条分支的改动整合到一起的操作,让分叉的开发线重新汇合。
用大白话说
合并(merge)是把另一条分支的改动整合到当前分支。最常见场景:在 feature 分支开发完一个功能,切回 main,git merge feature 把功能合进主线。
git switch main
git merge feature-login
合并时可能遇到冲突(conflict):两条分支改了同一个文件的同一处,Git 不知道该保留哪个,就停下来让你手动决定。冲突的文件里会有 <<<<<<<、=======、>>>>>>> 标记,你编辑文件选保留哪部分,然后 git add + git commit 完成合并。
合并的两种方式:
- merge:保留分支历史,形成合并提交,历史是网状的
- rebase:把分支提交"搬到"主线末尾,历史是线性的,更干净但会改写历史
新手建议先用 merge,理解 rebase 后再按团队规范选择。
示例
bash
git switch main
git merge feature-login
# 如果有冲突:
# 1. 编辑冲突文件,保留正确内容
# 2. git add 冲突文件
# 3. git commit 完成合并切到目标分支后 git merge 源分支。有冲突时手动编辑冲突文件,解决后 add + commit 完成合并。
工作原理
- 切到要合并到的目标分支(如 main)
git merge 源分支把源分支的改动整合进来- 若两边改了同一处,产生冲突,Git 暂停让你手动解决
- 解决冲突后
git add+git commit完成合并
常见混淆
容易混淆的对象: rebase
关键区别: merge 保留分支历史、形成合并提交(历史是网状);rebase 把提交搬到目标末尾、历史线性更干净但改写历史。新手优先用 merge。
相关术语
相关资源
相关课程
- GitHub 基础
合并分支和解决冲突
学习基础知识
通过结构化课程深入理解这个主题。
解读错误信息
用大白话解释常见错误——什么意思、为什么发生、如何修复。