是否有命令将存储库中已有的修补程序导入到使用mercurial的本地源?
答案 0 :(得分:3)
您可以使用hg export -o filename
执行此操作。
$ mkdir repo
$ cd repo
$ hg init
$ echo a > a
$ hg add a
$ hg commit -m "Commit 0"
$ hg export -o patch.txt
如果您打开patch.txt
,它将显示为
# HG changeset patch
# User Your Name <your email address>
# Date 1482413390 -19800
# Thu Dec 22 18:59:50 2016 +0530
# Node ID 6e46bc10f352958b841995d47e6944ae4e9ebd89
# Parent 0000000000000000000000000000000000000000
Commit 0
diff -r 000000000000 -r 6e46bc10f352 a
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/a Thu Dec 22 18:59:50 2016 +0530
@@ -0,0 +1,1 @@
+a
这与将邮件发送到邮件列表时发生的情况非常相似。有关更多信息,您可以hg help export
或转到Tutorial Export。
然后,您可以通过执行hg import filename
将其导入到任意位置,并将补丁应用于该存储库。
$ cd ..
$ mkdir repo0
$ hg init
$ hg import ../repo/patch.txt
applying ../repo/patch.txt
$ hg tip
changeset: 0:6e46bc10f352
tag: tip
user: Your Name <your email address>
date: Thu Dec 22 18:59:50 2016 +0530
summary: Commit 0
$ ls
a
您可以看到补丁已应用于您的新目录。