1.git分支相关操作
1.1 分支的创建
查看所有分支 git branch
新建分支 git branch [分支名称]
1.2 分支切换
git chechkout [分支名称]
1.3 分支合并
先切回主分支,再将分支进行合并
git checkout master # 切回主分支
git merge issue102 # 将issue102分支合并到主分支
分支合并经常会遇到冲突,这个时候有三种处理方法:
- 手动合并手动合并的方法很简单,就是我们选择我们要保留的代码,然后再把
>>>>>, ======, <<<<<<
这些提示行给去掉。最后重新进行add commit
的操作即可。 - 放弃合并当我们发现冲突所导致的改动量很大时,我们可以选择放弃该次的合并。我们可以使用
git merge --abort
放弃此次的融合。如果我们在运行了git merge
之后又进行了一些人为的改动,那么在abort
之后,所进行的改动也会被回滚掉。 mergetool
除了手动合并以及放弃合并之外,我们还有一些其他的合并工具。git官方开发了一个专门用来合并的工具,叫做git mergetool
(下图所示),它会将找到一份两个分支的祖先代码作为base(基准),然后再将两个分支的改动都列举出来作为对比,让我们在git编辑器当中决定要留下什么。在此处,我们不做过多的阐述,感兴趣的同学可以点击下方链接进行查看。
1.4 分支推送到远程
git push origin master # 将本地的master分支推送到远程
git push origin issue102 # 将本地的issue102推送到远程分支
1.5 分支的删除、重命名
git branch -d [branchName] # 删除本地分支
git push origin --delete [branchName] # 删除远程分支
git branch -m [oldBranchName] [newBranchName] # 分支重命名
2.分支开发工作流
长期分支 和 短期分支
- master分支应该是最稳定的,也就是仅用来发布新版本,平时不能直接在上面进行操作,应该保存在远程。
- 短期分支是我们干活的分支,短期分支可以不用上传到远程,当我们完成了bug的修复,新功能的开发时才需要合并到主分支上。
- 多使用分支来进行开发工作。