2010-11-19 8 views
2

コミット時にgitがローカルの変更を上流のSubversionリポジトリに自動的にプッシュするようにしたいと思います。 SVNリポジトリはKerberosを使用して認証されるので、パスワードや何かをコミットフックにハードコードする必要はありません。git-svn Kerberosをコミットした後のコミット

これを行う明白な方法は、コミット後のフックに "git svn dcommit"を入れることです。残念ながら、gitはフックを呼び出す前に環境変数(例えば、ケルベロスが必要とするKRB5CCNAME)を取り除いているようです。

質問:私はどのようにコミットフックに渡される環境変数を変更するのですか?

+0

ええと、これはGitを使う利点の1つを否定しませんか?すなわち、ある種のトピックブランチ上でローカルに開発し、他の開発者が行った変更から隔離し、一度にsvnに全機能をプッシュします。 – cdhowie

+0

はい、gitを開発ツールとして使用していたとします。我々はそうではありません、cobblerはgitを内部的に使用して、実行時設定のリビジョン履歴を保存しています。ですから、sysadminがCLIツールを実行して変更を加えるとすぐに、これをアップストリームにプッシュする必要があります。 –

+0

私はケルベロスについて何も知らないことを認めなければなりませんが、環境変数に頼らざるを得ませんか?あなたは、テキストファイルに格納された変数にアクセスするフックスクリプトを使用できませんか? – gilligan

答えて

1

答えは、環境変数が箱のsudoで取り除かれたことです---私は/ etc/sudoersに保存される環境変数のリストに追加しました。

これまでのRHEL5のインストールではバグでしたが、これは修正されています。

関連する問題