在git pull之前将文件返回到状态

时间:2017-06-25 09:18:22

标签: git

我想将文件返回到我执行git pull之前的状态,这有冲突(所以我可以提交它)。

这就是git pull发生冲突后文件的显示方式:

<<<<<<< HEAD
<!-- nothing to see here -->
=======
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-123"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
>>>>>>> 6c10038924468105df6c32255f38c51167b355ba

在我做拉动之前,我是否正确地认为文件看起来像这样:

<!-- nothing to see here -->

2 个答案:

答案 0 :(得分:1)

<<<<<<< HEAD
your local file state
=======
changes that caused conflict and come from outer branch that you try to merge
>>>>>>> 6c10038924468105df6c32255f38c51167b355ba commit hash from outer branch

:我认为在拉取之前文件看起来像这样:<!-- nothing to see here -->

A :是

答案 1 :(得分:0)

如何还原特定提交引入的更改?

当您需要撤消已经提交的内容时,您有几个不错的选择。以下两个选项只会影响当前的HEAD,因此请务必确认您已检出预期的分支。

<强>还原

听起来,revert命令会将特定提交的所有文件更改回其提交完成之前的状态。指定要还原的提交:

git revert <commit_ID>

重要的是要注意这个命令的机制。恢复的提交不会被删除。相反,Git创建一个新的提交,其中包含的文件恢复到以前的状态。 因此,当文件状态向后移动时,版本控制历史记录会向前移动。

重置

此选项与还原有点不同。它会将您的仓库(工作HEAD)的状态重置为旧版本。这是你的回购状态的真实回滚。

git reset --hard <commit_ID>

当您使用此选项时,Git会丢弃当前repo状态和目标提交之间的任何提交。然后,分支将在您将HEAD重置为的提交时停止。