我試圖使用hglib獲取給定修訂版的修補程序。我知道汞命令hglib:顯示修訂的補丁,可能嗎?
hg log -pr rev
,但我無法找到如何做到這一點或同等hglib。看起來沒有這樣做的功能,除非我自己破解代碼來運行上述命令。任何幫助將不勝感激?
我試圖使用hglib獲取給定修訂版的修補程序。我知道汞命令hglib:顯示修訂的補丁,可能嗎?
hg log -pr rev
,但我無法找到如何做到這一點或同等hglib。看起來沒有這樣做的功能,除非我自己破解代碼來運行上述命令。任何幫助將不勝感激?
hglib client.log()
接口不支持我想要做的事情,但我找到了一種運行任意hg命令的簡單方法。這兩行打印修訂版本的修補程序:
out = client.rawcommand([b'log', b'-pr', b'%i'%rev])
print(str(out, 'utf-8'))
可能這是實際答案!
import hglib
client = hglib.open(<path>)
client.export (revs = str(<revision number>), output = <output file path>)
您可以自己執行與子流程包相同的操作來保存解釋時間。 Rawcommand只是使用我們傳遞的參數構建一個命令,並再次使用子進程執行。