We have a group at work that is responsible for editing our books. The source documents for these books are in Adobe FrameMaker, with a few Word documents and many images (TIFF, EPS, etc). For a few years now we’ve been storing these on a WebDAV server and using FrameMaker’s built in WebDAV support. This worked okay, but wasn’t revision control at all.
After lots of discussion about revision control software and Subversion specifically, we finally pulled the trigger and started moving over books from the WebDAV server to the a new Subversion repository. To start with we only did a small set of data, to get the editors used to using Subversion. I should say, getting used to using TortoiseSVN, because that is what they are all using. If you are a Windows user and need/want to use Subversion, I strongly recommend using TortoiseSVN. It makes so many things easy for the regular Windows user.
It was really great to see how quickly the editors took to Subversion/TortoiseSVN. These are computer users in the truest sense. They are not programmers or system administrators (the kind of folks you normally associate with revision control software). Since the migration of the first book I’ve moved some additional support material and two other books. Eventually the remaining 17 books and supporting files (lots of other files) will move over as well. To minimize the impact on updating the repository I import no more than one book per day.
Even though the conversion isn’t complete yet, I’m prepared to call this a success. The users have been so happy with Subversion/TortoiseSVN that they’d hang me at the suggestion of going back. It has been immensely satisfying to see this group of editors take to this so quickly.
Here are the numbers as they stand right now. The Subversion repository is just over 1.5GB. A working copy of the repository comes in at about 6GB. Based on the size of the remaining files in WebDAV, I expect that a working copy could grow by more that 35GB.
A brief note about branches and tags. Because these are books and work on them really only goes linearly, we’ve decided to not use branches at all. We will be making use of tags a fair bit though. We are still pinning down all of the milestones that will require a tag, but the obvious ones will likely be editions and printings of each book.
UPDATE : I forgot to mention some other numbers about the Subversion repository. Revision 1 was committed by me on 29 Nov 2006 @ 11:57am. Looking at the commit log right now we are at revision 414 as of 04 Jan 2007 @ 8:30am. Those editors have been busy 🙂
10 replies on “Subversion Success Story”
Did you know that Subversion can work as a WebDAV repository too? You can enable WebDAV to a repository and you’ll have automatic version control. Of course there’s no way to enter commit logs, and to grab an old version you still need a svn client, but I’ve used the svn over webDAV approach as a good way of offering revision control to business users. Add in a web viewer for SVN and you have the makings of a simple document management system.
I am aware of the ability to WebDAV using a Subversion back end. In this case though we really wanted a managed revision system. Commit logs and atomic commits were concepts that we spent sometime explanation. A couple of meetings to prep them and written documentation on common actions went a long way towards making for a smooth transition. After a couple of days the group was sold on it.
I’ve been looking for a success story using FrameMaker and SVN. It sounds like you’ve done a great job–congratulations!
I’d like to use SVN as a version control repository for FrameMaker with WebDAV. I’d also like to store smaller FrameMaker files (a few paragraphs each) and assemble them into larger FrameMaker documents (not books, for page flow reasons) as text sets, and manage it all with SVN.
Does this sound possible? If it is, where do I find help in pulling it together?
Tim-
Storing files in Subversion is easy enough. What we went with is to have all of the file management taken care of with Subversion (TortoiseSVN since all of the end users are on Windows) and all of the book/document management done in FrameMaker.
If that matches up to what you are trying to do then I don’t see why it wouldn’t work.
Joseph,
The way you are working with SVN, Can you track which files and versions in SVN wee used to make a given FrameMaker document?
TIm
TimP –
Sort of. Part of this move to Subversion prompted a discussion about tracking all of the files involved in a specific FrameMaker book. That is really something that FrameMaker would have to track. However, we been looking more closely at our directory structure, trying to organize it so that everything used for the book is under one directory. For example:
– Title
— Chapters
— Graphics
Then when a new edition comes out we tag in Subversion so that we can always easily go back and see what things looked like for that edition.
So the general answer to your question is no, Subversion isn’t aware of FrameMaker documents. But it is possible to organize your file structure so that using Subversion tags gives the equivalent of that feature.
Ohhh goody, someone else using Subversion!
Question: Do you use a locking method, or do you go down the compare route?
If the former, which fits a linear approach I guess, is there anyway to get FrameMaker to notify users when they try to OPEN a locked file? FM seems to let people open them but they only get the warning when they try and submit their changes.
Of course it might be the way we are working that is wrong, any advice is appreciated.
Gordon-
Right now each person works in different parts of the repository, so locking hasn’t been an issue. We have discussed it though.
If you need to do locking it would have to be done at the Subversion level, since FrameMaker won’t be aware of the fact that other people have copies of the repository checked out elsewhere.
More info on locking in Subversion is at:
http://svnbook.red-bean.com/en/1.2/svn.advanced.locking.html
Has anybody tried to use the TortoiseSVN diff feature on FrameMaker files? I’ve heard there’s a plug-in or something of the sort that makes this possible, but I haven’t been able to track it down.
For one of our clients, we are creating technical documents using FrameMaker 8 DITA feature. There will be hundreds of XML files. We have experience using SVN for version control using WebDAV. However, the client wants the XML repository to be MySQL while version control using SVN.
Anyone having experience integrating FrameMaker, SVN, and MySQL. The working environment is Unix/Linux.