我结束了一个奇怪的git状态.我想从服务器拉,只有快进.
然而,即使没有变化,git仍然告诉我"不可能快进".
$ git pull -v --ff-only
From github.com:username/repo
= [up to date] branch -> origin/branch
= [up to date] branch2 -> origin/branch2
= [up to date] branch3 -> origin/branch3
fatal: Not possible to fast-forward, aborting.
Run Code Online (Sandbox Code Playgroud)
我如何告诉git告诉我有关快速前进这种"不可能"的更多信息?我更加冗长...
j2e*_*nue 23
您在“develop”分支上的提交与“origin”分支上的提交不匹配。做这个:
git pull origin develop --rebase
Run Code Online (Sandbox Code Playgroud)
当(a)您之前在该分支上提交了某些内容,或者(b)远程服务器上的历史记录以非标准方式更改时(这通常不会发生,但存储库所有者有时不遵守规则) .
对于以下我假设你正在foo上游分支origin/foo.
git log ..origin/foo看什么都提交在远程端新.git log origin/foo..看什么承诺存在于你身边没有在远程端存在(这会告诉你的,阻止快进任何承诺).git reset --hard origin/foo强制您的分支与远程分支相等(这将破坏所有未提交的更改,并且任何未包含的提交remote/foo将无法访问).