6 ms·
the achilles heel of svn is branches cost 100% of the branched repository. even an svn repo with one user can be prohibitively large. even in a corporate lan e
by rubyrescue 13y ago
the achilles heel of svn is branches cost 100% of the branched repository. even an svn repo with one user can be prohibitively large.
even in a corporate lan environment just pulling down an svn repository can take far too long
- huherto 13y agoWhy do you say branches are expensive? http://stackoverflow.com/questions/2041/how-do-i-create-a-branch-in-svn http://stackoverflow.com/questions/2041/how-do-i-create-a-br...
- zevyoura 13y agoYou have to maintain a full copy of the file tree locally per branch, it's a pain that gets worse as your project size grows. With git, switching between branches is near instantaneous.
- hp50g 13y agoIt is in svn as well (200mb wc switch = 4 seconds).
- zevyoura 13y agoI worked in an environment with a significantly larger repository, and svn switches were a constant source of frustration.
- banachtarski 13y agosorry but that is a very long time. Branching is something I do dozens, if not hundreds, of times a day (creating, checking out, deleting, etc). svn doesn't fit the sane modern workflow and everything it does can be done by git in a less painful manner. I think the only use case I can think of for svn is a very binary heavy repo that needs global locking.
- rubyrescue 13y ago500MB branch in git - git checkout -b mybranch master == 500MB 500MB branch in svn - svn copy ... == 1GB
- hp50g 13y agoBranches cost nothing in svn. I doubt you've used it. svn copy only appends a pointer back to the source rev, much as git does.
- rubyrescue 13y agoi used to use them extensively. unless something has radically changed, they cost nothing in the svn repository but when you pull them down, you have multiple copies on disk which takes double the space because of the way a branch appears like a separate folder in your working copy. am i missing something?
- hp50g 13y agoYour working copy has a URL. You can switch it to another URL (a branch/tag) using "svn switch". It only transfers the differences between the two. You can have two separate copies checked out, but you don't have to.
- huherto 13y agoIt is interesting, I have heard several times the comment about svn branches being expensive. But, that is not true, they are checking out the whole branches directory!
- huherto 13y agoAre you checking out all the branches? I mean the actual branches subdirectory? If you do that, it is going to be expensive. But you shouldn't do that. Just checkout the trunk and switch to branches as needed.