我想要一个 Mercurial 存储库设置,但.hg/
我不想将目录放在存储库树下,而是想将其移出工作副本的某个地方(比如其他分区)。
这样可以吗?
答案1
从 Mercurial 1.3 开始,你可以使用分享扩展间接地做你想做的事。首先通过添加以下内容来启用扩展~/.hgrc
:
[extensions]
share =
然后在您希望目录所在的分区上创建一个普通存储库.hg
:
$ cd /mnt/bigdisk
$ hg init foo
转到您想要存放工作副本的位置并创建共享存储库:
$ cd ~/src
$ hg share /mnt/bigdisk/foo
这~/src/foo
将为您创建一个存储库。此存储库将引用存储库。中/mnt/bigdisk/foo
仍会有一个文件夹,但它几乎是空的,因此非常小。您可以像平常一样对共享存储库进行操作,但所有提交都会直接进入存储库。.hg
~/src/foo
/mnt/bigdisk/foo
共享扩展适用于 Mercurial 运行的所有平台(Windows、Mac OS X、Linux 等),因为“符号链接”是由 Mercurial 内部完成的,而不是通过文件系统完成的。
答案2
没有办法完全按照你的意愿去做。最接近的方法是使用符号链接.hg
指向真正的链接。请参阅此主题。