私は小さなプロジェクトの開発中にWindowsとUbuntuの両方でGitを使用しており、2つの間を頻繁に行き来していました。問題は、Git Bashが常に遅くなることです。
遅いと言うと、実行にcd
は8〜25秒かかり、git
コマンドの実行には5〜20秒かかり、場合ls
によっては最大30秒かかることもあります。言うまでもなく、これは楽しいことではなく、非生産的です。WindowsではGitが遅いのはわかっていますが、これはばかげています。
私にとって一時的に機能した1つの解決策は、(この回答で提案されているように)ネットワーク接続を無効にし、Git Bashを起動してから再接続することです。それを実行した後も数日間は高速で動作し続けることがありますが、最終的には常にパフォーマンスが低下します。msysgitディスカッショングループ、スタックオーバーフロー、msysgitの問題リストなどを何週間もオンとオフで調べましたが、機能するソリューションを見つけることができませんでした。
これまでのところ、私は試しました:
- ウイルススキャナーの除外リストにGitおよびプロジェクトフォルダーを追加する
- ウイルススキャナーを完全に無効にする(Kaspersky IS 2011)
- Outlookが実行されていないことを確認する(Outlook 2007)
- 他のすべてのアプリケーションをシャットダウンする
- 管理者としてGit Bashを実行する
- ネットワーク接続の無効化、Git Bashの起動、および接続の無効化の維持
- ネットワーク接続の無効化、Git Bashの起動、接続の再有効化(たまにしか機能しない)
- ランニング
git gc
- 上記の組み合わせ
何人かの人々がBashの補完を無効にすることに成功したことを私は読んだが、理想的にはそれをアクティブに保ちたい。msysgitのバージョンは1.7.3.1-preview20101002で、OSはWindows 7 x64です。Linuxで同じことを実行することは、予想通り、非常に高速です。私はLinuxを排他的に使用しますが、Windowsでも実行する必要があります(特定のアプリケーション、テストなど)。
誰かが同様の問題に遭遇しましたか?もしそうなら、根本的な問題は何であり、解決策は(もしあれば)何でしたか?
これはGitリポジトリだけにとどまりませんが、参考までに、私がGitを使用していたリポジトリはかなり小さく、最大で4〜50ファイルです。