Forum OpenACS Q&A: Alternate and Complimentary Version Control

I am exploring alternative and complimentary (to OpenACS CVS) source control systems and I stumbled upon SVK.

It's promising in that it can both be centralized (via subversion) and decentralized thru perl scripts (svk).

What's more it seems to use the same merge algorithms star-merge and cherry picking that gnu arch uses too.

http://ham.is-a-geek.com/~ham/svk-article/svk-part1.htm

Feel free to comment or post suggestions about the article.

Some realizations and discovereis AFTER the article was written.
- the article shows how to mirror the trunk of a central repository, it seems that it's also possible to mirror a branch of the central repository
- svk also seems to suport patches, almost similarly to Darcs minus the nifty emailing.

Collapse
Posted by Joe Cooper on
I've been using Subversion (the base of SVK), with only one irritating issue.

Package upgrades lead to the old version of the package being moved into a package-name.bak (.bak.2, .bak.3, etc.) directories. This move takes the .svn directory with it...so version control breaks everytime there is an upgraded package...subversion doesn't handle such things very gracefully, and refuses to update, commit, or anything else until such issues are resolved. I've had good luck copying the .svn directories into the package-name directory and sub-directories (yes, you have to get every subdirectory too), but it is rather a nuisance.

I'm not sure how to work around it, without removing packages from version control...which might be the right thing to do, and only add my own packages and customized packages to version control. Though that brings up the problem of not having an easy way to roll out a new server directly from the revision control, which is kind of a core part of how I've handled migrating my OpenACS instance from a devel server to a production server and then instantiating a new devel installation on the production machine. It's been very convenient to be able to check out the whole bundle of the site as it is right now and have a new instance running identical everything in just a few minutes.

Anyway, I imagine SVK has the same issue, since it uses Subversion for many of the low-level components of the system.

Collapse
Posted by Hamilton Chua on
Thanks for the reply.

As a side note I just found out that Wine is using SVK as well and they have a nice how to

http://wiki.winehq.com/SVK

Back to your reply.

You are correct SVK relies heavily on the underlying infrstructure of subversion but guess what svk does not rely on svn files

http://svk.elixus.org/?SVKAbout

Read the 2nd bullet.