bell notificationshomepageloginNewPostedit profile

Topic : What's the best version control system for a book writer? I'm a writer—no programming, only prose in text files, mostly in Emacs org-mode, some in markdown-mode. I want to implement a version - selfpublishingguru.com

10.05% popularity

I'm a writer—no programming, only prose in text files, mostly in Emacs org-mode, some in markdown-mode.

I want to implement a version control system for my writing projects.

I work with two types of text files:

drafts (textfile-v1.org, textfile-v2.org, etc)
research files (research-notes.org)

The latter, the research files, consist of hunks of text I have copy and pasted from the web. My workflow for the research files involves going through those files and deleting as I go. In other words, when I find a quote, I might copy it into a draft file, then delete the quote. This is my way of knowing what I have already processed or not. So that by the time my research file is blank, I know I'm done. When the research file is blank, I delete it so I know I'm done.

For both these uses—writing multiple drafts, and destroying research files as I go—it strikes me that having a version control system would be helpful.

I am NOT doing different branches as I go—just going forward as I make progress writing my book.

I'm using Aquamacs Emacs on OSX. Which version control system would you recommend, and how would I go about integrating it with my Emacs workflow?


Load Full (5)

Login to follow topic

More posts by @Shanna875

5 Comments

Sorted by latest first Latest Oldest Best

10% popularity

I've been using a fairly simple system to track changes in my writing for a couple of years. Secondly, I prefer a GUI front-end and a local archive to manage my working documents, although I also use the Cloud to store backups.
Like John Clayton, I use LaTex to write books, but I don't need a full functioning version control system, so I use an Open Source software, called Meld, a Linux-based Gnome2 diff and merge tool to track changes. In addition, Meld can be integrated with more expansive version control systems, such as cvs, subversion, bzr, darcs, mercurial, monotone, and tla. Download it at SourceForge.net and pair with the Linux distribution of your choice. I use Linux Mint today, but have used Ubuntu in the past, where Meld can be installed from both software centers. It works seamlessly in both.


Load Full (0)

10% popularity

If you are using mac, you can try Drawers, which is specially designed for writers, use it to manage versions and copies of works. This way you don’t have to keep duplicating and renaming your files.

Drawers in App Store


Load Full (0)

10% popularity

I have recently started writing with LaTeX in a version controlled git directory.

I use latexdiff to track changes between commits. This has the advantage of using an algorithm to track changes in a paragraph independent of line breaks, where for example only a single word changes, whereas git-diff would show the entire line/paragraph as having changed. I also use the LaTeX package gitinfo to embed git metadata into working documents. The hook requires manual configuration, but once you're up and running, it's nice to quickly verify the commit corresponding to the PDF you sent to someone for review, for example.

So, in total, the workflow consists of:

Git version control
LaTeX document preparation system

latexdiff package
gitinfo package

And I love it! It does everything I want it to do and the output is beautiful.

In the course of preparing a manuscript for submission to an academic journal, it may undergo all sorts of rearrangements, edits, expansions and contractions depending on the requirements of the journal. LaTeX is ideal for dealing with these sorts or rearrangements, especially when splitting the document into subdocuments by section (abstract.tex, results.tex, etc.). I tend to create a new branch for each journal submission. A document based on "my-dissertation-chapter" might have a new branch called "science" in which we reformat our article for Science magazine. After it was rejected, we created a new branch called "nature" to submit it to Nature instead, complete with the appropriate changes to the bibliography style, etc. This way, no informations gets lost. You can always go back to a commit/snapshot to recover whatever you might need. That beautiful paragraph you wrote but then deleted for space can be added back again when you resubmit to another journal with a more relaxed word count, etc.

The only issue is the learning curve for LaTeX and git to make all the parts work in concert. I'm not a developer. I don't even use vim. I prefer to use the TeXShop IDE provided in the MacTeX distribution of LaTeX to write and prepare my documents.


Load Full (0)

10% popularity

As a coder and blogger I am using Git for version control. Actually my whole blog is run on it and I can recommend it a lot. As you are on Mac and do handle text files mostly, I'd recommend using the great github mac UI ( mac.github.com ) it makes it really easy to use and you don't even need any github account - using this as a free backup and sharing tool is highly recommend as well.


Load Full (0)

10% popularity

There are a large number of version control systems out there, but I think that Git might be the best choice for you for a number of reasons. The biggest reason is that everything is in a single folder, you don't have to check things out to work on them or rebuild anything. You can just keep a full live copy on a pendrive and it just works. You also don't need to set up servers or magic paths.

In addition, you don't have to check anything out, you just commit it when you're done. You can also keep an offsite repository with very little work so you have that extra layer of protection. Another upshot of git is you can just backup the whole thing by just copying the root folder. Everything is copied over and will work just fine at it's new location.

I can't speak of how to integrate it into Emacs, but I suspect that part of the question can easy be answered at one of the other SE sites.


Load Full (0)

Back to top