Mercurial 将执行位作为文件元数据的一部分进行跟踪。没有办法在 mercurial 中明确设置它,但它会跟踪chmod
unix 上所做的更改。默认情况下,添加到 windows 上的文件将设置执行位,但 windows attrib 命令不允许您设置它们。
如果您这样做,hg log -p --git
您将看到显示执行位更改的补丁格式,如下所示:
$ hg log --git -p
changeset: 1:0d9a70aadc0a
tag: tip
user: Ry4an Brase <ry4an-hg@ry4an.org>
date: Sat Apr 24 10:05:23 2010 -0500
summary: added execute
diff --git a/that b/that
old mode 100644
new mode 100755
changeset: 0:06e25cb66089
user: Ry4an Brase <ry4an-hg@ry4an.org>
date: Sat Apr 24 10:05:09 2010 -0500
summary: added no execute
diff --git a/that b/that
new file mode 100644
--- /dev/null
+++ b/that
@@ -0,0 +1,1 @@
+this
如果您无法进入 unix 系统来设置它们,您可能会伪造一个类似的补丁hg import
,但这绝对是次优的。