On OSX using sourcetree / git-svn getting “Can't locate SVN/Core.pm in @INC ”

前端 未结 10 2123
离开以前
离开以前 2021-02-07 06:14

I\'m using OSX and want get a svn repo into a local git repo using sourcetree.

When I add a bookmark using sourcetree using SVN URL, thus sourcetree<

10条回答
  •  孤独总比滥情好
    2021-02-07 07:03

    In my case, it is because different versioned perl was installed by brew as dependency of some formula, and override the system's default version.

    So the resolution for me is to relieve the overridden as described following.


    when type which perl and perl -v, I find it not the system default version:

    # locate programs
    faner@MBP-FAN:~|⇒  whereis perl
    /usr/bin/perl
    
    # locate a program file in the user's path
    faner@MBP-FAN:~|⇒  which perl
    /usr/local/bin/perl
    
    faner@MBP-FAN:~|⇒  perl -v
    
    This is perl 5, version 26, subversion 1 (v5.26.1) built for darwin-thread-multi-2level
    

    which should be v5.18.2 according to the git svn error messages.

    I guess it is because the different versioned perl was installed by brew as dependency of some formula, and override the system default version.

    faner@MBP-FAN:~|⇒  brew uses perl --installed
    subversion
    

    To prove it, try to move /usr/bin before /usr/local/bin in $PATH, then perl was fallback to the system's default version:

    faner@MBP-FAN:~|⇒  echo $PATH
    /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
    
    faner@MBP-FAN:~|⇒  PATH=/usr/bin:$PATH
    faner@MBP-FAN:~|⇒  echo $PATH
    /usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
    
    faner@MBP-FAN:~|⇒  whereis perl
    /usr/bin/perl
    
    faner@MBP-FAN:~|⇒  which perl
    /usr/bin/perl
    
    faner@MBP-FAN:~|⇒  perl -v
    
    This is perl 5, version 18, subversion 2 (v5.18.2) built for darwin-thread-multi-2level
    (with 2 registered patches, see perl -V for more detail)
    

    and perl -V list the @INC just satisfy the Can't locate SVN/Core.pm in @INC requirements:

    faner@MBP-FAN:~|⇒  perl -V
    Summary of my perl5 (revision 5 version 18 subversion 2) configuration:
    
      @INC:
        /Library/Perl/5.18/darwin-thread-multi-2level
        /Library/Perl/5.18
        /Network/Library/Perl/5.18/darwin-thread-multi-2level
        /Network/Library/Perl/5.18
        /Library/Perl/Updates/5.18.2
        /System/Library/Perl/5.18/darwin-thread-multi-2level
        /System/Library/Perl/5.18
        /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level
        /System/Library/Perl/Extras/5.18
    

    type git svn and everything works well!

    faner@MBP-FAN:~|⇒  git svn --version
    git-svn version 2.15.1 (Apple Git-101) (svn 1.9.7)
    

提交回复
热议问题