かなり大規模で複雑な一連のJavaプロジェクト(100万行以上のコード)と10年の歴史を持つEGitを使用しています。
ここで私はEGitの深刻なパフォーマンス上の問題に直面しています。Javaファイル内の小さな1行の変更でさえ、EGitがシステム全体を遅くしている数分間インデックスを再作成するためです。 実際、gitのコマンドラインでさえ少し遅いですが、 "git status"がコマンドラインから約1分かかってしまいますが、このパフォーマンスの問題で暮らすことができます。& EGitコミットダイアログの遅さの問題(link)。コミットと更新にgitコマンドラインを使用することができますが、私はEclipseのパフォーマンスと生産性に影響を与えないようにトレードオフしたくありません。Eclipse上でEGitを最適化するための提案
- 追加されたすべてのクラスフォルダを除外ファイルに:
次
は、私がグーグルを行うと、周りの人に尋ねることで試してみましたものです。実際には、時間のためにクラスフォルダを.gitignoreに入れてみました。 - マシンを1日オンにしてインデックス作成を完了するのに十分な時間を与えてください。
- Gitのステージング、ヒストリー、および他のすべてのEclipseビューは、開発中にEclipseワークベンチで閉じられます。
- "git gc"を実行しました - コマンドラインのパフォーマンスは違いましたが、EGitの違いはほとんどありません。
- Git用のチェックされていないラベルデコレータ。 「設定」 - >「一般」 - >「外観」 - >「ラベル装飾」を選択します。
- JGitがパス変換にcygwinを使用している可能性があるフォーラムのどこかで、cygwinのパスを削除しました。
- Eclipseのウィンドウキャッシュを10から70mに増やしました(環境設定 - >チーム - > Git - >ウィンドウキャッシュ)。
PS:Gitリポジトリがsvnリモートリポジトリを指しています。また、私はgit初心者ですので、セットアップに間違いがあったかもしれませんので、何かを指摘してください。
ここに私のシステム情報がありますが、私には派手なハードウェア仕様はありませんが、スペア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の
私はLinuxファイルシステムがはるかに高速であることに同意しますが、同じ大規模なgit repoがIntelliJのLinuxボックスでかなり良い性能を発揮するため、Egitの実装にはいくつか問題があります。ですから、私はSVNのクローンである中央のGitリポジトリを1つ作成して、巨大な中央のGitリポジトリから複数の小さなGitリポジトリを作成することはできますか? – Hemant
@Hemantいいえ、できません(SVNリポジトリにコミットする可能性はありません)。すべての小さなものをサブモジュールとして宣言する1つのGitリポジトリを定義できますが、SVNリポジトリとのリンクはありません。そのため、手動同期メカニズムが残っています。 – VonC
Vonc - ご清聴いただきありがとうございます。私は自分の選択肢を探っていきます...また、Egitチームがいくつかのパフォーマンスチューニングをより速く行うことを願っています。 – Hemant