【问题标题】:How do reset/revert a git reset HEAD~如何重置/恢复 git reset HEAD~
【发布时间】:2022-11-30 03:50:31
【问题描述】:

我错误地在我的分支中做了一个git reset HEAD~。我在本地看到了所有更改的文件。我不想改变任何事。分支机构很好。

我需要做什么?

【问题讨论】:

  • 查看 reflog (git reflog),然后使用正确的提交 ID 执行另一个 git reset
  • git reset "HEAD@{1}"stackoverflow.com/a/5127681/7976758(但不要使用--hard,因为它会删除本地更改。)在stackoverflow.com/search?q=%5Bgit-reset%5D+undo 中找到
  • @phd 为什么不让这个问题与您链接的问题重复?看起来很相似,但也许我错过了什么?
  • @RomainValeri --hard 选项(在所有链接的 Q 和 A 中)对于没有准备的用户来说是一个相当危险的选项。我希望 OP 报告成功或评论他不满意的原因。

标签: git git-reset


【解决方案1】:
  1. 如果您没有做任何其他事情,只需执行此命令git reset --hard HEAD@{1}。如果您进行了其他更改,请执行 git reflog show 以查看您想要恢复到哪个提交。然后执行 git reset --hard XXX 并将该提交 ID 放入 XXX 部分。

  2. 然后你 git push --force 以确保你的远程分支反映了更改。

【讨论】:

    猜你喜欢
    • 2021-05-14
    • 1970-01-01
    • 2011-08-19
    • 2020-05-04
    • 2017-12-03
    • 2016-02-24
    • 2013-01-17
    • 1970-01-01
    相关资源
    最近更新 更多