On 29-Feb-08, at 1:07 PM, Christoph Held wrote:
Hi
rather than piggybacking on my other thread, I wanted to ask another question, namely which version control system to take for collaborative writing projects. I am basically starting afresh, so there is no code-base already in a certain repository format to be taken into account, and I am planning to use it for (collaborative) writing of text, mostly MultiMarkdown and maybe Latex if I get the hang of it.
Most people advocating Subversion emphasize that it is widely used and rather easy to learn. As I am not planning to maintain source code in it anyway, these points may not be very important.
It seems to me, the alternatives (Bazaar, Git, Mercurial to name a few I have read about) have matured quite a bit and I would not want to learn a specific system only to find out that previous users are migrating away from it for good reasons (that I may not see right now).
So: if the requirements were:
- up-to-date versioning
- easy install
- idiot friendly
- collaboration friendly (merging of textfiles having been altered
by several authors independently should be doable; see point 3 above) 5) offline work happens (branching and merging) 6) perhaps OS-independent (in case I can convince those other co- authors) 7) existence of a bundle providing integration into Textmate would be a huge plus (but consider that I may be satisfied with a very limited subset of what every versioning system offers already) 8) not sure if applicable: if a visualization tool such as Changes.app for diffing said textfiles be callable to compare versions that would be great, too. My experience with Filemerge et al, is limited because it does not seem to like UTF-8 very much (which I require).
what would you choose?
Thanks Christoph
Regardless of your chosen version control system [VCS] you need authoring practices that facilitate merging.
Without line breaks (as one previous poster mentioned) any overlapping edits will cause conflicts that most merge tools graphical or otherwise cannot handle. Most of these tools are designed to choose between a line or set of lines in your version or your peer's version.
If you choose to write MultiMarkdown without line breaks you will need to investigate merge tools that support merging multiple conflicts per line. Turning on "Ignore Whitespace" in most merge tools will help dramatically.
To be entirely honest I would recommend using a collaborative content authoring system rather than a general purpose VCS. I don't know of any offhand besides CeltX (http://www.celtx.com/) which is intended for collaborative screenwriting.