Web開発作業にSVNリポジトリを使用しています。リポジトリのチェックアウトを保持する開発サイトを設定しています。
リポジトリに対してコミットが行われるたびに開発サイトが更新されるように、SVNのコミット後フックを設定しました。
cd /home/www/dev_ssl
/usr/bin/svn up
これは正常に機能しますが、リポジトリのサイズが原因で、更新に長い時間(約3分)がかかり、定期的なコミットを行う場合はかなりイライラします。私が欲しいのは、コミット後のフックを変更して、コミットされたファイル/ディレクトリのみを更新することですが、これを行う方法がわかりません。「最も低い共通ディレクトリ」を更新することがおそらく最良の解決策です。
次のファイルをコミットする場合:
- /branchs/feature_x/images/logo.jpg
- /branchs/feature_x/css/screen.css
次のディレクトリが更新されます:/ branchs / feature_x /
誰かが私がこれを達成するソリューションを作成するのを手伝ってもらえますか?
更新:
- リポジトリと開発サイトは同じサーバー上にあるため、ネットワークの問題は関係ありません。
- CPU使用率は非常に低く、I / Oは問題ないはずです(ハイスペック専用サーバーで実行されています)
- 開発サイトは約です。サイズは7.5GBで、約 600,000アイテム、これは主に複数のブランチ/タグがあるためです