2016-07-05 8 views
1

私はWindowsで動作していて、git post-receiveフックでpython 3スクリプトを呼び出しています。このPythonスクリプトはいくつかのことを行います。これらのうちの1つは、gitフックを実行しているユーザ名を出力することです。このユーザー名はMACHINENAME $です(マシン名はMACHINENAMEです)。これはネットワークサービスアカウントですが、ここで間違っている可能性があります。その後、ClearCaseコマンドclearfsimportの呼び出しを実行するsubprocess.runを呼び出します。他のユーザーがこのビューにチェックインできるようにするclearfsimport 'nsetevent'スイッチを使用していますが、これはネットワークサービスアカウントでは機能していないようです。Windowsでgit hook資格を変更する

PythonコマンドをClearCaseビューの所有者として直接実行すると、clearfsimportは成功します。別のユーザーとして実行すると、clearfsimportは成功します。私はgitのフックとしてそれを実行する場合は、しかし、それは、次のエラーメッセージで失敗します

subprocess.CalledProcessError: Command '['clearfsimport', '-recurse', '-nsetevent', '-rmname', '-comment', "This is my comment", '/path/to/clearfsimport/source', '/path/to/ClearCase/view']' returned non-zero exit status 1

私はこのGitのフックを正しく動作させるために何ができますか?私がpython、git、ClearCase、Windows、またはいくつかの組み合わせを調整しなければならないかどうかは関係ありません。

答えて

0

gitのフックは、そのパラメータは、Windowsの実行ファイルclearfsimport(特にパス)

つの簡単なテストに渡される方法に影響するかどうかを確認、Gitのbashで自分自身を実行しているので:.batスクリプトであなたのclearfsimport呼び出しをラップそのスクリプトのソースと目的地のパスを設定してから、あなたのgit hookがそのスクリプトを呼び出すようにします。

関連する問題