前面一篇是总结了单个分支上面的操作,还有两个问题,不同分支的管理,本地库与远程库之间的同步
先来看分支的管理
1.创建于切换分支
git checkout -b dev //创建并切换到dev分支
2.修改dev分支内容并提交
vim git.txt
git add git.txt
git commit -m 'dev commit'
3.切换回master分支
git checkout master
4.把dev分支的工作成果合并到master分支上
git merge dev //把dev分支的内容合并到当前分支上(当前分支为master分支)
注意:在合并不同的分支的时候,要保留历史的分支信息,则可以强制禁用fast forward模式
git merge --no-ff -m "merge with no-ff" dev //禁用fast模式,会留下历史的合并记录
然后可以用如下的命令查看历史的分支合并信息
git log --graph --pretty=oneline --abbrev-commit
5.删除dev分支
git branch -d dev
注意:在文件系统的目录中查看文件时,文件中各个分支的内容都会显示,可以看出各个版本的内容文件中都有存放,只是在git中在不同的分支下,会显示当前分支的内容
切换到不同的分支时,会部分该分支的内容,不是文件的全部内容
合并不同分支出现冲突的情况
1.当前分支为master分支,分支feature1与master分支都有改动,冲突文件为readme.txt,执行
git merge feature1
提示存在冲突
2.手动的处理冲突,
3.把冲突文件的冲突处理后,在提交,提交同样是分为两步
git add readme.tx
git commit -m "conflict fixed"
4.删除feature1分支
git branch -d feature1