我在someFolder
中创建并使用了Mercurial存储库。现在我发现需要跟踪文件的一级。所以我需要的是创建someOtherFolder
并将其移动someFolder
。这应该没问题。移动Mercurial存储库
在这一点上,我将有
someOtherFolder
someFolder
.hg
many other files
有没有办法告诉水银,以扩大其范围,并开始跟踪文件内someOtherFolder
呢?
我在someFolder
中创建并使用了Mercurial存储库。现在我发现需要跟踪文件的一级。所以我需要的是创建someOtherFolder
并将其移动someFolder
。这应该没问题。移动Mercurial存储库
在这一点上,我将有
someOtherFolder
someFolder
.hg
many other files
有没有办法告诉水银,以扩大其范围,并开始跟踪文件内someOtherFolder
呢?
有可能做到这一点一个更好的方式,但有一两件事你可以做的是hg mv
所有文件到一个新的子目录someFolder
,然后重命名父someFolder
到someOtherFolder
,如:
someFolder$ mkdir someFolder
someFolder$ hg locate | xargs --replace=FILE hg mv FILE someFolder/FILE
someFolder$ hg status
A someFolder/a.txt
A someFolder/foo/b.txt
R a.txt
R foo/b.txt
someFolder$ hg commit -m "moved files to subfolder"
someFolder$ cd ..
$ mv someFolder someOtherFolder
你应该能够使用hg convert extension来做到这一点。
我没有测试这一点,但这样的事情可能工作:
$ echo include someFolder > /tmp/myfilemap
$ echo rename someFolder someOtherFolder/someFolder >> /tmp/myfilemap
$ hg convert --filemap /tmp/myfilemap /path/to/repo/foo /tmp/mysubfoo-repo
+1太棒了。我必须使用'-I FILE'而不是'--replace FILE' – Dori 2012-09-25 17:43:05