前段時間我採取了一個Hg回購的克隆,並且一直在進行重要的本地提交(主要版本更改)。如何管理汞合併?
與此同時,行李箱略有進步;幾個提交,但微不足道的變化。
什麼是最簡單的方法來管理合並這個分支回樹幹?
考慮到我的「分支」有顯着的變化,最好是「差異化」最新的主幹,與我分支的主幹版本「分支」,然後將相同的功能更改重新制作到我的v2? - 如果是這樣,我怎麼知道這個版本是什麼?
感謝
前段時間我採取了一個Hg回購的克隆,並且一直在進行重要的本地提交(主要版本更改)。如何管理汞合併?
與此同時,行李箱略有進步;幾個提交,但微不足道的變化。
什麼是最簡單的方法來管理合並這個分支回樹幹?
考慮到我的「分支」有顯着的變化,最好是「差異化」最新的主幹,與我分支的主幹版本「分支」,然後將相同的功能更改重新制作到我的v2? - 如果是這樣,我怎麼知道這個版本是什麼?
感謝
也許我失去了一些東西,但它看起來很容易:
沒有什麼特別的...這就是mercurial的用途! 如果你喜歡一個清潔的歷史,你可以做一個代替合併的代替合併...
更改過於嚴重,整個文件(可能有小的更改在後備箱中)已完全移動 –
檢測重命名與hg addremove –
@jk - 謹慎詳細說明? –
從你的評論聽起來像問題是有文件重命名(這還沒有通過Mercurial完成),它也包含小變化?您可以使用hg addremove -s
小於100的值,以檢測這些
addremove [OPTION]... [FILE]...
Add all new files and remove all missing files from the repository.
New files are ignored if they match any of the patterns in .hgignore. As
with add, these changes take effect at the next commit.
Use the -s option to detect renamed files. With a parameter > 0,
this compares every removed file with every added file and records
those similar enough as renames. This option takes a percentage
between 0 (disabled) and 100 (files must be identical) as its
parameter. Detecting renamed files this way can be expensive.
options:
-s, --similarity guess renamed files by similarity (0<=s<=100)
-I, --include include names matching the given patterns
-X, --exclude exclude names matching the given patterns
-n, --dry-run do not perform actions, just print output
TortoiseHg還提供了一個GUI的方式通過Guess Renames
菜單要做到這一點
這可能有助於合併,如果mercurial能夠找到重命名 –
嗡嗡聲,它會工作在已經承諾的變化? –
你應該能夠找到你開始拉動工作的修訂幹線會發生變化並看到分支開始的位置 –
您可能想編輯您的問題以詳細說明您對整個文件被移動的評論,因爲這可能是問題的關鍵 –