[TxMt] which version control system to take?

Phil Schumm pschumm at uchicago.edu
Sat Mar 1 16:12:13 UTC 2008


On Mar 1, 2008, at 6:05 AM, Christoph Held wrote:
> How linear is a series of versions? For actual writing (as opposed  
> to coding perhaps) it would be absolute bliss to be able to decide  
> that you would want to return to the wording of the discussion  
> three versions previously *without* discarding the work you have  
> done meanwhile.
>
> Is that possible and how do the usual suspects differ with respect  
> to this?


Well, once everything is in a repository, then (in principle)  
anything can be reverted.  However, trawling back through the history  
for small changes that were committed together with many others can  
be difficult.  And, at least with Subversion, you can only  
automatically revert an entire changeset's changes for a given file  
(reverting only part of a changeset for a given file requires a bit  
of manual effort).  If I am wrong on this, please correct me.

Two things can help with this, especially on writing projects.   
First, you can commit frequently, and organize each commit so that it  
is making a single, well-defined change (e.g., "revise abstract to  
meet word limit" or "refer to this SNP by a different name").  This  
will make it easier to browse through the change log and revert  
specific changes. Second, if I'm struggling with the wording for a  
particular paragraph, say, I'll usually leave the original version as  
a comment in the file, adjacent to the newly proposed version.  This  
makes it easy to see what the changes were, and to combine elements  
of both versions at some point in the future.  Of course, you could  
take this reasoning to the extreme, and just preserve all changes in  
one, large text file.  Clearly, that would not be helpful; moreover,  
this is what your VCS should be doing for you.  Thus, you probably  
will want to use this technique sparingly.


-- Phil




More information about the textmate mailing list