TechWhirl (TECHWR-L) is a resource for technical writing and technical communications professionals of all experience levels and in all industries to share their experiences and acquire information.
For two decades, technical communicators have turned to TechWhirl to ask and answer questions about the always-changing world of technical communications, such as tools, skills, career paths, methodologies, and emerging industries. The TechWhirl Archives and magazine, created for, by and about technical writers, offer a wealth of knowledge to everyone with an interest in any aspect of technical communications.
Re: What's a good versioning system for Office documents?
Subject:Re: What's a good versioning system for Office documents? From:"Paul Filby" <filbyp -at- googlemail -dot- com> To:"Edgar D' Souza" <edgar -dot- b -dot- dsouza -at- gmail -dot- com> Date:Tue, 11 Jul 2006 23:01:51 +0100
Hi Edgar,
It sounds as though your requirement is very similar to the current setup
where I work. I'm part of a team of five Tech Authors, and we use
Microsoft's Visual Source Safe (VSS) to manage our documents. I've commented
on each of your original points below:
0) VSS will work fine with MS Office documents.
1) VSS uses a reverse-delta algorithm to store changes to documents. That
is, the latest version of any given document is stored in its entirety, and
all previous versions are stored as diffs. This is the case irrespective of
whether VSS is working with binary or plain-text files. By storing diffs in
this way, the latest version of a document is always available very quickly
-- it may take a little longer to pull back early versions of a document
that's had many revisions -- and of course you get considerable space
savings over storing a complete copy of every version of a file (be it a
word document, graphic, or whatever). I should point out that, for binary
files at least, you can't use VSS to directly show the actual differences
between two versions of the same file (though I believe you can for
plain-text files). We use FrameMaker as our main authoring tool, so are in a
similar situation to you re. the binary format (.fm and .book -- though
Frame does also support a text file format -- .mif).
2) I think I've already covered this point, above.
3) No problems storing images etc. that are linked into other documents. All
our FrameMaker docs use linked graphics.
4) Theoretically, VSS doesn't have a size limit for the databases it can
handle. That's because a VSS "database" is really just a filestore. The
brains of VSS is all on the client, so you're limited only by the storage
available on your server. Realistically, you'd probably not want to exceed
5GB or so (that's what Microsoft recommend), as certain operations might
start to take a long time to run, and maintenance becomes a pain. The size
requirements you quote will be no problem.
5) I don't know how much VSS costs, or even whether it can be purchased
separately from Visual Studio (though I would assume it can be). We use
version 6, and it was bundled with Visual Studio.
6) No probs here.
In your next post, you talk mainly about document control (checking in and
out; making sure a worker who works from home can "take control" of a file;
handling multi-doc manuals etc.). VSS should do everything you need here.
The usual source control mechanisms (check-in, check-out, view, get, etc.)
are all supported, along with other more complex actions that probably
aren't necessary or useful in most Technical Publications departments
(share, branch, merge, etc.). As we use Frame's "book" feature all the time
(essentially the same as what you're talking about re. using multi-chapter
files to build a single manual), I can also confirm that VSS's "project"
architecture handles this situation very well. A VSS project is really just
like a folder in standard directory tree -- you can define any number of
projects, with any given hierarchical structure.
VSS has many other useful tools too. Any project (and all its contents) can
be assigned a "label" (such as, "draft2") at any time. This is useful is you
need to go back and recover the source for a manual (that is composed of
many composite document and graphics files) in a particular state -- all
with a couple of clicks. You can also add a comment any time you check-in a
document (and probably at check-out too -- we don't use this feature much,
but I can see it being useful in some circumstances). And, of course, you
can examine the version history for any document, and see who worked on it
and when, as well as being able to pull-back the actual document at that
stage in its history.
The main thing I haven't discussed here, is viewing "diffs" of document
versions. As I stated earlier, VSS won't do this for binary files. The way I
see it, VSS seems like a great source control tool -- when it comes to
visualising differences between files (other than plain text), it's up to
the application you authored the document in to do that. So, if I want to
compare two versions of a FrameMaker book, I simply have to "get" the two
versions from VSS (easy, if I've labelled them) to my local PC, then run
FrameMaker's book-compare utility (not the best, but better than nothing).
If I was working with MSWord docs, then I guess Word's document compare
function would be the tool to use.
To do this within the source control system, I suspect you'd be looking at
using a full-blown document management system, preferably storing data in an
open format, perhaps XML. However, for what we do, VSS -- along with
external apps. to produce visible diff files -- does the job admirably.
I'd be interested to know of any other common source control systems that
Tech Author teams tend to use. I know of other teams that use VSS, but info.
on any other tools that do the job would be welcome.
WebWorks ePublisher Pro for Word features support for every major Help
format plus PDF, HTML and more. Flexible, precise, and efficient content
delivery. Try it today!. http://www.webworks.com/techwr-l
Doc-To-Help includes a one-click RoboHelp project converter. It's that easy. Watch the demo at http://www.DocToHelp.com/TechwrlList