ken*_*der 6 mercurial repository
我想设置一个 Mercurial 存储库,但不是将.hg/
目录放在存储库树下,而是希望将它从工作副本移到某个地方(如其他分区)。
有没有可能这样做?
从 Mercurial 1.3 开始,您可以使用共享扩展来间接执行您想要的操作。首先通过添加以下内容来启用扩展~/.hgrc
:
[extensions]
share =
Run Code Online (Sandbox Code Playgroud)
然后在您希望.hg
目录所在的分区上创建一个普通存储库:
$ cd /mnt/bigdisk
$ hg init foo
Run Code Online (Sandbox Code Playgroud)
转到您希望工作副本所在的位置并创建一个共享存储库:
$ cd ~/src
$ hg share /mnt/bigdisk/foo
Run Code Online (Sandbox Code Playgroud)
这~/src/foo
将为您创建一个存储库。此存储库将引用/mnt/bigdisk/foo
存储库。中仍然会有一个.hg
文件夹~/src/foo
,但它几乎是空的,因此非常小。您像往常一样对共享存储库进行操作,但所有提交都直接转到/mnt/bigdisk/foo
存储库。
共享扩展适用于 Mercurial 运行的所有平台(Windows、Mac OS X、Linux 等),因为“符号链接”是由 Mercurial 内部完成的,而不是通过文件系统完成的。