Git 学习笔记(三) - 分支管理
建站提交历史文章,原文写作时间 2023 年 1 月 11 日前后。
基本操作
1 | git switch {branch} # 切换分支 |
删除分支将删除关于分支的所有信息,包含 reflog
,这意味着 -D
强力删除后将无法访问分支的任何相关信息。
分支合并
git merge
用于快速合并两个分支,如果两个分支没有同时更改一个文件,分支合并可以立即完成。合并结果即为两个文件的差异叠加。但是如果两个分支同时更改同一文件(称为 冲突
),快速合并无法完成,分支将进入 merging
状态,此时需要你手动合并。手动合并从 git merge
开始到 git commit
结束。
假设你遇到了一个冲突:
1 | # 创建 Version1 分支 |
你需要解决这个复杂的冲突:
1 | # 合并分支 :( |
现在我们来查看一下成果:
1 | $ git log --pretty=oneline --graph version1 # 显示合并图形结构 |
如果中途想要放弃合并,可以使用:
1 | git merge --abort |
管理策略
- 项目的
master
分支应该是稳定的。 - 项目合作主要在
dev
分支进行。 - 每个开发人员有独立的分支,如
jamhus-tao
。 - 如图:
- 此外,每个 BUG 可以有临时的分支,如
issue_101
。 - 创建废弃分支,它应该有详细的名字,如
jamhus-tao_discarded_230111
。 - 创建
cur
分支,用于在临时需要时在各个分支上自由跳跃。
评论