关于优化Eclipse上EGit的建议

Hem*_*ant 6 eclipse git egit

我在相当庞大和复杂的Java项目集(超过一百万行代码)上使用EGit和十年的历史.
在这里,我面临着与EGit严重的性能问题,因为即使Java文件中的小行更改也会导致EGit重新索引几分钟,这会降低整个系统的速度.实际上,即使git命令行有点慢,因为"git status"需要大约一分钟从命令行,但我可以忍受这个性能问题,&EGit提交对话框缓慢问题(链接).因为我可以使用git命令行来提交和更新,但我不想权衡我的Eclipse性能,因为这会影响生产力.

以下是我通过谷歌搜索并询问周围的人的尝试:

  1. 添加了排除文件中的所有类文件夹.确实尝试将类文件夹放在.gitignore中.
  2. 通过让机器保持开启一天,让Egit有足够的时间完成索引.
  3. Git staging,历史记录和所有其他Eclipses视图在进行开发时在Eclipse工作台中关闭.
  4. 是"git gc" - 它在命令行性能上有所不同,但对于EGit几乎没有任何区别.
  5. 未经检查的Git标签装饰器.首选项 - >常规 - >外观 - >标签装饰.
  6. 从路径中移除了cygwin,正如在论坛中的某处读到的那样,JGit可能正在使用cygwin进行路径转换.
  7. 在Eclipse中将窗口缓存从10增加到70m(首选项 - >团队 - > Git - >窗口缓存).

PS:Git存储库指向svn远程存储库.另外,我是git newbie所以可能在设置中犯了一些错误,所以请随意指出任何事情.

这是我的系统信息,我没有太多花哨的硬件规格,但有些RAM备用(8GB).

  • git-gui版本0.16 GITGUID
  • git版本:1.7.10.mysysgit.1
  • JDK 1.6_025
  • Eclipse版本:3.7.2 Java EE版本,参数为-Xms1536m -Xmx1536m
  • EGit:1.3.0.201202151440
  • Windows 7处理器:Core 2 Duo 2.6GHZ

Von*_*onC 0

这就是CVCS(集中式VCS)和DVCS(分布式)VCS之间的问题:

  • 一个 SVN 存储库可以包含相当于 GB 的数据。
  • Git 存储库应保持较小,并利用子模块通过多个 Git 存储库进行表示。

我怀疑大量的存储库可能比一个巨大的 Git 存储库表现得更好。否则,同步问题就会开始发生,如bug 323839中所示。

但这意味着通过 SVN 工作区手动管理 Git 存储库和一个 SVN 存储库之间的(简化的)同步,您可以从该工作区复制到您的 Git 存储库,或者将 Git 存储库的新演变复制回 SVN 工作区以提交在。