Now there's an interesting use-case..

I'm new to git. I'm trying to develop a workflow for my creative writing. I 
> figure that other's must have came before me, so why reinvent the wheel?

Note that I don't write poetry myself.  I write every day on my worklog, but 
I just keep that in a text file, and paste it into a wiki at the end of each 

> *
> *
> *Stay out of the way/how often to commit.*
> I can use launchd on OS X to call a script to make commits periodically 
> and/or when a file changes. Is making a commit every time a file is saved 
> too much? (I tend to save a bunch.)

Well, Git can certainly handle a few hundred thousand commits without any 
trouble. But each commit should have a message, which says something about 
what was changed. Without this meta-information, revision history is kinda 


> *Should I have multiple git repositories or a single monolithic one?*
> I usually have several projects in the works, each individual piece (poem, 
> story) has it's own directory which I use to keep working drafts.
> I'd hate to have to remember to run git init, git add . , and setup a 
> laucnhd script, every time I start a new poem, but I would also hate to be 
> overwhelmed by navigating a huge repository.

The Git way is to have a repo for each project. If you're writing a book, 
that would be one repo. Writing a poem in isolation, that's one repo. There 
are tools and scripts around that can help you keep multiple repos in check. 
Here's a rough example <>. Products like 
Tower <> are also good (I'm sure there are good 
alternatives for Windows and Linux too).


> *Is it possible to save out multiple versions of a single file? (easily?)*
> I often need to open three, four, or more versions of a file. And I 
> occasionally need to print several old versions. Can git do this? I know I 
> can use diff to compare two versions, and I can open a particular version, 
> is it possible to open/save the last n versions of a file?

Git can do everything :) Seriously though, you can print the contents of an 
older version using git show:

> git show HEAD^:foo.txt   (show previous version of foo.txt)
> git show HEAD^^:foo.txt  (show previous previous version of foo.txt)
> git show HEAD~20:foo.txt (show foo.txt 20 versions ago)
> git show 3692c6:foo.txt  (show foo.txt at revision 3692c6, which is a 
commit identifier from git log)
Pipe the result into a file for saving it.

*Is git for me?*
> Am I running into a fundamental incompatibility problem? Do I just need to 
> learn more about git? What are some good resources to look at—I'm 
> overwhelmed by the sheer number of git articles online.

First question: Well, I don't know. Personally, I would probably rather work 
on an OpenOffice document (I think these have some internal revision 
control) in a network drive on Dropbox.

2nd: I'm not sure. The best way is to just try it, and then post back here 
when you run into concrete problems.

Third question: If I would have to point at one resource.. 

You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To post to this group, send email to
To unsubscribe from this group, send email to
For more options, visit this group at

Reply via email to