Mercurial 什么';复制.hg文件夹和使用克隆有什么区别?
假设我需要创建x存储库,它可以从一个中央存储库进行推拉。克隆所有这些存储库与将.hg文件夹从中央存储库复制x次到空文件夹有实际区别吗?我能想到的一个区别是,复制不是原子操作:Mercurial 什么';复制.hg文件夹和使用克隆有什么区别?,mercurial,Mercurial,假设我需要创建x存储库,它可以从一个中央存储库进行推拉。克隆所有这些存储库与将.hg文件夹从中央存储库复制x次到空文件夹有实际区别吗?我能想到的一个区别是,复制不是原子操作: 你不能确定你复制的回购协议没有被修改 编辑:文章实际上提到: 在某些情况下,您可以使用完整的硬链接克隆存储库和工作目录 这是克隆的最快方法,但并不总是安全的 操作不是原子的(请确保在操作过程中不修改REPO,由您决定) 您必须确保编辑器断开硬链接(Emacs和大多数Linux内核工具都这样做) 此外,这与将元数据放在.
你不能确定你复制的回购协议没有被修改
编辑:文章实际上提到: 在某些情况下,您可以使用完整的硬链接克隆存储库和工作目录 这是克隆的最快方法,但并不总是安全的
- 操作不是原子的(请确保在操作过程中不修改
,由您决定)REPO
- 您必须确保编辑器断开硬链接(Emacs和大多数Linux内核工具都这样做)李>
- 此外,这与将元数据放在
目录下的某些扩展不兼容,例如.hg
mq
是的,有一个区别。如果两个存储库位于同一文件系统上,克隆将尝试创建硬链接。(不幸的是,这在windows上不起作用)另一个细微的区别-如果执行复制,原始存储库和新存储库将具有相同的父存储库。使用克隆时,新存储库的父存储库将是原始存储库 i、 e.在.hg/hgrc文件的[path]部分 原始存储库(/repo/hg/Original) 复制的存储库
[paths]
default = /repo/hg/parent
[paths]
default = /repo/hg/original
克隆存储库
[paths]
default = /repo/hg/parent
[paths]
default = /repo/hg/original
事实上,它确实可以在最近的NTFS文件系统上工作——我认为NTFS 5是我最需要的。肯定能与Win7一起使用,相当肯定它也能与Vista一起使用,但不需要测试。