RhodeCodeを実行しているMercurialサーバーがあり、コードをコミットしています。私のクライアントにはRedmineがインストールされており、それらのために変更したコードをサーバーに保存するように要求しました(理解できます)。
引き続きRhodeCodeにコミットし、コミットが成功した後、これらの変更をリポジトリに自動的にプッシュしたいと思います。それらのコードは、SVNリポジトリとMercurialリポジトリの両方にあります。私はどちらかにコミットすることを許可されています-そしてそれらは2つの間の同期を処理します。私の想定では、Mercurialリポジトリにプッシュする方が簡単だと思います。
私はチェンジグループフックを念頭に置いていますが、これがどのように機能するかについていくつかの技術的な質問があります。
しかし、外部リポジトリへの受信とプッシュの両方を処理するための最良の方法は何ですか?
User ----> RhodeCode ----> Redmine
RhodeCodeステップ/changegroupフックで、変更を転送するにはどうすればよいですか?メインリポジトリから直接実行できますか、それとも別のディレクトリにクローンを作成してクライアントにプッシュする必要がありますか?
マスターリポジトリを維持し、クライアントの変更をプッシュするためのより良い方法はありますか?