Which version control system do you use? svn or git or something else?
If you are using Git:
- as the idea of Git is to have multiple branches.. have you been able to do that for Framemaker files? and be able to merge later?
Since Adobe Framemaker files are binary files, how do you do diffs between versions?
Any feedback is much appreciated.
Moved you over to the Source Control forum
My understanding is that you cannot use Git or any other CM or DCM to merge or diff Frame (.fm) files because they are, as you say, binary files. Even though MIF files are text markup, I believe a CM/DCM can't be used to merge or diff them, either, because of the way the text strings are broken up and assigned identification numbers.
You can, however, use Frame's compare utility to see what's changed between different versions of a FM file. It's basically Track Changes.
Thank you and sorry about the late reply.
My original question of which version control system you use.. is not yet answered.
At my previous employer, we used Vasont, which can be integrated with FrameMaker. However, like any version control system, it cannot merge or diff the binary .fm files.
If branching, merging, or diffing files is what you want to do, you either have to save as MIF (which I believe introduces problems because of the identifiers MIF uses internally in the file, and also generates HUGE files) or move to SGML/XML. Vasont (and other CMS/DCMS) will keep all the versions of the files you upload to them, but if the files are binary files, the complete file is kept.
As far as I've been able to determine, and I cop to not being an expert, any version control system that does branching, merging, or diffing, requires that the files be text.
And I forget to include that Vasont and the other CMS/DCMS applications will allow you to retrieve earlier versions of your .fm files but, as I said, you won't be able to use them to determine what the differences are between versions.
Storing the previous versions and retrieving those as needed is possible in svn and Git also.
I am looking for something in which multiple people will be able to work on the same file and be able to merge..
or fork a branch for different versions and keep working on that branch independently and then merge with the master file when ready, etc.. I guess these are not possible whichever CMS we use, as Framemaker files are not flat like xml or text.
If you have a large number of documents and multiple people working in them, you might want to look into using Structured FrameMaker as a front-end for working in DITA coupled with one of the DCMSs that have Frame connectors. That will, I believe, allow you to do the branching, merging, and diffing you require because the files are all XML while giving you an interface you are comfortable with. Vasont is the one we used, but there are others. The connectors between Frame and Vasont allowed creation of maps and topics from within Frame, as well as checking them in and out of Vasont.
The big caveat is that it can take a long time to analyze and setup the EDDs and DTDs needed, and then another long time to convert your current documentation over to XML. I think my last place hired a consultant to do the analysis and set up, and I think he also provided a number of scripts that would convert a document into a map and the various topics (task, content, reference, etc). My in-house manager didn't want to go to DITA, though, so I did not get to spend a lot of time with the it.
I can ask about the scripts and where they got them, if you want.