以下git命令在我的某个存储库中挂起(不响应):
git status
git diff
git stash
git add
我无法git add
这一事实让我相信,反应迟钝不仅仅是因为文件太大。由于git stash
也会挂起,我认为这只是与原点沟通的问题。
git remote show origin
显示预期的远程网址。我正在分支机构并检查它是否已重命名。 (FWIW,原产地托管在bitbucket上。)
所有上述命令都会按照预期在不同的回购中响应,因此不是因为互联网连接。
有关此问题的其他任何提示吗?
答案 0 :(得分:3)
无论价值多少,请尝试git fsck
(根据评论之一),然后尝试git gc
。在运行git status
和git commit
时,它们在处理了许多文件后在我的面前挂了;并运行这些命令解决了该问题。我没有哪个命令可以真正解决问题。
答案 1 :(得分:3)
它在15分钟左右后响应,现在立即响应而没有延迟。
使用Git 2.20(2018年第四季度),您至少可以检查git status
是否正在执行某事(而不是仅仅停留在其中):它学会显示<刷新索引时,strong>进度条会花费很长时间。
请参见commit ae9af12的Nguyễn Thái Ngọc Duy (pclouds
)(2018年9月15日)。
(由Junio C Hamano -- gitster
--在commit 4d87b38中合并,2018年10月19日)
status
:如果刷新索引花费的时间太长,则显示进度条刷新索引通常非常快,但是有时仍然需要很长时间。
- Cold cache是一个。
- 或将存储库复制到新位置(*)。
最好向用户展示一些内容,以使用户知道“
git status
”没有挂起,只是在忙着做某事。(*)在这种情况下,索引中的所有统计信息均无效,并且git 退回到重新哈希所有文件内容以查看是否有任何内容 索引中更新统计信息之间的差异。这是相当 昂贵。即使使用git.git这样小的仓库,也需要3 秒。
答案 2 :(得分:1)
Git可能正在建立未跟踪文件的索引。在将数千个新文件添加到新克隆的存储库后,git status
似乎挂起了2分钟以上,然后响应:
It took 139.67 seconds to enumerate untracked files. 'status -uno'
may speed it up, but you have to be careful not to forget to add
new files yourself (see 'git help status').
如果遇到类似情况,请考虑将未跟踪的文件移出存储库,并确认git status
再次响应。
答案 3 :(得分:1)
执行 git fsck 。就我而言,它已经解决了问题。
答案 4 :(得分:1)
对于任何新手,我都挂在git add上-我忘了我一直在做pg_dumps,并且在目录中保留了一些大文件。我把它们移到了另一个目录,就解决了。
答案 5 :(得分:1)
我发现我的原因是因为我从.gitignore
文件中删除了/ node_module。在以前的添加中已经存在,因此一旦我重新添加/ node_module,git就可以正常工作了。
答案 6 :(得分:0)
就我而言,帮助我重新启动计算机。