私は持っているSVNリポジトリを持っています
trunk/file1.txt
trunk/file2.txt
trunk/fileR.txt
/var/www/trunkサーバー上で、ユーザーが所有するトランク()の作業コピーチェックアウトがありますwww-data。
fileR.txtユーザーを除くすべてのユーザーに対して読み取り専用です(またはwww-dataによってアクセスが制限されています)。連結して生成する必要があります:authzsvnlook authorfileR.txtfile1.txtfile2.txtcat file1.txt file2.txt > fileR.txt
trunk/file1.txt私が欲しいのは、またはのいずれかにコミットがあるたびtrunk/file2.txtに、サーバー上の作業コピーを更新し、ファイルを連結して、新しいfileR.txtものをリポジトリにコミットするスクリプトを実行する必要があるということです。
私が念頭に置いていたのは、上記のすべてを実行するコミット後のフックでしたが、前のコミットが完了するまで、SVNが新しいコミットを処理できるかどうかとその方法がわかりません。
例:つまり、変更が加えられたcommit1file1.txtが入り、pre-commitフックが実行され(存在する場合)、トランザクションがデータベースにコミットされてから、post-commitフックが実行されます。post-commitフックは、commit1からのpost-commitフックが実際に終了する前に、ファイナライズする必要があるcommit2を実際に作成します。
SVNはこれを行うことができますか?そうでない場合は、他にどのようなツール/ワークフローを提案しますか?
ありがとう