作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想使用hg graft
将变更集从一个分支复制到另一个分支。
但是,在变更集中修改的文件已在源分支中重命名(使用hg rename
)-在要移植的变更集之前。
当我尝试时,我得到:
scanning for duplicate grafts
grafting revision 3
searching for copies back to rev 2
unmatched files in local:
f1.txt
resolving manifests
overwrite: False, partial: False
ancestor: c06936303423, local: cfeaa3003c57+, remote: e3f2a201d1e2
remote changed f1a.txt which local deleted
use (c)hanged version or leave (d)eleted? c
最佳答案
这是一个很好的问题。看来这是不可能的。我重播了您的情况,还尝试了移植和重新设置-效果相同。
我猜这不起作用的基本原因是因为嫁接显式地仅选择一个修订的更改,即不考虑显式的过去更改(包括文件重命名)(更新:也可能是错误或缺少功能,参见@Soulman的答案)。
您没有要求,但是这里有个解决方法。
$ hg export --git -r <rev-to-graft> > my.patch
f1a.txt
替换为f1.txt
,这样您将获得:...
diff --git a/f1.txt b/f1.txt
--- a/f1.txt
+++ b/f1.txt
@@ -1,1 +1,1 @@
...
sed -i my.patch -e "s,\([ab]\)/f1a\.txt,\1/f1.txt,g"
$ hg up <target-rev>
$ hg import my.patch
关于mercurial - Mercurial 嫁接能否处理重命名的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12753660/
我想嫁接一个 merge 变更集: $ hg graft -UD --log -r 1909 skipping ungraftable merge revision 1909 我的解决方法是: hg
我是一名优秀的程序员,十分优秀!