-
Git系列目录
- Git系列(一):Git安装后配置用户名、邮箱
- Git系列(二):Git创建本地仓库及对文件进行操作
- Git系列(三):Git版本管理
- Git系列(四):本地仓库关联远程仓库(将本地仓库推送到GitHub)
- Git系列(五):Git Flow
- Git系列(六):Git贮藏
我们在开发过程中不可能一直在master主分支上面开发,这样不仅仅会造成master主分支混乱,而且有的时候我们还需要同时开发不同的功能,需要在不同的时间上线,同在一个分支上面无法实现,这个时候就引入了Git Flow
Git Flow适应的场景:
-
建立不同分支用于管理不同的功能需要上线的时间
-
将不同用途分开,比如处于开发中的功能一般会在develop分支下,处于生产上的bug问题一般会在bug或者hotfix分支下
-
…还有更多更多
-
查看当前分支
git branch
可以看出当前仓库只有一个分支,为master,并现在处于master分支上(默认就只有一个master分支,且处于master分支上)
- 创建分支
git branch test
- 切换分支
git checkout test
可以看出现在已经有两个分支,且现在处于test分支上面
我们在test分支上修改test2.txt文件
vim test2.txt
输入cccccccccccc,保存并退出
然后添加到暂存区
git add test2.txt
然后提交到本地仓库
git commit -m '添加test2.txt分支用于测试合并分支'
- 合并分支
将test分支合并到master上,先切换回master分支,再合并
git checkout master
git merge test
然后查看一下master分支下的内容
- 删除分支
git branch -d test
- 如何解决合并分支带来的冲突
切换到bug分支(如果bug分支不存在就创建)
git checkout -b bug
在bug分支下修改test2.txt文件,添加dddddddddd
vim test2.txt
添加到暂存区
git add test2.txt
提交到本地仓库
git commit -m '修改托尔斯泰'
切换到master分支
git checkout master
在bug分支下修改test2.txt文件,添加eeeeeeeeee
vim test2.txt
添加到暂存区
git add test2.txt
提交到本地仓库
git commit -m '修改test2.txt文件'
将bug分支合并到master上
git merge bug
控制台已经显示说合并失败,因为合并时产生冲突了,冲突的文件为test2.txt
那么在master分支上打开test2.txt文件
vim test2.txt
可以看到当前分支添加了一行eeeeeeeeee,而bug分支上添加了一行dddddddddd(HEAD代表当前分支),将其修改为:
然后保存并退出
将修改后的文件提交到暂存区
git add test2.txt
添加到本地仓库
git commit -m '合并bug分支带来的冲突'
最后可以看看最近的提交信息
git reflog -10
- 丢弃一个还没有合并的分支
git branch -D test