要完成还原,请合并并提交更改

时间:2015-09-16 15:27:56

标签: git github

我从git应用程序中得到了这种奇怪的牛行为。我基本上想恢复到过去提交之一。该应用程序一直告诉我合并和提交更改。虽然没有什么可以承诺的。所有新代码都已提交。

我该如何解决这个问题?

截屏enter image description here

enter image description here

enter image description here

enter image description here

enter image description here

Update2:我尝试使用命令行恢复并收到此消息

MacBook:busyhunt craigcosmo$ git revert 69638b3
error: could not revert 69638b3... Revert "add grid system"
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit'

2 个答案:

答案 0 :(得分:0)

如果您想尝试解决此问题,请查看修复部分。否则,请跳至退出部分。

修复

第1步:解决冲突(手动或使用git checkout

当git尝试恢复到旧提交时,看起来存在合并冲突。在文件中查找合并冲突标记(<<<<<<<>>>>>>>箭头)并将其修复为您喜欢的版本。

您可以手动编辑文件,或者如果您确定要保留旧提交的文件版本,则可以执行以下操作:

git checkout --theirs <filenames>

另外,请保留HEAD版本的文件:

git checkout --ours <filenames>

这将为您省去手动编辑文件的痛苦。

第2步:签署协议

完成解决合并冲突后,从命令行(或Github应用程序中的等效命令)运行这些命令:

git commit -am "Resolve merge conflicts during revert"
git revert --continue

理想情况下,这应该让您的回购处于理想的状态。

退出

如果你只想摆脱这个烂摊子并重新开始,请运行:

git revert --abort

这将使您在最初尝试git revert之前恢复原状状态。

答案 1 :(得分:0)

您需要使用git reset

我不知道,该GUI中是否有选项,但在控制台中它将是

git reset --hard commit_identifier

警告:它会清除所有未保存的更改以及commit_identifier之后的所有提交。