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
)