【问题标题】:How to discard changes in Git?如何丢弃 Git 中的更改?
【发布时间】:2015-03-08 02:59:03
【问题描述】:
  1. 我将其他存储库分叉到我自己的帐户。
  2. 我将此分叉存储库克隆到我的计算机上。

  3. 现在我有 2 个已更改的文件,准备提交它们(我不知道为什么)。要从源更新(git rebase)我克隆的分叉存储库,我需要清理工作目录。但我没有,正因为如此。我唯一想到的就是通过 DISCARD 这些更改来清理工作目录,然后我就明白了我的目的。这个怎么做?有没有办法解决这个问题?

否则,我将无法重新定位我的本地存储库。

【问题讨论】:

标签: git github


【解决方案1】:

丢弃:git reset --hard 后跟 git clean -d -x -f,如“How do I clear my local working directory in git?”中所述。
但请确保您不想取回当前的修改:they wouldn't be easy to restore (for the ones added to the index)

但如果您想要更安全的选择:git stash
这将保存存储中的任何当前修改,使您的工作树保持清洁。

【讨论】:

  • 它不起作用。当我点击git reset --hard 然后git rebase upstream/master 我得到Cannot rebase: You have unstaged changes. Please commit or stash them.
  • @BartłomiejSemańczyk 你能先试试git config core.autocrlf false 吗?然后git reset --hard.
  • 和以前一样的报告
  • @BartłomiejSemańczyk 你在任何地方都有.gitattributes 文件,其中有core.oel 指令吗?
  • @BartłomiejSemańczyk 它可以解释为什么 reset --hard 没有摆脱 eol ,这可能是您看到的“未分级更改”。
猜你喜欢
  • 2014-01-24
  • 2016-10-28
  • 2019-10-12
  • 2019-01-14
相关资源
最近更新 更多