我看过许多博客文章,并且亲身体验过,Mercurial 不会保留从一个存储库推送到另一个存储库的文件的权限。有谁知道会保留权限的 Mercurial 扩展?我假设它不能用钩子完成,因为钩子对原始仓库的权限了解多少?
要求详细说明:
如果对文件的唯一更改是权限更改(例如,
chmod o+r filename
),则尝试提交文件失败并显示文件未更改的消息。如果我提交一个权限为 600 (rw--------) 的文件,然后克隆 repo,克隆中的同一文件具有权限 664 (rw-rw-r--):
: nr@yorkie 6522 ; hg clone one two updating working directory 1 files updated, 0 files merged, 0 files removed, 0 files unresolved : nr@yorkie 6523 ; ls -l one two one: total 4 -rw------- 1 nr nr 8 Aug 18 21:50 foo two: total 4 -rw-rw-r-- 1 nr nr 8 Aug 18 21:51 foo
此示例显示hg clone
不保留权限,但hg push
也不保留它们。
在我的应用程序中,一个 repo 位于可公开访问的路径上,重要的是
多个用户有权更改 repo
公共存储库中的文件只有在明确可读时才变得可读。