Why does Atlassian advertise sourcetree as a subversion client when it is not one?

Sourcetree does not support svn natively. It is a GIT-SVN bridge frontend at best. I wasted a lot of time trying to get it to work with my already checked out svn working copy.

3 answers

I've only wasted about 15 minutes so far, but I'm in the same boat.

The intention wasn't to mislead, simply to illustrate the option - you can indeed use SourceTree with Subversion (and many people do), just not with local svn checkouts. The git-svn / hgsubversion local repos are more powerful than the equivalent svn checkout anyway. But we'll look at clarifying this.

Will you also look at clarifying the undocumented dependencies? To get SourceTree to even recognize an SVN server, I had to install Subversion separately, install Homebrew and its Subversion Python bindings, and install the subvertpy package... all manually, and all undocumented.

I'd like to know what server folder structure is required. Is is the standard (trunk, branches, tags)? Is this changeable? If I have a fresh SVN repo can SourceTree create that base folder structure?

If trunk/branches/tags exist as a direct subfolder of the URL you pass then it will be detected and used as such, otherwise it's assumed that you're just cloning a single branch.

SourceTree can't create that svn structure for you, it has to exist already. The interoperation with Subversion is limited by git-svn / hgsubversion, which is a translation layer and designed to interoperate with existing repos, not to set them up. The merge data that git / hg use is more sophisticated than Subversion and cannot be translated, which is why you're advised to simply track SVN branches rather than create them or merge them, which should still be done with a native svn tool.

Most people use git-svn and hgsubversion either only for a relatively short time before migrating fully to git or hg, or for external projects which they use fairly infrequently. The translation layer is good, but it's not designed to be a first-party option; if you're still 100% Subversion you'd be better with a dedicated Subversion tool; the branch / merge data in git / hg is more sophisticated than Subversion and cannot be losslessly translated, so you're meant to use it to maintain / track svn but not create brand new structures or do lots of merging on the svn side. As a long time CVS and SVN user myself before moving to DVCS, I couldn't imagine going back to SVN now and only use svn repos for old legacy projects or dependencies which haven't moved yet, and for this, git-svn and hgsubversion via ST is extremely useful (I can still use one tool to do everything). But that's because I don't create any new Subversion projects any more.

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 ...

246 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