git 合并分支
目标:将【dev】分支合并到【master】分支
1. 首先切换到master分支上
$ git checkout master
2. 如果是多人开发的话 需要把远程master上的代码pull下来
$ git pull origin master
–
// 如果是自己一个开发就没有必要了,为了保险期间还是pull
3. 然后我们把dev分支的代码合并到master上
$ git merge dev
–
// 如果有冲突,手动解决冲突就行
4. 然后查看状态及执行提交命令
$ git status
On branch master Your branch is ahead of ‘origin/master’ by 12 commits. (use “git push” to publish your >local commits) nothing to commit, working tree clean
// 上面的意思就是你有12个commit,需要push到远程master上
–
最后执行下面提交命令
$ git push origin master
其他
目标:合并某个分支上的单个commit(cherry-pick命令)
比如 【feature】 分支上的commit 82ecb31非常重要,它含有一个bug的修改,或其他人想访问的内容。
无论什么原因,你现在只需要将82ecb31合并到【master】,而不合并【feature】上的其他commits;
所以我们用git cherry-pick命令来做:
$ git checkout master
$ git cherry-pick 82ecb31
这样就好啦。 现在82ecb31就被合并到【master】分支,并在master中添加了commit(作为一个新的commit)。
cherry-pick和merge比较类似,如果git不能合并代码改动(比如遇到合并冲突),git需要你自己来解决冲突并手动添加commit。
这里git cherry-pick每次合并过来会显示文件冲突(其实并没有冲突代码部分,只需手动解决既可)。