2016-06-30 2 views
0

私は、特定のリビジョンのパッチをhglibを使って取得しようとしています。私は、HGコマンドはhglib:リビジョンのパッチを表示できますか?

hg log -pr rev

である知っているが、私はhglibでこのまたは同等の操作を行う方法を見つけることができません。私は上記のコマンドを実行するコードを自分自身をハックしない限り、それを行う機能がないようです。どんな助けでも大変感謝していますか?

答えて

1

hglib client.log()インターフェイスは私がやりたいことをサポートしていませんが、任意のhgコマンドを実行する簡単な方法が見つかりました。この2行は改訂版のパッチを印刷します。

out = client.rawcommand([b'log', b'-pr', b'%i'%rev]) 
print(str(out, 'utf-8')) 
1

これは実際の回答かもしれません!

import hglib 
client = hglib.open(<path>) 
client.export (revs = str(<revision number>), output = <output file path>) 
サブプロセスパッケージでこれを実行して、解釈時間を節約できます。 Rawコマンドは、渡されたパラメータを持つコマンドを作成し、サブプロセスで再度実行します。

関連する問題