svn の一連のファイルについて、最後に変更された作成者名を取得しようとしています。
私は自分のマシンでコードをチェックアウトしました。
私のスクリプトでは、すべてのファイルの絶対パスがリストで読み取られます。次のコードを使用して、各ファイルの最終編集者を抽出しようとしています。
for file in all_files:
dir = os.path.dirname(file)
entry = client.info(dir)
print "Folder:"+dir+" And author:"+entry['commit_author']
しかし、次のエラーが表示されます:
File "test_main.py", line 110, in main
entry = client.info(dir)
pysvn._pysvn.ClientError: '.' is not a working copy
ファイル名全体を引数として指定しようとしましたclient.info()
が、同じ結果が得られました。
これは非常に単純な問題かもしれませんが、私はPythonの初心者なので、理解できません。
編集:
フォルダーパスを次のようにハードコーディングしてみました:
temp = "/home/gajananh/scripts/test/repo/test_proj/src";
entry = client.info(temp)
print "Folder:"+dir+" And author:"+entry['commit_author']
そしてそれは動作します!
最初のスクリプトdir
では、変数をループで出力しようとすると、正しいパスが出力されます。svn info
出力のためにシェルでコマンドを実行しようとすると、適切な結果が得られます。
この謎が解りません。助けてください。