Strange problem with git repo?

I just upgraded to OSX Lion on my Mac and I aquired a strange problem with a git repo. I have my .vim files under version control with a number of plugins configured as git submodules. After upgrading, I ran a git status command into my .vim directory and got the following:

fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed

Does anyone know what my problem is? I searched the above error message on Google and SO, but I didn't find any answers. I've also noticed that git seems to be very slow now. Also, I have no other problems in other git repos (expect the slowness problem), which makes me think the problem is not related to Lion. Does anyone have any suggestions for how I can fix my .vim repo? Thanks in advance for the help.

Here is some of the trace output requested by drizzd:

setup: worktree: /Users/sbrown/.vim/bundle/supertab  
setup: cwd: /Users/sbrown/.vim/bundle/supertab  
setup: prefix: (null)  
trace: built-in: git 'status' '--porcelain'  
trace: run_command: 'status' '--porcelain'  
trace: exec: 'git' 'status' '--porcelain'  
setup: git_dir: .git  
setup: worktree: /Users/sbrown/.vim/bundle/surround  
setup: cwd: /Users/sbrown/.vim/bundle/surround  
setup: prefix: (null)  
trace: built-in: git 'status' '--porcelain'  
trace: run_command: 'status' '--porcelain'  
trace: exec: 'git' 'status' '--porcelain'  
setup: git_dir: .git  
setup: worktree: /Users/sbrown/.vim/bundle/tasklist  
setup: cwd: /Users/sbrown/.vim/bundle/tasklist  
setup: prefix: (null)  
trace: built-in: git 'status' '--porcelain'  
trace: run_command: 'status' '--porcelain'  
trace: exec: 'git' 'status' '--porcelain'  
setup: git_dir: .git  
setup: worktree: /Users/sbrown/.vim  
setup: cwd: /Users/sbrown/.vim  
setup: prefix: bundle/vim-colors-solarized/  
trace: built-in: git 'status' '--porcelain'  
trace: run_command: 'status' '--porcelain'  
trace: exec: 'git' 'status' '--porcelain'  

为了将来的参考,我可以解决问题的唯一方法是删除所有子模块,然后重新安装它们。


如果它帮助其他人,我只是遇到了同样的问题,发现在项目根目录下运行git init修复了它。


To me it looks like this:

$ git status
error: cannot fork() for status: Resource temporarily unavailable   
fatal: Could not run git status --porcelain
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
[snip]

Googling for the fork() stuff gives me https://superuser.com/questions/441889/error-cannot-fork-for-status-resource-temporarily-unavailable-git which tells me to just reboot. Which didn't help of course. Now cloning a fresh repository...

链接地址: http://www.djcxy.com/p/92386.html

上一篇: 将所有东西都存放在Git中,包括所有子模块?

下一篇: 奇怪的问题与GIT回购?