git-svn不是一个git命令?

当试图在git控制下获得一个旧的svn项目转储时,我遇到了一个有趣的问题。 每当我运行git svn ,我得到一个错误,说它不是一个git命令,但有文件,我可以使用git help 。 我的安装有什么问题,或者我只是在这里失去了一些东西?

编辑:我也许应该提到,我在Windows XP下运行msysGit版本1.6.1.9.g97c34,我得到的错误是:

  $ git svn 
 git:'svn'不是一个
 git的命令。 见'git --help'。

你的意思是其中之一?
         fsck的
        显示 

我不确定git svn曾经用过最近的Git Windows发行版(post 1.5.6)。

之前已经有很多问题报告过,所以git svn可能不包含在当前的msysGit版本中。

另一个当前活动的“Git on Windows”开发mingw.git在自述文件中声明svn不起作用。

Msysgit的这个线程确实表明git svn可能会在某些时候重新集成 ,但是进度仍然很慢。


更新:从MSysGit1.6.2(2009年3月初), git-svn再次工作 。 看到这个问题 。


更新: 用于Windows 2.x的现代(2017)Git , git svn已经包含在内。
无需使用sudo apt-get install git-svn ,这只能在WSL(Windows子系统Linux版)shell会话中使用 。

我只是检查我新安装的Ubuntu的盒子,即使安装了git-core也没有安装。 一个简单的:

 sudo apt-get install git-svn 

或者你的发行版相当于应该修复它。

在Ubuntu上:

 sudo add-apt-repository ppa:git-core/ppa apt-get update sudo apt-get install git-svn 

后人:在CentOS 7上,运行sudo yum install git-svn

我在Cygwin 1.7下有同样的错误。 这是通过安装Cygwin安装git-svn包来解决的。

在我的系统下,我遇到了这个麻烦:

 $ git svn Can't locate SVN/Core.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.10.0 /usr/lib/perl5/5.10.0/i486-linux-thread-multi /usr/lib/perl5/5.10.0 /usr/lib/perl5/site_perl/5.10.0/i486-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.10.0/i486-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.0 /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl .) at /usr/libexec/git-core/git-svn line 29. 

因为我没有安装Subversion Perl绑定。 尝试安装并重新运行该命令。

在Gentoo上,你应该用USE =“subversion”构buildgit

如果git-svn不是mSysGit的一部分,我推荐使用一个小的UNIX服务器来托pipe克隆你的svn仓库的网关仓库,然后把这个仓库克隆到你的Windows机器上。 这是我用来从git与CVS进行交互的方法。

在RHEL6上有类似的问题

即在@INC中找不到Git / SVN.pm(@INC包含:/ usr / local / share / perl5 / usr / local / lib64 / perl5 / usr / lib64 / perl5 / vendor_perl / usr / share / perl5 / vendor_perl / usr / lib64 / perl5 / usr / share / perl5。)在/ usr / local / libexec / git-core / git-svn第25行。

我的解决scheme

sudo yum安装subversion-perl chmod 755 / usr / local / share / perl5 /(和子目录,因为它们只能由root读取)

MacPorts版本:

 port install git +svn 

(注意:你可能需要首先port deactivate git