首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >svn2git迁移:规则

svn2git迁移:规则
EN

Stack Overflow用户
提问于 2016-05-09 13:55:11
回答 1查看 1.5K关注 0票数 1

因此,我决定在一个可靠的建议之后使用svn2git工具。为了迁移存储库,我需要作者文件和规则文件以及存储库本身。我组成了这三个目录,并将它们放在一个目录下,我暂时称之为myRepository_test。我希望迁移之后我的新的git存储库会出现在这里。

下面是我目前拥有的存储库结构:

代码语言:javascript
复制
- myRepository
  -- myRepository.release
  -- myRepository.mapping
  -- myRepository.base
  -- ..

我在这里总共有大约30个项目。

在此,我将分享我的文件,这些文件将被使用:

authormap.txt:

代码语言:javascript
复制
egent = Emma Gent <emma.gent@someDomain.com>
gstar = Gabriel Star <gabriel.star@someDomain.com>
.
.

目前,我只想尝试两个项目,所以:

myRepository.rules:

代码语言:javascript
复制
create repository myRepository
end repository

# main history

match /trunk/myRepository/myRepository.release/
  repository myRepository
  branch master
end match

match /trunk/myRepository/myRepository.mapping/
  repository myRepository
  branch master
end match

# Ignore everything else
match /
end match

这使得最终命令:

代码语言:javascript
复制
./svn-all-fast-export --identity-map authormap.txt --rules myRepository.rules --add-metadata http://address/svn/myRepository

它的结尾是:

代码语言:javascript
复制
Loading rules from: "myRepository.rules" 
Loading rules from "myRepository.rules" 
Could not read the rules file: myRepository.rules
Aborted (core dumped)

我不太确定规则文件的内容,如果有人能在这方面帮助我,那就太好了。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-09 14:19:06

您得到的消息并不意味着语法是假的,语法看起来很好。它实际上无法找到或读取文件本身。您是否从svn-all-fast-export文件所在的目录调用myRepository.rules。您是否以用户身份读取文件的权限,即调用svn-all-fast-export的用户身份

关于规则文件的内容,我不认为它是完全正确的。将myRepository.releasemyRepository.mapping的内容存储在存储库的根目录中。如果这是你想要的,那就好了。如果没有,您可能应该在prefix块中使用一个match规则,以便将内容添加到单独的子目录中。但是,在您能够成功地运行该工具之后,您将看到这一点。

还有一个注意,match表达式是正则表达式,因此您可能想要转义.并拥有match /trunk/myRepository/myRepository\.release/。或者如果您真的希望将内容放在同一个文件夹中,甚至

代码语言:javascript
复制
match /trunk/myRepository/myRepository\.(release|mapping)/
  repository myRepository
  branch master
end match

或者如果你想要潜艇

代码语言:javascript
复制
match /trunk/myRepository/myRepository\.(release|mapping)/
  repository myRepository
  branch master
  prefix \1
end match

代码语言:javascript
复制
match /trunk/myRepository/(myRepository\.(release|mapping))/
  repository myRepository
  branch master
  prefix \1
end match
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37117624

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档