当我合并两个分支并且它们无法自动合并时,Github提供以下指令:
步骤1:从项目存储库中引入更改并进行测试.
git fetch origin
git checkout -b master origin/master
git merge develop
Run Code Online (Sandbox Code Playgroud)
第2步:合并更改并在GitHub上更新.
git checkout develop
git merge --no-ff master
git push origin develop
Run Code Online (Sandbox Code Playgroud)
但是,在这种情况下,分支master
已经存在于本地,并且该行git checkout -b master origin/master
返回以下消息:
git checkout -b master origin/master
fatal: A branch named 'master' already exists.
Run Code Online (Sandbox Code Playgroud)
在这种情况下,更换该行是正确的做法git checkout master
吗?我有点想知道这一点,有点担心git checkout master
可能会做什么,而不是-b
.
Ism*_*awi 28
如果master
不存在,则在此行之后
git checkout -b master origin/master
Run Code Online (Sandbox Code Playgroud)
master
将是一个指向同一提交的分支origin/master
.
如果你已经有一个master
分支,它可能已经过时了origin/master
,所以只需写一下
git checkout master
Run Code Online (Sandbox Code Playgroud)
还不够.你也想跑
git merge origin/master
Run Code Online (Sandbox Code Playgroud)
之后master
更新(通常这只是一个快进).