在Mercurial中生成补丁

dee*_*eem 43 mercurial

我已在手册中查找过,但我无法为最后一次提交生成补丁.我试过了

hg qnew patch_name
Run Code Online (Sandbox Code Playgroud)

但它只提交

# HG changeset patch
# Parent a6a8e225d16ff5970a8926ee8d24272a1c099f9c
Run Code Online (Sandbox Code Playgroud)

我也试过了

hg export tip
Run Code Online (Sandbox Code Playgroud)

但它没有做任何事情.我完全承诺了改变.

如何使用上次提交生成补丁文件?

Ida*_*n K 64

执行此操作的命令是export:

$ hg export -o FILE -r REV
Run Code Online (Sandbox Code Playgroud)

它不需要重定向,因此可以在任何平台/ shell上正常工作.


Ry4*_*ase 22

hg export tip是最好的方法,hg diff并且hg log基于答案的答案只是较小的版本.你打字时到底看到/得到了什么hg export tiphg log -p -r tip节目的输出是什么?

该变更tip是仅仅意味着这是不一样有用一个像你想象的概念,因为"在我的仓库最近到达的变更" hg pullhg tag太创造的变更.如果你真的想要你做的最后一件事,你需要更精确revspec.

  • +1用于解释哪些提示意味着可能存在误解. (4认同)

Mat*_*ner 16

像这样:

hg diff -r tip > tip.patch
Run Code Online (Sandbox Code Playgroud)


小智 6

您可以使用此命令:

hg log -r tip -p > tip.patch
Run Code Online (Sandbox Code Playgroud)

这将为该修订生成一个补丁.