Sourcetree git svn not working on OS X Mavericks?

Pulling in a git svn repository gives following error:

git -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sourcetree svn rebase

Can't locate SVN/Core.pm in @INC (@INC contains: /usr/local/git/lib/perl5/site_perl /Applications/SourceTree.app/Contents/Resources/git_local/lib/perl5/site_perl /Library/Perl/5.16/darwin-thread-multi-2level /Library/Perl/5.16 /Network/Library/Perl/5.16/darwin-thread-multi-2level /Network/Library/Perl/5.16 /Library/Perl/Updates/5.16.2 /System/Library/Perl/5.16/darwin-thread-multi-2level /System/Library/Perl/5.16 /System/Library/Perl/Extras/5.16/darwin-thread-multi-2level /System/Library/Perl/Extras/5.16 .) at /Applications/SourceTree.app/Contents/Resources/git_local/lib/perl5/site_perl/Git/SVN/Editor.pm line 5.

BEGIN failed--compilation aborted at /Applications/SourceTree.app/Contents/Resources/git_local/lib/perl5/site_perl/Git/SVN/Editor.pm line 5.

Compilation failed in require at /Applications/SourceTree.app/Contents/Resources/git_local/libexec/git-core/git-svn line 81.

BEGIN failed--compilation aborted at /Applications/SourceTree.app/Contents/Resources/git_local/libexec/git-core/git-svn line 81.

Completed with errors, see above

In terminal git svn works just fine. Also I reinstalled Sourcetree but it doesn't help.

5 answers

1 accepted

Following that article and using system git in Sourcetree solved that for me:

blog.victorquinn.com/fix-git-svn-in-mountain-lion

This worked for me too, thank you! Do you have any idea why I might be having branching issues:

git -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sourcetree checkout -b http --track http 
fatal: Cannot setup tracking information; starting point 'http' is not a branch.
Completed with errors, see above

I was able get it working without changing from SourceTree's included git by making the links in slightly different locations. The commands I used were:

mkdir -p /usr/local/lib/perl5/site_perl
cd /usr/local/lib/perl5/site_perl
sudo ln -s /Applications/Xcode.app/Contents/Developer/Library/Perl/5.16/darwin-thread-multi-2level/SVN SVN
sudo ln -s /Applications/Xcode.app/Contents/Developer/Library/Perl/5.16/darwin-thread-multi-2level/auto/ auto

Depending on your treatment of /usr/local, you may not need the sudo.

Thank you!! This was the fix that worked for me.

I had to use this method, since the link @Andreas Hoffmann only linked the /auto/SVN, and I also need the /SVN to get it to work with Sourcetree 2.0.2 on Yosemite.

Hello Gents,

 

I´m working with the current version of Mavericks as well as XCODE and SourceTree.

After I have installed all packages I have had add the git folder and afterwards I have set the symlinks.

 

But if I try to clone a repository, I got the following message:

 

'tempfile' can't be called as a method at /Applications/SourceTree.app/Contents/Resources/git_local/lib/perl5/site_perl/Git.pm line 1042.

 

Can anybody help?

 

Cheers,

Pierre

I was able to get it working by using the blog post from @Andreas, with one additional link to the git share folder to eliminate all errors/warnings. The benefit of using the symbolic links as outlined in the blog post is that it keeps all the links specific to the 5.16 version of Perl, instead of taking over your default /usr/local/ install.

Unfortunately, it didn't work to link to the git included in SourceTree by just linking /usr/local/git to /Applications/SourceTree.app/Contents/Resources/git_local. It doesn't include Perl 5.16.

sudo mkdir -p /usr/local/git
sudo ln -s /Applications/SourceTree.app/Contents/Resources/git_local/share /usr/local/git/share
sudo ln -s /Applications/Xcode.app/Contents/Developer/Library/Perl/5.16/darwin-thread-multi-2level/SVN /System/Library/Perl/Extras/5.16/SVN
sudo ln -s /Applications/Xcode.app/Contents/Developer/Library/Perl/5.16/darwin-thread-multi-2level/auto/SVN/ /System/Library/Perl/Extras/5.16/auto/SVN

 

Update as of Mac OS 10.10.2, Xcode 6.2, Perl 5.18, SourceTree 2.0.5.2:

Xcode 6.2 now includes Perl 5.18:

sudo mkdir -p /usr/local/git
sudo ln -s /Applications/SourceTree.app/Contents/Resources/git_local/share /usr/local/git/share
sudo ln -s /Applications/Xcode.app/Contents/Developer/Library/Perl/5.18/darwin-thread-multi-2level/SVN /System/Library/Perl/Extras/5.18/SVN
sudo ln -s /Applications/Xcode.app/Contents/Developer/Library/Perl/5.18/darwin-thread-multi-2level/auto/SVN/ /System/Library/Perl/Extras/5.18/auto/SVN

 

 

 

Hi everybody,

I have the same problem as Pierre, OS 10.10 and current versions of Xcode and SourceTree.

'tempfile' can't be called as a method at /usr/local/git/lib/perl5/site_perl/Git.pm line 1094.

 

Can anybody help?

Thanks, Dietmar

Command line from Terminal works... :(

Hi Dietmar, Did you get any solution ? I am getting same error and command line works for me too.

Suggest an answer

Log in or Join to answer
Community showcase
Brian Ganninger
Published Jan 23, 2018 in Sourcetree

Tip from the team: workflow and keyboard shortcuts

Supported Platforms macOS Sourcetree has a lot to offer and, like many developer tools, finding and using it all can be a challenge, especially for a new user. Everyone might not love ...

238 views 0 3
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot