【发布时间】:2023-03-20 03:14:01
【问题描述】:
我有变化。我藏起来了。我更新了。我藏起来了。发生了冲突。我相信我又做了git add style.css。然后我做了git commit -m "stuff" style.css,它奏效了。我可以在日志中看到我的更改。
不管我现在在地狱里
> git status
#
# modified: style.css
#
# Changed but not updated:
#
# modified: style.css
#
> git checkout -- style.css
error: path 'style.css' is unmerged
> git reset HEAD style.css
Unstaged changes after reset:
M style.css
U style.css
> git ls-files -u
100644 cf84f92ca42b4a922eca50e18678450f8b37 3 style.css
> git reset --hard HEAD
... it hangs and locks up my computer, and have to force quit terminal ...
> git fsck
dangling blob 1983b7e295f163ce1458ed1dfe57dca686a46
dangling blob 8d922d3aeb3f9eed5a9469fd2de432d3fee9f
dangling commit de0ea03d25293e353b0a7693d10ed24c9940f
dangling blob a660abd6e159149d6475506e5d5f17fcd71d7
dangling blob 42b0250d914fa2fa7e0d8194739cf99e47bdf
看来 git reset --hard HEAD 开始占用我的磁盘空间。我可以看到活动监视器显示可用磁盘空间从几 GB 变为 200 mb,然后它告诉我必须关闭应用程序。
有什么想法吗?
【问题讨论】:
-
为什么第三行的路径不一样? (
git reset HEAD <unmerged-file>绝对是我尝试的第一件事,所以我主要想知道您是否真的在正确的文件上使用它。) -
另外,
git reset --hard显然不应该“锁定”您的计算机(它会占用所有内存然后交换吗?)所以您可能还想做一些健全性检查:运行git fsck,运行磁盘检查,并确保您没有使用旧版本的 git(以防万一您遇到一些模糊的错误)。 -
为了清楚起见,我只是删除了路径,忘记在那里删除它。已编辑。
-
当我进入 git hell 我 git reset --hard HEAD 如果这不起作用,我尝试创建一个新的存储库目录并重新开始(如果它是一个选项)。
-
我可以通过 git checkout -f master; git checkout 分支名称
标签: git conflict infinite-loop