我正在使用Github Desktop(以前称为GitHub for Windows),我对我的本地文件进行了一系列更改。它变得如此混乱,我决定我只想将我的本地文件回滚到他们最后一次提交时的位置。我没有做出新的改变 - 我只是想摆脱它们。我怎样才能做到这一点?
当您打开GitHub for Windows v2.0(GitHub Desktop的祖先)并在最左侧的列中选择您的存储库时,您将在左侧的第二列中看到所有先前的提交。如果您选择其中一个提交,则在顶部的右侧列中您将看到“Revert”,当您将鼠标悬停时,“创建一个新的提交以恢复此提交中的更改”。我不认为这是你想要做的,因为你不想恢复该提交中的更改,而是还原尚未提交的更改。所以不要这样做。 (当您在第二列中选择“未提交的更改”时,“还原”链接不存在。
有两个选项 - 第一个很容易,第二个很容易:
轻松 - 在最左侧列中选择您的存储库,然后单击右上角的齿轮图标并选择“在Git Shell中打开”。 shell应该打开并位于存储库的目录中。从那里你可以输入git reset --hard
来恢复自上次提交以来修改过的文件,然后输入git clean -fd
来删除自上次提交以来添加的所有文件。显然,你也可以enter other git commands here。
超级简单 - 在最左侧的列中选择您的存储库,然后单击第二列中的“未提交的更改”以在右侧显示已更改的文件。如果右键单击任何文件,您将可以选择“放弃更改”。 (人们如何知道右键单击是超出我的。)如果右键单击“要提交的文件”旁边的空格,您将可以选择“放弃所有更改”。单击该文件并将其删除,所有更改都将被删除,并且您的本地文件将返回到您上次提交时的位置。
为了跟上时代的步伐,Github for Windows进行了大规模的改造,所以这是一个新的答案。它现在被称为Github Desktop,version numbers已经开始回到v1.0.0。因此,如果您正在运行Github Desktop v1,那么您的UI看起来会有所不同。
然而,这个超级方便,永远隐藏的小功能仍然存在。
首先,在黑色区域的最左侧下拉列表中选择您的存储库。确保然后选择“更改”选项卡。现在,您可以右键单击包含“{#}已更改文件”的矩形中的任意位置,然后您将弹出一个“放弃所有更改...”的弹出窗口。单击该按钮,然后,您将返回到你是最后一次提交的。
额外奖励:您还可以右键单击任何已更改的文件,以获得弹出窗口,使您可以仅为该文件“放弃更改...”。单击该文件,只有该文件将恢复到上次提交时的位置。
Github桌面documentation现在包含有关如何discard changes的信息。但是,这是不正确的!当您右键单击单个文件时,弹出窗口不会提供“放弃所有更改...”选项,因为他们的屏幕截图似乎表明了这一点。要丢弃您需要做的所有更改,如上所述。