0

hg convert -A AUTHORS_FILE repo在一个颠覆存储库上运行。如果我hg log在新创建的 mercurial 存储库中运行,我只会得到 subversion 修订历史中的最后 8 次更改。

有没有办法转换我的 subversion 存储库并维护整个日志?我知道这不是很多信息,我不确定在这种情况下调试信息会有什么帮助。问我,我会尝试查找信息。

编辑:有问题的颠覆存储库包含多个项目(这不能很好地转化为 mercurial),但我只想要一个项目。解决方案大致如下:

hg --config convert.svn.trunk=project/trunk --config convert.svn.branches=project/branches --config convert.svn.tags=project/tags convert file:///net/vol1/svn

convert.svn.* 表示项目的主干、分支和标签到转换工具的位置。/net/vol1/svn 是 svn 存储库所在的位置。

4

1 回答 1

0

我认为并期望,您在修订版中有基本的布局更改,在您无法转换历史之前 -如果您从 repo-root 转换并且|或没有在 .hgrc 中定义 tree-relatedsvn.* 选项

如何调试您的案例

  • 检查存储库的 svn-client 日志(svn URL-OF-REPO-ROOT -v将向您显示受完整路径修订影响的文件) - 如果布局已更改,您必须分两个或更多步骤转换源代码库,一次仅转换具有永久布局的范围,并正确选项

svn.trunk

主干的相对路径(默认:“主干”)

svn.branches

分支树的相对路径(默认值:“分支”)`

svn.tags

标签树的相对路径(默认:“标签”)

(在命令行中)和--rev选项

  • For the same job (checking layout) you can use svn ls URL@PEG-REV or recursively over tree with -R
  • you can convert Subversion repository to Mercurial repo transparently, using HGSubversion extension (you clone Subversion repo, can pull|push with it, but cloned local repo is Mercurial repository)
于 2013-01-25T08:30:50.810 回答