2014-10-07 39 views
1

我們已經將變更集從另一個存儲庫移植到當前版本。在我們看來,該移植擴展存儲在一個額外的字段原來changset散列可與hg log --debug顯示,如:打印移植源變更散列

changeset: 720:092506 
tag:   tip 
parent:  ... 
parent:  ... 
manifest: ... 
user:  ... 
date:  ... 
files:  ... 
extra:  branch=default 
extra:  transplant_source=\xe3>\xa7py\xff\xcda\x93d\xde\xa5\xb5\xa6\xf7\xed\xc0\x16\x82\xa3 
description: 
Bugfix, ... 

原來這裏changset哈希(transplant_source)是不是太可讀性和可用性。 如何用hg log命令以可讀格式打印transplant_source

我玩過ifeq and the list operator沒有成功。

回答

1

噁心,並沒有回答這個問題,但似乎工作(Python的2)::)

hg log --debug | python -c "import sys, re; x=re.compile(r'^extra:\\s+transplant_source='); print '\\n'.join([l.split('=',1)[0]+'='+eval('\"'+l.split('=',1)[1].strip()+'\"').encode('hex') if x.match(l) else l.rstrip('\\n') for l in sys.stdin])"

+0

OMG :))我現在去檢查一下。 – palacsint 2014-10-07 20:45:09

+0

它的工作原理,謝謝!我想我會等幾天,有人可能會有一個更簡單的解決方案。 – palacsint 2014-10-07 20:50:01