【问题标题】:How to remove/revert commited changes to local git repo [duplicate]如何删除/恢复对本地 git repo 的已提交更改 [重复]
【发布时间】:2014-12-11 19:47:00
【问题描述】:

我已经对本地 git repo 进行了一些更改 命令 git commit -m "更改 X"

问题:是否可以从本地 git 和我的工作目录中恢复/删除此更改?

我知道我可以使用 git commit ammend 重写这个提交,但我想删除它,我不想把它放到远程仓库。

【问题讨论】:

    标签: git commit revert


    【解决方案1】:

    这样试试,

    撤消您的提交、文件和索引。

    git reset --hard HEAD~1
    

    撤消您的提交,但保留您的文件和索引。

    git reset --soft HEAD~1
    

    【讨论】:

    • OK 它工作:) ...我尝试了 git reset --hard HEAD,为什么它是错误的:)?
    • 最后三个提交(HEAD、HEAD^ 和 HEAD~2)很糟糕,你不想再看到它们。如果您已经将这些提交交给了其他人,请不要这样做。 --> git-scm.com/docs/git-reset
    • 是否可以从本地 repo 中删除此更改,并额外将所有这些更改带回工作目录,以便使工作目录像上次 "git add .." 之前一样?
    • 尝试不使用--hard 或使用--soft。但是看看这个答案:stackoverflow.com/a/6866485/1112326,它很好地解释了一切:)
    • @Pawel 当然有可能。像这样git reset --soft HEAD~1
    猜你喜欢
    • 2017-05-28
    • 2016-03-15
    • 2012-10-09
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    • 2017-12-05
    • 1970-01-01
    • 2023-03-19
    相关资源
    最近更新 更多