我剛剛將維護分支的更改合併到我們的開發分支中。 (我們通過克隆mercurial存儲庫來進行分支,而不是通過命名分支來進行分支。)有一些衝突,所以我不得不手工編輯六行左右的行來解決合併衝突。沒什麼大不了。但是當我看着合併提交時,我發現整個補丁堆中的bazillion行對一個父母或另一個父母,而不是合併衝突。如何查看我更改以解決mercurial merge衝突的問題?
我該如何回顧衝突及其解決方案?
我剛剛將維護分支的更改合併到我們的開發分支中。 (我們通過克隆mercurial存儲庫來進行分支,而不是通過命名分支來進行分支。)有一些衝突,所以我不得不手工編輯六行左右的行來解決合併衝突。沒什麼大不了。但是當我看着合併提交時,我發現整個補丁堆中的bazillion行對一個父母或另一個父母,而不是合併衝突。如何查看我更改以解決mercurial merge衝突的問題?
我該如何回顧衝突及其解決方案?
hg -n annotate
大概?
或者更好的annotate -n .. | grep 'hg tip --template "{rev}\n"'
。你知道mergeset的更改集數量,你的編輯會有這個數字(automerged字符串會得到最新的變化數)
當我想這樣做時,我重做與ui.merge=internal:merge
合併,所以我得到所有的衝突標記。然後我將它與合併變更集進行比較。有點笨拙,但它有效。
哦,我明白你在說什麼,在合併處註釋文件,grep處理被改變的行......是的,這很有效,但是速度相對較慢。它至少需要被縮小到合併中涉及的一組文件,註釋庫中的所有內容都非常昂貴。 – keturn
blame -r N(只使用一個修訂版的文件)? –