在Mercurial中,如何从Changeset中提取单个文件的更改以应用于另一个分支?

Sam*_*ill 6 mercurial tortoisehg

我在一个分支上有很多文件的大量提交,我需要将该变量集中单个文件的修改转移到另一个分支.我怎样才能做到这一点?我主要使用TortoiseHg,但命令行解决方案也很好.

如果我转到TortoiseHg中的变更集并选择文件,我可以看到我要传输的差异,但不是实际应用它们的方法.

Ry4*_*ase 9

您可以使用以下命令获取该文件的补丁:

hg log -r THEREVISIONWITHLOTSOFCHANGES -p -I path/to/justthatfile > justthatfile.patch
Run Code Online (Sandbox Code Playgroud)

然后,您可以在任何您想要的分支上导入:

hg update anotherbranch
hg import --no-commit justthatfile.patch
hg commit
Run Code Online (Sandbox Code Playgroud)