如何将已提交和推送的更改“还原”为未提交的更改?

时间:2017-04-03 02:04:12

标签: git svn github github-desktop

例如,我有文件A.

Hello
World

然后我在第二行添加“悲伤”。

Hello
Sad
World

然后Github桌面将预览这些未提交的更改,我在第二行上添加了新的更改。它将此行表示为绿色。

我也在不同的地方修改了其他20个其他文件。

然后我提交了它。并推动它。请求拉。并合并为主人。

但是,在我推动的任何变化中实际上存在问题。所以合乎逻辑的方法是恢复推/拉。但这意味着我所做的每一项改变都会丢失。我需要将每个更改复制并粘贴到相关的20个文件中。

我想恢复提交和推送状态,并将更改重新应用到代码中 - 而不是提交它。我需要能够以未提交的更改的形式轻松跟踪文件中的更改(因为我可以轻松地丢弃每个文件的更改以跟踪问题),而不是以提交的更改的形式,其中一切都有“置于石头里”。

如何将时间倒退到尚未提交文件的状态,未提交的更改仍会在Github“未提交的更改”部分中停留?

我以前经历过使用SVN,您可以轻松浏览历史记录,右键单击历史记录中更改的文件,然后选择“还原此更改”。并且文件将恢复为其当前头部的未更改形式。所以在上面的例子中,文件将恢复为:

Hello
World

并且subversion将注意到文件的当前头部是:

Hello
Sad
World

我怎样才能做到这一点?感谢。

感谢。

编辑:

我想我在这里找到了答案:

https://stackoverflow.com/a/6866485/3003927

解释了使用--HARD重置和不使用--HARD重置之间的区别。没有--HARD的重置看起来就像我正在寻找的那样。

0 个答案:

没有答案