代码合并到master分支

代码合并一般分两种情况rebase与merge

说明:如果div是从master创建出来的分支,那么,master就是dev的上游,dev是在master的下游

下游合并上游的代码:要尽可能的保存提交路径简洁,那么用rebase

上游合并下游的代码:要尽可能的保存提交细节,那么采用merge

dev分支下:master已经有修改了,dev本身也做了提交,需要更新master代码才能做dev

下游合并上游,用rebase

git rebase master

dev分支下,需要合并到master上

上游合并下游,用merge

git checkout master

git merge dev

回退到merge前的代码状态

# 查出要回退到merge前的版本号
git reflog
# 回退到merge前的代码状态
git reset --hard
# 回退到merge前的某个代码状态
git reset --hard f123456

 merge使用问题

# 挡在Dev分支上使用merge的时候
$ git merge dev
fatal: refusing to merge unrelated histories
# 出现上述问题的时候
$ git merge master --allow-unrelated-histories
# 在进行add、commit
$ git add .
$ git commit -m 'first'

  

原文地址:https://www.cnblogs.com/hongzhuang/p/13396187.html