我每天都会处理许多小项目,并经常需要切换它们。
- 我在Sourcetree中有超过50个Git存储库。
- 通常有5个项目在“选项卡”中打开。
在Sourcetree中从一个“选项卡”切换到另一个“选项卡”非常缓慢。有时长达15秒。如何改善此行为?
我每天都会处理许多小项目,并经常需要切换它们。
在Sourcetree中从一个“选项卡”切换到另一个“选项卡”非常缓慢。有时长达15秒。如何改善此行为?
我知道这是一个老问题,但你也可以尝试这个:
https://dev59.com/uW855IYBdhLWcg3wMBPV#24045966
$ git config --global core.preloadindex true
$ git config --global core.fscache true
$ git config --global gc.auto 256
其次,这篇文章解释了git gc --aggressive
可能不是个好主意。
我的源代码树中的任何操作都非常缓慢。包括提交、查看文件更改、推送等。
我发现我的杀毒软件(Avast)是问题的原因。我禁用了文件保护功能,源代码树立即变得更快。
bitdefender
,结果我的 ST 变得超级慢。非常感谢! - Thai Tran对我来说,问题出在设置中的“拼写检查提交消息”选项。即使单击勾号也需要20秒才能处理,但这是我遇到的最后一个冻结。
git gc --aggressive
可以缩小存储库大小。通过以下方法可以提高性能:
使用系统 Git
而不是 使用嵌入式 Git
这可能会帮助其他人。我在使用SourceTree 1.6.x和git 1.9.x时遇到了响应缓慢的问题。将git降级到1.8.3,将SourceTree降级到1.5.2可以解决问题。
如果可能的话,将git文件夹移动到SSD驱动器上(这显著提高了我的SourceTree性能)。
避免有很多隐藏的更改,这会导致SourceTree非常缓慢。
简述:
选项1:(继续使用SourceTree): SourceTree进行长时间的彻底刷新。可以通过将筛选器设置为“修改”来关闭。(对于我来说,我不得不反复设置一次才能生效)。
选项2:(使用Tower/CLI并设置showUntrackedFiles)
选项3:(使用Tower/CLI和Scalar)。
Microsoft提供了一种改善仓库性能的解决方案:Scalar。
详细版: 在一个大型仓库中(有许多文件),出现了这个问题。进行了调查,并找到了SourceTree缓慢的根本原因。
您可以在命令行中测试此问题:
git status -uall
vs
git status -uno
status -uall
非常缓慢(和Sourcetree一样慢),那么这很可能是罪魁祸首。-uall
。git status
时始终跳过搜索未跟踪的文件:git config --local status.showUntrackedFiles no
status.showUntrackedFiles
部分下):
https://git-scm.com/docs/git-config
以及在此处(在--untracked-files[=<mode>]
部分下):
https://git-scm.com/docs/git-status
注意:将showUntrackedFiles
属性设置为no
会意味着当您添加新文件时,除非您显式地使用-uall
参数运行它,否则它不会被git status
检测到。
git
,则似乎默认启用了前两个功能。 - Jeff Widman