Git SVN无法从SVN存储库获取

Sam*_*rum 34 svn git git-svn

我想一起使用SVN和Git.我有一个svn存储库,我正在尝试获取工作目录,但我遇到如下错误.

svn,版本1.6.6(r40053)

git版本1.7.3.1.msysgit.0

svn存储库路径是file:/// d:/ tmp/test-svn/repos

这些是我做的步骤:

D:\tmp\test-svn>mkdir my-project

D:\tmp\test-svn>cd my-project

D:\tmp\test-svn\my-project>git svn init file:///d:/tmp/test-svn/repos

Initialized empty Git repository in D:/tmp/test-svn/my-project/.git/

D:\tmp\test-svn\my-project>git svn fetch

Couldn't open a repository: Unable to open an ra_local session to URL: Unable to
 open repository 'file:///d:/tmp/test-svn/repos/my-project/trunk': Expected FS f
ormat '2'; found format '4' at C:\Program Files\Git/libexec/git-core/git-svn lin
e 1773
Run Code Online (Sandbox Code Playgroud)

那么问题是什么?如何从svn存储库获取数据到git工作目录?

谢谢.

tek*_*ara 46

我认为这是以下问题:http://code.google.com/p/msysgit/issues/detail?id = 298

可能的解决方案是设置svnserve并使用svn://协议代替file:///

请参阅此处以在Windows上设置svnserve:http: //tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-serversetup-svnserve.html

UPDATE

svnserve 如果您使用Windows操作系统(我使用TortoiseSVN版本1.8.6检查),它可作为TortoiseSVN的一部分提供

然后你就开始:

svnserve -d -R --root c:\path\to\svn\repo
Run Code Online (Sandbox Code Playgroud)

并使用以下命令克隆存储库:

git svn clone svn://localhost/path/inside/svn/repo
Run Code Online (Sandbox Code Playgroud)

  • 这是最好的解决方案:TortoiseSVN已经提供了必要的命令行工具(默认情况下它们没有安装,你必须在安装程序中选择它们).然后你只需启动`svnserve -d -R --root d:\ svnroot`并使用`git clone svn:// localhost/myproject`克隆存储库. (10认同)