[TxMt] PracTex journal tips, revision control and academic workflow
Charilaos Skiadas
cskiadas at gmail.com
Mon Feb 18 14:11:12 UTC 2008
Hi Prion,
On Feb 18, 2008, at 8:11 AM, Christoph Held wrote:
> Hello all,
>
> perhaps this is a bit off-topic so please bear with me. Some
> regulars on this forum were instrumental in developing these
> thougths though which is what encouraed me to post here.
>
> I am a researcher doing some of my writing in Multimarkdown text
> files and put my work on a portable harddrive which I carry home
> after work, synchronize to my home computer and carry on working
> there. Ditto for the reverse.
>
> After reading a series of inspiring articles about how to use
> subversion repositories for academic writers over on Practex
> journal I am beginning to think that I could make better use of my
> resources. Here is what I plan to do:
I actually suspect some of these articles were written by TextMate
users ;). I'm assuming you were looking at articles here: http://
www.tug.org/pracjourn/2007-3/index.html
> Go to work, read, write, take notes etc. Some of this takes place
> in textfiles, some will reside XML files (Tinderbox), and some also
> in binary files at the end of the day. I have access to a server
> that I would like to push all my changes and new data to and then
> go home. From home, I would like to pull all changes to my home
> computer and carry on.
>
> 1) Will the version control systems compare whole lines or do some
> kind of document comparison trying to find identical blocks
> regardless of (soft) line breaks?
Version control systems tend to compare lines. In theory, you can
provide your own diff command, for instance wdiff. It takes a bit of
tinkering, but I think is possible in theory.
For LaTeX documents at least, there is the wonderful latexdiff
package, which will effectively do word-by-word comparison and
produce a pdf file for you that shows the differences that have
occurred in the document in a wonderful way, and I think it can be
instructed to skip spaces. But by default all these version control
systems look at lines. Is that so much of a problem however?
http://www.ctan.org/tex-archive/support/latexdiff/
> 2) what I don't know is how well this system will work for binary
> files, e.g. Aperture libraries, Word files from colleagues etc.
> Ideally, I'd like to just send the changed bits of files, not all
> files that have changed to save bandwith and time. If something
> went wrong I would want to go back in time.
> I am working on a localized system (meaning non-US) in case that is
> presenting a problem.
No, I don't see how it could do that. It would need to know the
details of the binary encoding used by all programs that have existed
and will exist in the future. That's the problem with binary files
(other than the fact that you need a specific program to be able to
read them of course). You can still go back in time of course, that's
the "version" part of version control. So even in that case it helps.
I don't know if Word has some way of comparing documents, but you
could in theory, and in practice, have it compare a word document
file now with its version 2-3 revisions in the past.
Simply put, version control keeps the history of your project, with
all states of the files along the way (that you chose to keep and
commit, that is).
> I am not afraid of the command line but I have no experience with
> version control whatsoever because I was left with the impression
> that it was of little use outside source code development. Although
> I do some reading about subversion, git, mercurial, bazaar etc I
> need some guidance if I am barking up the right tree in the first
> place.
I am working on a book currently, in LaTeX, and keep it on
subversion. It helps me keep track of what I have changed when and
why, and I wouldn't give that up for nothing in the world. Once you
set it up, you don't really have to leave TextMate's world.
> I would greatly appreaciate your thoughts
> Prion
Hope this helps,
Haris Skiadas
Department of Mathematics and Computer Science
Hanover College
More information about the textmate
mailing list