[OS X TeX] Version controls for LaTeX book production

Gary L. Gray gray at engr.psu.edu
Mon Nov 12 02:45:37 CET 2007

I disagree with George ... see below.

On Nov 11, 2007, at 8:20 PM, George Gratzer wrote:

> On Nov 11, 2007, at 7:03 PM, 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?
> NO
>> Do you find them useful even if you are the only user or author  
>> accessing the material?
> NO
>> Recommendation for a particular system?
> I think Time Machine is all you need.
> I think good backup is very important, version control?

Time Machine doesn't do some of the things that version control can do  
-- things that make version control *very* useful, even for a single  

I can say that, for the project we are working on, svn has been a  
wonderful tool and brings much peace of mind. Here are some details  
and how we use it.

The project involves two textbooks (sophomore-level engineering  
statics and dynamics for those who are familiar), both written  
entirely in LaTeX by three different authors. Each book is currently  
over 600 pages and will eventually be well over 700 pages. In  
addition, each has a substantial solutions manual that must be kept in  
sync with the books. Each solutions manual will probably be 1000+  
pages and there have been 6 or 7 student authors on the solutions  
manuals (as well as us). Finally, there are many custom LaTeX settings  
files that, at least initially, changed frequently. All of this is  
under version control with svn.

With multiple authors, svn gives them the ability to work on the same  
source files at the same time. In addition, since each time work is  
"committed" to the repository, it can (and should) have substantial  
comments associated with it. Authors can describe in detail what has  
changed or been added in that commit. This allows one to go back in  
time (much like Time Machine), but with the additional knowledge of  
*precisely* what is different at each time step rather than having to  
search through documents to know what is different. You can go back to  
previous versions of what you have written and bring it back to  
incorporate into what you have now or to replace what you have now.  
Unfortunately, Time Machine will only backup to one disk, so unless  
you choose just your manuscript to backup, you are going to be limited  
how far back you can go. In addition, Time Machine works best on local  
disks. svn keeps everything from day one of the project and it only  
controls what you tell it to. It also works nicely from *anywhere*. I  
have version control from home, Starbucks, my office, ..., anywhere I  
have a network connection.

I should add that svn can do even more than this, but just the above  
has made it worthwhile for us.

Now, with all this said, setting up an svn repository is a little  
work, but once it is done, it is easy to work with and there are a  
number of GUI tools for daily interaction that some people find to be  
useful. By the way, one nice surprise I found in Leopard is that it  
installs the latest version of svn.

So, even when (if?) I write a book on my own, I will definitely use  
svn to keep track of it. I still backup, in fact, I backup like crazy,  
but svn serves a purpose over and above that of good backups.

I hope this helps.

All the best,

More information about the macostex-archives mailing list