Which protocol? svn:// or http(s)://?

http, protocols, svn

Solution

`http://` has a serious overhead, especially when dealing with thousands of small files. I used svn for a website that had around 50,000 icons, all saved in SVN. With HTTP, it took around 20 minutes to checkout. Once I switched to `svn://`, it took less than a minute. This is because with HTTP it's one new HTTP request per file.

`http://` however has the following big advantage: it usually goes through firewalls. For example, now that I switched to `svn://` I can no longer access my repository from my university because of their firewall.

Regarding the difference between using SSL/TLS or not, well, it's obvious: data is encrypted; however it's more difficult to set up.

Problem

There are four common protocols for network access of SVN. ``` svn://repos svn+ssh://repos https://repos http://repos ``` The Wikipedia page doesn't say much about the differences of the four different protocols. I've always preferred `svn://`, because it is the easiest to set up, but what is the difference and which one is "better"?

Original source