[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