强制GIT拉而不提交

时间:2011-11-29 21:16:53

标签: git version-control merge pull

我做了

git pull

我得到合并冲突。我手动解决合并冲突并再次发出拉动,但Git拒绝这样做,因为Git仍然认为存在合并冲突。

有没有办法强制Git再次执行拉动并让它从头部查找“差异”(如果有的话)(不提交我所做的更改)?

4 个答案:

答案 0 :(得分:3)

为什么在修复第一个合并冲突后发出第二个git pull?这是没有意义的。修复合并冲突后,您希望改为git commit,这将创建合并提交,将远程分支与您的本地合并(并包括您的冲突解决方案)。

答案 1 :(得分:1)

解决冲突后,您必须提交更改并将其推回。通常不使用git pull而是git fetch,然后是git merge,然后是git commit。这只会获取上游更改,允许您手动合并和解决冲突,然后在本地提交它们。准备就绪后,将更改推回上游。

如果您使用此工作流程,您可以:

git fetch
git merge 
#resolve conflicts
git commit
git fetch #check for new changes
#eventually
git push

答案 2 :(得分:0)

这里的过程是:

git pull

您会收到冲突通知。你使用你使用的任何东西(虽然希望你已经把你在本地使用git difftool所需的一切都搞定了......

解决冲突后,您现在拥有一个工作目录,其中包含远程更改和本地更改的合并。唯一不同的是,git无法自行完成合并,需要你的帮助。

你现在

git commit

在本地仓库中创建一个新提交,它是所引入的远程更改和本地更改的总和。那你

git push

使用远程头发布您的更改,很好地合并。

答案 3 :(得分:0)

在成瘾中,在拉,合并和提交之后,你也可以尝试(假设你的遥控器当然是'原产地')

git remote show origin

这让我很放心!