回到Github Desktop中的先前提交

时间:2016-01-14 13:25:39

标签: git github github-desktop

我正在尝试使用GitHub Desktop(即GUI应用程序 - NOT命令行)返回到先前的提交(在同一分支上)。我想到的东西是核心功能,因为它是首先使用源代码控制的主要原因。

我可以看到它可以恢复提交,但这并不是我想要的,因为它创建了一个新的提交。我只想回过头再次选择,就像我可以跳到另一个分支一样。

这是可能的还是github桌面的限制,我需要使用cmd行吗?

3 个答案:

答案 0 :(得分:41)

通常,您可以使用git reset返回历史记录中的提交。

使用GitHub Desktop无法做到这一点。 GitHub Desktop更像是一个同步存储库的工具,而不是一个功能齐全的GUI客户端 但这并不意味着你必须使用命令行,因为有其他选择。您可以找到列表here。提一些(支持git reset):

以下是在命令行中执行此操作的方法。大多数客户端使用相同的词汇表在其UI中提供此功能(通常,您可以通过上下文菜单选择提交并重置为)。

您将使用

返回上一次提交
git reset HEAD^

或其他一些提交(例如3)

git reset HEAD^3

的特定提交
git reset f7823ab

请注意,默认情况下,选项--mixed会传递给git reset。因此,所有更改,因为您重置的提交,将仍然存在。

要获取您希望“还原”的提交的原始状态,您必须通过--hard。例如:

git reset f7823ab --hard

答案 1 :(得分:1)

如果您有尚未推送的提交,则撤消提交很容易。进行此类提交时,将显示“撤消”按钮。它将提交从分支的历史记录中删除,并将文件放回“更改”区域。

Undo button below commit button

答案 2 :(得分:0)

(编辑:Github Desktop缺少所请求的命令;以下是一些可能有所帮助的操作说明,)。

1. Click History.  
2. In the commit history list, click the commit you'd like to revert.  
3. Right-click the commit and click Revert This Commit.  

GitHub的文档