[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