Setting up a distributed version control system

If you want to use versioning, stick to a distributed version control system. Distributed means that you dont’t have to install a central repository on a server, but that you can install it easily on your private computer.

There are several DVCS around: Bazaar, Mercurial and Git. What I am going to cover here, can be accomplished by each of them. In my examples I refer to Bazaar.

You will find notes on how to install the software on the homepage of each system. It is always very easy.

To use the DVCS open a terminal on Linux and Mac OS X or the command line interpreter under Windows and change into the directory where you want to write your novel. On Linux and Mac OS X you would type:

cd mygreatnovel

Then create a repository inside the folder by typing:

bzr init

Now start your novel by creating a text file inside the folder. We assume that you call it ›chapter1.txt‹. So open a text editor and write. When you’re finished, go back to the terminal or command line interpreter and control the status of your project by typing:

bzr status

This will give you something like this:

unknown:
 chapter1.txt

The file ›chapter1.txt is unknown to the system, so introduce the file to Bazaar by typing:

bzr add 

This will result in:

adding chapter1.txt

Now check the status again:

bzr status

Bazaar knows the file:

added:
 chapter1.txt

Now check in the file or commit your changes.

bzr commit

This command will pop up a small text editor (vi on Linux and Mac OS X by default) where you can make your comments. The window in the editor will look like this:

This is the outline of the first chapter.

-------------- This line and the following will be ignored --------------

added:
 chapter1.txt

Write your comment as shown in the example above the indicated line. After you save and quit the editor your changes will be checked in. Of course you are informed about this:

Committing to: /Users/juh/mygreatnovel/                                        
added chapter1.txt
Committed revision 1.

Now you can read the log of your version control system with:

bzr log

Bazaar shows you all informations:

------------------------------------------------------------
revno: 1
committer: Jan Ulrich Hasecke <jan.ulrich@hasecke.com>
branch nick: mygreatnovel
timestamp: Tue 2011-01-11 13:55:52 +0100
message:
 This is the outline of the first chapter.

Ok, nice feature, but can I use it with Word?

The short answer is no. You can only use a version control system for text files and word files are not text files but binary files. You cannot use a DVCS with LibreOffice (aka OpenOffice.org) neither, because Open Document files, which are used by LibreOffice, are compressed files, so they are not suitable for versioning too. But LibreOffice has a rudimental built-in version control system, which you might use.

But answering your question with a question: Why do you use Word, when you write text? You don’t need it. A simple text editor does the same job much better than Word.

Ok, I know that this is a No-Go for many writers, because they never used anything else than Word. But if you want to hear more about your alternatives, read on here.