

Unstoppable Subversion - nickb
http://blogs.open.collab.net/svn/2007/08/unstoppable-sub.html

======
mhartl
Subversion is a big improvement over CVS, but it still has some problems.
Perhaps the biggest is the difficulty of making branches, and keeping them in
sync with the trunk (which requires keeping track of revision numbers _by
hand_ in the comments). There have been many times I've wanted to make a
branch but just couldn't summon the mental energy to do it.

I've found darcs to be a significant improvement over Subversion. As one
example, here's how to make a branch using darcs:

$ cp -r my_proj_trunk my_proj_branch

Then running

$ darcs pull ../my_proj_trunk

in my_proj_branch keeps you in sync with the trunk.

~~~
jey
Mercurial is also nice, and works similarly. Plus it only requires Python, and
is thus easier to set up and use. <http://www.selenic.com/mercurial/>

------
rams
SVN has already lost mind share with the real hackers, the thought leaders
like Linus Torvalds - It's the new COBOL of the open source version systems.
The decentralized version control systems that are open source are really
pushing version control systems in new directions.They are addressing
important questions about the committer/non-committer divide, which SVN only
perpetuates (at least with open source projects).

BTW,should corporate spiels be posted here ? I agree that Collabnet deserves
some credit for sponsoring dev of SVN. But is this the appropriate forum for a
post like this ?

------
palish
My biggest beef with SVN is that I can't checkout from the repository and have
it automatically know when I delete or add files and directories. That is, I
have to remember to use 'svn rm' instead of just 'rm'.

Past that, it's great.

~~~
jey
That's a feature, not a bug.

I don't want all my random files like object files and temp files getting
added to the repository. You can implement this for yourself though, using the
output of "svn status".

~~~
palish
Sure, but I'd rather it reflect everything except directories I explicitly
ignore (you have to explicitly ignore directories anyway).

