分支策略
master主分支主要用来发布新版本,应该保持稳定,并且时刻与远程库同步,一般情况下不允许在master主分支直接做修改。
通常都是在新建的branch分支修改,确认改动稳定后,合并到主分支master,然后把主分支master推送到远程库。
例如:一个bug通过一个临时分支来修复,修复完成后,合并分支,然后将临时的分支删除。
管理分支
查看所有分支(星号表示当前分支):git branch
创建分支:git branch <branch name>
切换分支:git checkout <branch name>
创建并切换到新分支:git checkout --branch <branch name>
合并branch分支的提交内容:git merge <branch name>
合并完成后着删除branch分支:git branch --delete <branch name>
查看分支合并信息:git log --merges
图形化显示分支的合并历史:git log --graph --oneline --decorate --all
解决分支冲突
Troubleshooting about conflict during merge
Error messages: "Automatic merge failed; fix conflicts and then commit the result."
Git bash 命令行也会显示冲突提示,形如:(master|MERGING)
- 查看状态,确认基本信息:git status
- 查看冲突文件,确认冲突内容:cat
- 在HEAD分支(一般为master分支)修改冲突文件内容,添加到暂存区,然后提交到仓库。
- 查看分支合并信息:git log --merges
解决完冲突后,可以重新建立branch分支 或 在branch分支git merge master ,继续工作。