【问题标题】:Git Discard all changes locally and remote after a certain commitGit 在某个提交后丢弃本地和远程的所有更改
【发布时间】:2014-10-27 11:34:04
【问题描述】:

我在恢复到某个 git 提交时遇到了一些麻烦。我正在使用 Github 和 Sourcetree。如何在提交“Typo”后丢弃所有更改并恢复到该状态并从那里开始工作?

我尝试过重置,但这似乎不起作用。如果有一个 git 的终端突击队,那也没关系。

【问题讨论】:

    标签: git github


    【解决方案1】:

    您可以通过键入以下命令来恢复工作目录和索引下的所有文件。

    git reset --hard <SHAsum of your commit>
    

    例如,如果我有一个名为 commit 4a155e5b3b4548f5f8139b5210b9bb477fa549de 的提交 然后我会写:

    git reset --hard 4a155e5
    

    【讨论】:

      【解决方案2】:

      一个简单的git checkout -b newBranch &lt;SHA of Typo commit&gt; 应该可以解决问题。它将创建一个指向您所需提交的新分支并在本地签出内容。 这样您就不会丢失Typo 之后的提交。如果您需要删除它们,您将能够删除包含它们的分支,使用:git branch -D &lt;name of the branch&gt; 您可以使用git log 建立SHAsum

      【讨论】:

        猜你喜欢
        • 2014-06-13
        • 2011-07-03
        • 2016-08-10
        • 2015-09-24
        • 2020-06-01
        • 1970-01-01
        • 2011-04-22
        • 1970-01-01
        • 2017-02-08
        相关资源
        最近更新 更多