web-dev-qa-db-ja.com

hgリポジトリの自動gitミラーを作成する方法

Mercurialを使用してGoogleCodeでVimプラグインプロジェクトを作成しましたが、ユーザーはそれをgithubに配置して、git subrepoとして簡単に使用できるようにしたいと考えています(すべてのプラグインが内部にあるgithubで〜/ .vim /を保持するため)。

個人的には、githubとgitよりもgooglecodeとhgの方が好きなので、プロジェクトをgithubに移動するのは好きではなく、hgリポジトリに一種の自動gitミラーを実装することを好みます。私はこれらを読みました: Hg-Git Mercurialプラグインgitミラーをhg-gitと同期する および Gitミラーを作成する そして次のようになりますこれは、1つではなく2つのコマンドを使用することで機能する可能性があります。

hg Push
hg Push githubmirror

しかし、問題は、あなたが知っているように、私たちのほとんどは2番目の実行を忘れるでしょうhg Push時々。それで、これを何らかの方法で(フックなどを使用して)自動化することは可能ですか?

別の質問-そのようなミラーを作るためのより良い方法はありますか?たぶん、GoogleCodeはすでに彼らのhgリポジトリへのgitアクセスを提供していますか?または、hgリポジトリのgitクローンを作成し、hgリポジトリの所有者に通知することなく、サードパーティによって自動的に元のhgリポジトリと同期させることは可能ですか?

2
Powerman

コミット後のフックのようなことをすることができます。見てください http://www.selenic.com/Mercurial/hgrc.5.html

フック

コマンドまたはPythonコミットの開始や終了などのさまざまなアクションによって自動的に実行される関数。アクションにサフィックスを追加することで、同じアクションに対して複数のフックを実行できます。サイト全体をオーバーライドします。フックは、値を変更するか、空の文字列に設定することで実行できます。フックには、新しい行のフック名に優先度のプレフィックスを追加して優先度を設定することで優先度を設定できます。指定しない場合、デフォルトの優先度は0です。

1
Karolos