撤消Git Stash Pop

我做了一个藏匿stream行,现在我有很多的冲突。 我已经提交了所有我最近的代码之前的git stash pop ,所以有没有办法回到最后一次提交,并摆脱所有的冲突和代码git stash pop注入?

这已经被问及在stackoverflow上回答(请参阅如何将Git存储库恢复到以前的提交? ),但简单的答案是:

 git reset --hard HEAD 

这应该照顾你的问题。 请注意,这会从存储库中删除所有未提交的更改。

请注意,如果存在冲突,则隐藏被保留。 从隐藏文档 :

应用状态可能会因冲突而失败; 在这种情况下,它不会从存储列表中删除。 您需要手动解决冲突,然后手动调用git stash drop

重置也可以在特定的文件上调用:

 git reset HEAD <filename>... 

你不能硬重置文件。 但是,您可以在之后使用结账恢复更改:

 git checkout -- <filename>... 

正如Luke在MichaelMilom的回答中所指出的那样,你将被保留下来。

当您不想丢失未提交的本地更改时,这非常有用。

如果你再也不想在popup的存储器中看到工作,这就像硬重置一样简单:

 git reset --hard HEAD 

这会告诉git忽略在工作目录中有未提交更改的事实,并将工作目录,暂存区域和头部设置为您指定的提交 – 在本例中为现有HEAD,其中包含您所有的工作我刚刚承诺。