Chapter 3-2,3
合并
在提交对象C2处创建分支iss53和hotfix
然后合并hotfix
git checkout master
git merge hotfix
合并时出现“Fast forward”的提示。由于当前 master 分支所在的提交对象是要并入的 hotfix 分支的直接上游,Git 只需把 master 分支指针直接右移
删除hotfix分支
git branch -d hotfix
之后若合并iss53到master,则会对两个分支末端和它们的共同祖先进行合并计算,创建提交对象C6.
若两个分支修改了相同部分,则会导致合并冲突,并不会进行提交,而是需要手工修改冲突后再递交
有冲突文件的冲突部分:
<<<<<<< HEAD:index.html
<div id="footer">contact : email.support@github.com</div>
=======
<div id="footer">
please contact us at support@github.com
</div>
>>>>>>> iss53:index.html
=======上面是(HEAD)master, 下面是iss53,择一
然后用 git commit 来完成这次合并提交,提交记录
Merge branch 'iss53'
Conflicts:
index.html
#
# It looks like you may be committing a MERGE.
# If this is not correct, please remove the file
# .git/MERGE_HEAD
# and try again.
#
列出所有分支
git branch
查看各分支最后一个递交对象信息
git branch -v
查看与当前分支合并(未合并)的分支
git branch --merge
git branch --no-merge
有*的分支为当前分支。可以删掉已经合并到当前分支的分支。
若要删除未合并的分支,-d会提示出错,用-D
git branch -D name
删除本地分支后删除远程分支
git push origin :name