Home
| Calendar
| Mail Lists
| List Archives
| Desktop SIG
| Hardware Hacking SIG
Wiki | Flickr | PicasaWeb | Video | Maps & Directions | Installfests | Keysignings Linux Cafe | Meeting Notes | Linux Links | Bling | About BLU |
Kent Borg wrote: > I like Subversion, but I have one serious gripe: it is too general > purpose. It will do everything you need for source code control, but > it doesn't have the *specific* facilities you need. That's true. Subversion is more like a file system with version control features, rather than a software revision control system that imposes a specific workflow. But the same can be said for other tools, including CVS. When I managed a project with CVS I found I needed to "wrap" it with my own conventions and standards for when to tag, how to name tags, as well as the process for branching and merging. CVS might have been slightly more developer centric, but it still requires that you either enforce your own workflow rules or layer tools on top of it. Other version control tools, like Aegis, operate at a higher level and impose a specific workflow, like mandating that your code pass unit tests before it can be committed to the trunk. > It is great to have a general purpose tool, but sometimes it is nice > to have a specialized tool (for, say, source code control), that leads > you in the right direction. A tool that anticipates the N things you > are likely to want to do, and provides a way to do those N things, is > very nice to have. Agreed. So what you want to do is find such a tool that layers on top of Subversion, or write your own. > Want to tag a version? There is no "tag" command. ... To tag > something you make a copy... > > So what is the difference between a tag and a branch and a copy? > Nothing, not as far as Subversion is concerned, it is all a matter of > how you use the two different copies. Want to start making changes to > your tag? Fine. Subversion will let you... Tagging is somewhat superfluous in Subversion, because unlike with CVS, all files in a repository share the same version number at any given commit point. You could implement immutable CVS-like tags in Subversion by externally keeping a log of version numbers and their symbolic name. I haven't looked into this, but I'm not sure why tagging wasn't implemented through some convention of setting attributes on the repository, given that Subversion has that ability. > The day a less elegant (i.e., more focused) source control tool comes > out that has the main features of Subversion I will be badly tempted > to change. If it also supports distributed repositories (which > Subversion does not), then I am probably wanting to move on fast. ... > ...I noticed someone on the Subversion mailing list mentioning SVK. > Ah, that might be what I want. > > Anyone have experience with SVK? A co-worker uses it and likes it. Here is a review (mentioned in this week's Debian Weekly News): http://changelog.complete.org/posts/528-Whose-Distributed-VCS-Is-The-Most-Distributed.html of several distributed version control systems. The author included SVN in the comparison, even though it isn't designed to be a distributed VCS, and as expected it didn't fare so well. The comments on the review mentioned SVK (http://svk.elixus.org/), which adds the distributed features to SVN. -Tom -- Tom Metro Venture Logic, Newton, MA, USA "Enterprise solutions through open source." Professional Profile: http://tmetro.venturelogic.com/ -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.
BLU is a member of BostonUserGroups | |
We also thank MIT for the use of their facilities. |