私たちはmercurialで作業しており、コードをきれいに保つためにprecommitフックを導入したいと考えています. 誰もが何らかの方法でフックを取得できるようにしたいと考えていますが、これを一元化された方法で更新できるようにしたいとも考えています。Mercurial はフックをバージョン管理しないので、代替オプションは何でしょうか? これに対する解決策を見つけた人はいますか?前もって感謝します!
ネミ
私たちはmercurialで作業しており、コードをきれいに保つためにprecommitフックを導入したいと考えています. 誰もが何らかの方法でフックを取得できるようにしたいと考えていますが、これを一元化された方法で更新できるようにしたいとも考えています。Mercurial はフックをバージョン管理しないので、代替オプションは何でしょうか? これに対する解決策を見つけた人はいますか?前もって感謝します!
ネミ
フックは複製されません (「Mercurial でのバージョン管理された拡張機能の構成」で詳しく説明されています) が、共通hgrc
ファイルを持つことができます (hgrc
構文を参照):
フォームの行は
%include file
、現在の構成ファイルにファイルを含めます
その中央構成ファイルで、セクションを変更できます[hooks]
。
デスクトップを制御できる場合 (標準的な企業インストール)、システム全体のエントリにフックを配置する/etc/mercurial/hgrc
か、/etc/mercurial/hgrc.d/ourcommithook
マシンをリモートで管理している場合は、非常に優れたパペットのようなものを使用するか、独自の .rpm、.deb、または .msi インストーラーを作成して、Mercurial をインストールし、全員のフックをマシンのグローバル構成に配置することで、これを自動化できます。
projrc extensionを見てください。次に、設計者に少数の共通行を ~/.hgrc ファイルに入れるだけで、中央リポジトリの repo/.hg/projrc ファイルに何を入れても自動的にプッシュされます。
これらのフックを配置するための共通の場所が必要ですが、ユーザー全員がマウントする何らかの共有マウント ドライブがすでにあるはずですよね? または、誰もが標準的な場所にチェックアウトしなければならない「ツール」リポジトリを用意することもできます。
スティーブ