[Therion] Version Control Systems and Therion

Aaron Birenboim aaron at boim.com
Mon Nov 16 15:05:57 CET 2009


Martin Lüthi wrote:
> Hi again
> 
> At Sun, 15 Nov 2009 12:49:46 -0700,
> Aaron Birenboim wrote:
>>> For the purpose of tracking files and exchanging them with collegues, only
>>> decentralized VC makes sense (maybe with a central repository, but that is not
>>> important). CVS is dead, SVN is not very good for that purpose.
>> Huh?  That is the primary purpose of SVN, AFAIK.
> 
> SVN is great for centralized data repositories. I used to use it for several
> years for all my data, basically synchronizing laptop and desktop, and
> collaboration on projects. The major drawback (for me) is that you need a
> connection to the server with the central repository to commit changes.

This can be a good thing.  Easier for one person to set up
a server than many to establish peers.

> After having switched to git (any distributed VC such as hg or bzr will do), I
> commit every non-trivial editing/work step locally, and push to my repository
> (visible to my collaborators, and with daily backups) when I have reached a
> point where I think it's worth that the collaborators get it (usually daily).

Yes.  a drawback of SVN is the branching.
I'm sure it is easier in GIT, but learning how to use it is tricky.

The Suggested SVN method is to work in a branch, commit
frequently, then merge back to trunk when you are ready to share.
Agreed, this is a pain.  Inferior to CVS.  I'm glad to hear
that GIT addresses this.

> Work on new features is done in local branches (very cheap with git),
> collaborators usually pull my master branch, and I pull theirs.
> 
> Since there is no central repository, data exchange is less formal and
> easier. And (the killer argument for me): I have versioning on my local
> machine, without network connection (of course you can use CVS/RCS, but that
> does not make sense anymore given the new decentralized VC systems).

Yea.  I often use RCS for local versioning.
Then again, I usually have a network, and update repositories
often (in branches).

>> I do agree that CVS is dead.
>> It was adequate, but it is no longer being supported.
> 
>> SVN is still the most active Revision Control system out there.
>> I think you can set up an account on sourceforge.net for free.
>> I think their favorite system is SVN.
> 
> Submitting cave survey data to sourceforge.net is dangerous. Sourceforge is
> world-visible, and I shure don't want the local caving-hero (advertising his
> caving adventures on the net, without any awe or scientific interest) to know
> all the details about new discoveries which are visible in plans.

I wasn't aware survey data was part of this repository.
Perhaps I missed part of the conversation.

I was thinking about the application source.

>> They might provide Trac too, which is a nice ticket/bug tracker
>> which integrates with SVN.
> 
> Trac is nice, but I'm not shure how much we would need it for cave survey data
> (this is what we talk about, isn't it?).

Yea.  for survey data, somebody would need to provide SVN over SSH.

> Using git, for example, you can publish your repository on any web server
> space (also password protected), or any shared area on your computer, and just
> send the URL to your peers. From there they pull your changes, and you can
> pull theirs from either their repositories, or form a centralized space such
> as github.com (same cautions as about sourceforge.net apply).

Fair enough.  With those requirements, perhaps getting people to learn
GIT is worth the effort.

              aaron




More information about the Therion mailing list