我正在使用Github Desktop(以前称为GitHub for Windows),并对我的本地文件进行了大量更改。事情变得如此混乱,以至于我决定只想将本地文件回滚到我最后一次提交时所在的位置。我还没有提交新的更改- 我只是想摆脱它们。我怎样才能做到这一点?
3 回答
当您打开GitHub for Windows v2.0(GitHub Desktop的前身)并在最左侧的列中选择您的存储库时,您将在左侧的第 2 列中看到您之前的所有提交。如果您选择其中一个提交,在顶部的右侧列中,您会看到“Revert”,当您将鼠标悬停在上面时,会显示“创建一个新的提交来恢复此提交中的更改”。我认为这不是您想要做的,因为您不想还原该提交中的更改,而是还原尚未提交的更改。所以不要那样做。(当您在第二列中选择“未提交的更改”时,“还原”链接不存在。
有两种选择——第一种很简单,第二种超级简单:
简单- 在最左边的列中选择您的存储库,然后单击右上角的齿轮图标并选择“在 Git Shell 中打开”。shell 应该打开并位于存储库的目录中。从那里您可以键入git reset --hard
以恢复自上次提交以来修改的文件,然后git clean -fd
删除自上次提交以来添加的所有文件。显然,您也可以在此处输入其他 git 命令。
超级简单- 在最左边的列中选择您的存储库,然后单击第 2 列中的“未提交的更改”以在右侧显示您更改的文件。如果您右键单击任何文件,您将可以选择“放弃更改”。(我无法知道如何右键单击。)如果您右键单击“要提交的文件”旁边的空间,您将可以选择“放弃所有更改”。单击它,然后您的所有更改都将被清除,您的本地文件将回到您上次提交时的位置。
与时俱进,Github for Windows 进行了巨大的改造,所以这里有一个新的答案。它现在称为Github Desktop,版本号从 v1.0.0 开始。因此,如果您运行的是Github Desktop v1,那么您的 UI 看起来会有些不同。
然而,这个超级方便、总是隐藏的小功能仍然存在。
首先,在黑色区域的最左侧下拉列表中选择您的存储库。确保然后选择显示“更改”的选项卡。现在,您可以右键单击包含“{#} 已更改文件”的矩形中的任意位置,您会看到一个弹出窗口,上面写着“放弃所有更改...”单击它,然后,您将返回到你是最后一次提交。
奖励:您还可以右键单击任何更改的文件以弹出一个弹出窗口,使您能够“放弃更改...”仅针对该文件。单击它,只有该文件将恢复到上次提交时的位置。
Github Desktop文档现在包含有关如何丢弃更改的信息。然而,这是不正确的!当您右键单击单个文件时,弹出窗口不会提供“放弃所有更改...”选项,因为他们的屏幕截图似乎表明。要放弃您需要按照我上面描述的方式进行的所有更改。