我有两个不相关的存储库'public'和'develop':
prj/
public/
develop/
Run Code Online (Sandbox Code Playgroud)
'develop'有很多提交,因为这是我工作的地方.甚至可能是多个脑袋我不时会发布开发资料库的快照.
从公共文件夹我可以这样做:
>hg pull -f ../develop
>hg merge
>hg commit -m "alpha2"
Run Code Online (Sandbox Code Playgroud)
但这也将完整的变革集历史从"发展"转变为"公共"(这不是我想要的).
我也可以删除'public'中的所有文件,除了'.hg'子文件夹.然后手动复制'develop'目录中的所有文件并执行
>hg commit -m "alpha2"
Run Code Online (Sandbox Code Playgroud)
但后来我必须'添加'新文件,'删除'过时文件并'重命名'再次移动文件.
使用-A
带有提交的选项会盲目地添加/删除所有文件,即使它们在"开发"存储库中不受控制.
必须有一个更有效的方法来做到这一点;-)
我建议你移动完整的历史,但如果你因为某种原因无法忍受,那么你可以做以下任何事情:
任何一个都应该做同样的事情,但所有这些都有点难看,因为一般来说,扔掉历史是很难的.