如何在 Perl 的@INC中包含其他文件夹?(是:"无法在@INC中找到 Git.pm"对于svn2git)



我试图通过svn2git将svn的repo导入git。当我运行svn2git --verbose https://url_to_repo时,我最终得到以下输出:

Running command: git svn init --prefix=svn/ --no-metadata --trunk=trunk --tags=tags --branches=branches https://url_for_repository
Can't locate Git.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8 /home/cpdirect/perl5/lib/perl5 /usr/local/lib/perl5/5.8.8/x86_64-linux /usr/local/lib/perl5/5.8.8 /usr/local/lib/perl5/site_perl/5.8.8/x86_64-linux /usr/local/lib/perl5/site_perl/5.8.8 /usr/local/lib/perl5/site_perl .) at /usr/libexec/git-core/git-svn line 80.
BEGIN failed--compilation aborted at /usr/libexec/git-core/git-svn line 80.
command failed:
2>&1 git svn init --prefix=svn/ --no-metadata --trunk=trunk --tags=tags --branches=branches https://url_for_repository

很明显,Perl无法在路径中找到模块,但是我在CentOS 5.9上尝试过的一切都没有产生结果。例如:

git-1.7.11.3-1.el5.rf
git-svn-1.7.11.3-1.el5.rf
cpanel-git-1.7.11.3-1.cp1136

有什么办法解决这个问题吗?

因此,由于某些原因,Perl不知道如何查看/usr/lib/perl5/vendor_perl/5.8.8/。如果我链接到/usr/lib/perl5/site_perl/5.8.8中需要的每个模块,它的工作看起来很好,没有错误。

所以这里真正的问题是你如何强迫Perl在vendor_perl文件夹下查找?

所以我已经发现了如何添加多个库,它解决了缺失的Perl库:

PERL5LIB="/usr/lib/perl5/vendor_perl/5.8.8/:/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi" svn2git -v file:///my/path/to/svn/repo

最新更新