【问题标题】:Undoing my working directory preserving my commit撤消我的工作目录保留我的提交
【发布时间】:2013-01-15 15:30:42
【问题描述】:

这可能是一个非常简单的问题。我提交了我的工作,然后我启动了一个查找和替换脚本,但我想撤消它,以便让我的工作进入实际提交。什么是正确的命令:我知道 git reset soft/hard 或 git amend 但它不合适

【问题讨论】:

  • 为什么 git reset --hard 不合适?
  • 为什么git reset --hard HEAD 不合适?它会丢弃您的所有修改,使您处于HEAD 的状态。
  • @MichaelWild 我以为 git reset--hard 会撤消当前的提交,不是吗?
  • 不,git reset --hard HEAD^ 确实如此(注意小标题)。
  • 啊好的谢谢我没注意到!

标签: git commit git-reset


【解决方案1】:

你有几个选择:

正如 cmets 所说,git reset --hard 将带回一切。

但如果你想保留一些修改过的文件,那么这样做:

git checkout -- <filename>

将撤消单个文件。

【讨论】:

  • 哇,我把 git reset --hard 放了,我确实去了我的最后一次提交,但是我提交的所有修改都消失了。我不知道搞砸了什么,是否可以找到文件的历史记录,包括它们在 git reset --hard 之后的内容
  • Git reset --hard 撤消所有更改。如果您没有提交更改,则无法查看它们。 kernel.org/pub/software/scm/git/docs/git-reset.html
猜你喜欢
  • 2019-04-28
  • 2013-06-10
  • 2019-11-15
  • 1970-01-01
  • 2013-07-03
  • 2018-06-17
  • 2015-05-29
  • 1970-01-01
  • 2015-04-12
相关资源
最近更新 更多