没有响应的git状态,差异,添加(挂起)

时间:2017-04-10 09:13:38

标签: git bitbucket ubuntu-16.04

以下git命令在我的某个存储库中挂起(不响应):

git status
git diff
git stash
git add

我无法git add这一事实让我相信,反应迟钝不仅仅是因为文件太大。由于git stash也会挂起,我认为这只是与原点沟通的问题。

git remote show origin显示预期的远程网址。我正在分支机构并检查它是否已重命名。 (FWIW,原产地托管在bitbucket上。)

所有上述命令都会按照预期在不同的回购中响应,因此不是因为互联网连接。

有关此问题的其他任何提示吗?

7 个答案:

答案 0 :(得分:3)

无论价值多少,请尝试git fsck(根据评论之一),然后尝试git gc。在运行git statusgit commit时,它们在处理了许多文件后在我的面前挂了;并运行这些命令解决了该问题。我没有哪个命令可以真正解决问题。

答案 1 :(得分:3)

  

它在15分钟左右后响应,现在立即响应而没有延迟。

使用Git 2.20(2018年第四季度),您至少可以检查git status是否正在执行某事(而不是仅仅停留在其中):它学会显示<刷新索引时,strong>进度条会花费很长时间。

请参见commit ae9af12Nguyễ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)

就我而言,帮助我重新启动计算机。