我的主机上有一个共享文件夹 - >我的虚拟机上的来宾机(Mac OS X主机,RedHat来宾) . 共享文件夹是在主机上创建的,我在访客上执行了git checkout等操作 . 问题是在guest虚拟机上运行git status等命令需要很长时间 . 这是一个已知问题还是有解决方法?
(git status在主机或guest虚拟机上的非共享文件夹上正常工作) .
尝试输入 git prune && git gc 以执行无法访问的对象和垃圾收集的清理 . 您也可以 git repack -Adf 尝试重新包装所有内容,看看是否有任何改变 . git status 通过走工作树并在所有内容上调用stat()来限制速度 . 如果该调用很慢(网络驱动器或虚拟化的某些东西),那么status命令将表现不佳 .
git prune && git gc
git repack -Adf
git status
git fsck 和 git count-objects 是要使用的更多命令 . 如果有很多(> 200)个对象,事情可能开始变慢 .
git fsck
git count-objects
然后从该repo克隆到更好的文件系统,在那里工作,推回你的更改 .
2 回答
尝试输入
git prune && git gc
以执行无法访问的对象和垃圾收集的清理 . 您也可以git repack -Adf
尝试重新包装所有内容,看看是否有任何改变 .git status
通过走工作树并在所有内容上调用stat()来限制速度 . 如果该调用很慢(网络驱动器或虚拟化的某些东西),那么status命令将表现不佳 .git fsck
和git count-objects
是要使用的更多命令 . 如果有很多(> 200)个对象,事情可能开始变慢 .然后从该repo克隆到更好的文件系统,在那里工作,推回你的更改 .