[OS X TeX] Version controls for LaTeX book production

Mark Eli Kalderon eli at markelikalderon.com
Mon Nov 12 01:24:46 EST 2007


On Nov 12 2007, at 01:03, David Oliver wrote:

> I'd welcome comments from book authors on this list with experience  
> with version controls, such as CVS,  for LaTeX produced books. Do  
> you find them useful? Do you find them useful even if you are the  
> only user or author accessing the material?  Recommendation for a  
> particular system?
>
> Thanks,
>
> David Oliver

Version control is the kind of thing that you don't realize you need  
until you start to using it. I find it helpful both in the  
collaborative and single user case.

There are various methods of backing up your work (such as the one  
George described) but they tend to be ad hoc and not fine grained  
enough. Version control provides you with a non ad hoc framework to  
preserve the history of the document. This can be useful, for example,  
if you wish you hadn't deleted that paragraph, or that digression that  
was excised later proves useful in another context. If the document is  
under version control, this material is recoverable. (If it was added  
and then deleted while in control of one of George's team, then it is  
lost forever.)

You shouldn't use CVS. Subversion was designed to fix many of its  
flaws. So for example, with Subversion and not CVS you can make atomic  
commits.

Which version control system you pick depends on your use case. There  
are two different models. In the centralized model the repository is  
kept on a server and people check out working copies where they modify  
files and commit back the changes. CVS and Subversion conform to the  
centralized model. In the distributed model, there is no central  
repository but changes can be passed from one repository to the next.  
Git and Mercurial conform to the decentralized model. The advantage of  
distributed models is that you don't have to be online to commit.  
Commits are faster and this encourages more fine grained commits.

I have been happy using Subversion. Although for my next large project  
I might try Mercurial.

Setting up a Subversion repository needn't be a pain. Depends on if  
you want web access. But even if you do, many companies provide  
subversion hosting where they have done the heavy lifting. Assembla <http://www.assembla.com/ 
 > offers subversion hosting for free.

The last issue of PracTeX <http://www.tug.org/pracjourn/> has a number  
of articles about using LaTeX with Subversion. You might consult these  
to get an idea of the workflow.

Good luck.

All the best, Mark




More information about the MacOSX-TeX mailing list