我一直在試圖解決是否有辦法獲取與傳入的hg狀態相同的信息。 (這是使用汞版本1.9.2)Mercurial獲取傳入文件更改摘要的最佳方式
所以,如果你拉一個回購你就可以得到的所有的更改摘要:
hg pull
hg status --rev .:default
然而,隨着進入拉的最佳可用之前是:
hg incoming --stat
這對顯示已更改的文件很好。但是沒有給出所有變更集的總體概述。
現在,我可以得到接近使用一些bash中總結的所有文件:
hg in --rev default --template '< {desc|tabindent}\n' -q | sed 's%\t%< %'
filechanges=`hg in --rev default --template '{files} ' -q`
echo ${filechanges} | xargs -n1 | sort -u | sed -e 's%^%. %'
現在我可以顯示「添加,刪除,修改的」使用我已根據默認的〜/ hgtemplates /圖創造一種風格-cmdline.files:
# specify a changeset
changeset_verbose = 'changeset: {node} {rev} {branch}\ndescription:\n{desc|tabindent}\nFiles:\n{file_mods}{file_adds}{file_dels}{file_copies_switch}\n'
changeset = 'desc: {desc|tabindent}\nFiles:\n{file_mods}{file_adds}{file_dels}{file_copies_switch}\n'
changeset_quiet = '{file_mods}{file_adds}{file_dels}{file_copies_switch}\n'
# Using hg status prefixes
# Modified M prefix
start_file_mods = ''
file_mod = 'M {file_mod}\n'
end_file_mods = ''
# Added A prefix
start_file_adds = ''
file_add = 'A {file_add}\n'
end_file_adds = ''
# Deleted ! prefix
start_file_dels = ''
file_del = '! {file_del}\n'
end_file_dels = ''
# Copies C prefix ??????
start_file_copies = 'copies: '
file_copy = 'C {name} ({source})\n'
end_file_copies = ''
然後使用它由:
hg in --style ~/hgtemplates/map-cmdline.files -q
但隨後我將不得不使用一個以上的C omplex合併腳本,可能perl哈希基於名稱。
那麼有擴展名或模板的方式來做到這一點?
任何指針在正確的方向?
遺憾的是,傳入不會緩存到.hg下的標準文件。 我可能是偏執嘗試不拉,這可能是正常的方式。就像捆綁的想法。 –
我認爲--change只顯示一個變化,hg st --rev。:default顯示了整個文件的變化。可能應該增加一個例子,但它已經足夠囉嗦了。 –