分支创建与合并
理解:相当于创建多一个与现在一模一样的平行时空 在这基础上继续干活 但其实并不会影响到当前时空 ,合并时再决定A时空并入B时空 还是B 时空并入A和空
查看分支 git branch;
创建分支 git branch ‘分支名‘
切换分支 git checkout ‘分支名‘
创建加切换 git checkout -b ‘分支名‘
合并某分支到当前分支 git merge ‘分支名‘
删除分支 git branch -d ‘分支名
解决冲突
假设现在有主分支(master) 和 新建分支(dev)
master(修改)---dev(修改) //dev分支存在后 2者再进行修改
master 合并 会提示
然后我们打开 它所提示的文件 readme.txt
红色区域为冲突区域 我们只要在上面进行内容取舍便可
处理好 add + commit 即可出一个无冲突版本(Resolve the conflict)
查找分支合并情况:git log --graph --pretty=oneline --abbrev-commit
删除分支:git branch -d ‘分支名‘
合并分支时,如果可能,Git会用Fast forward
模式,但这种模式下,删除分支后,会丢掉分支信息。
如果要强制禁用Fast forward
模式(--no-ff 为禁用Fast forward模式),Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息
合并并commit: git merge --no-ff -m "备注信息" "要合并分支对象" //适用于主分支无修改 无冲突 纯属合并添加内容 一步到位api
工程中的分支管理
master新建一条 dev分支 成员们都在dev的基础上另起分支 修改后再与dev分支进行合并 一般都无需理会master分支 只有出版本时才需要将dev并入到master分支