0

目前我们正在尝试将一些更大的项目从 svn 迁移到 git。svn2git 在我们的一些项目中工作得非常好,但在我们更大的项目中却存在问题。最后我们会收到消息:

命令失败:
git checkout OldBranch 1

我们也知道为什么我们会收到消息。这是因为我们没有删除很多分支,而是将它们移到了 DEPRECATED 文件夹中。我们的svn结构基本上是这样的:

|-OurProject
| \- trunk
| \- tags
| \- branches
| | \- DEPRECATED
| | | \- OldBranch 1
| | | \- OldBranch 2
| | | \- OldBranch 3
| | \- Branch 1
| | \- Branch 2
| | \- Branch 3

错误消息总是显示到已弃用文件夹内的分支,所以我猜 svn2git 真的不喜欢那个子文件夹。

我们尝试过的:

  • 使用 --exclude 参数忽略 DEPRECATED 文件夹中的所有内容,但没有运气。我们使用了几种不同的方法来排除文件夹:

--exclude 已弃用
--exclude .*DEPRECATED.*
--exclude .DEPRECATED。

  • 完全删除 DEPRECATED 文件夹,但它仍会尝试查找旧分支。
  • 使用 --nobranches 参数。这行得通,但我们也真的很想迁移我们当前的分支。

任何有同样问题并找到解决方案的人?

4

1 回答 1

0

我们无法配置它。最后我们只使用了 subgit,这个工具能够将 DEPRECATED 文件夹导入为一个分支,其中包含所有不推荐使用的分支。

于 2015-12-08T12:07:11.873 回答