在一个分支上开发了很长一段时间后,我切换到了master。日志显示:

你的分支比“origin/master”慢了167次提交,并且可以快进。

我试着:

git checkout HEAD

它没有任何效果。这是因为我在master上签出了一个中间提交。

我怎样才能使主人保持头脑清醒?


当前回答

尝试git合并origin/master。如果你想确保它只做快进,你可以说git merge——ff-only origin/master。

其他回答

尝试git合并origin/master。如果你想确保它只做快进,你可以说git merge——ff-only origin/master。

如果你在树枝后面的某个地方, 更安全的做法是将你所做的任何局部更改重新设置为:

git pull --rebase

这有助于防止不必要的合并提交。

(这与执行git fetch && git rebase相同。)

将分支指针移动到HEAD:

git branch -f master

你的分支主机已经存在,所以Git不允许你覆盖它,除非你使用…-f(这个参数代表——force)

或者你可以使用rebase:

git rebase HEAD master

请自行承担风险;)

对于任何想要快进的人来说,如果不签出该分支,他们就不能进入另一个远程分支(包括它本身)。你可以:

git fetch origin master:other

如果您不在其他分支上,这基本上会将other的索引快速转发到origin/master。您可以通过这种方式快速前进多个分支。

如果你在另一个分支上工作了一段时间,并且想要从远程更新过时的分支到它们各自的头:

git fetch origin master:master other:other etc:etc

如果你站在不同的分支上,想要签出master的最新版本,你也可以这样做

git checkout -B master origin/master