tags:

views:

617

answers:

4

Recently developers highlighted that it is bit hard for them to keep track of which document has been updated. And they thus suggested that using SVN to keep track of document changes will be better as they will be able to know if document if being updated when doing checking out of the project.

But i also highlighted the several cons that may occur

  • Binary file using up alot of diskspace everytime word, excel document is commited
  • Checkout a project will take much more time although we can separate the documents into another project in the repository
  • It will take time to teach personnel on how to use SVN.

Another feature is that for these kind of functional documents, it should be locked while editing.

Anyone have any idea on how to go about it? Or what are the pros and cons to it. Please feel free to share with me.

Thanks alot in advance

+6  A: 

We use Subversion for document management at work. It works great.

  • Don't worry about the disk space. Revisions are stored compressed anyway.
  • Checking out a project with documentation doesn't take much more time than one without. Unless your documents are absolutely huge, this shouldn't be a problem.
  • Training time is a consideration. Fortunately, TortoiseSVN makes this easy.

To manage Word documents so they can only be edited by one person at a time, use the svn:needs-lock property. This will make the files appear as read-only on a normal checkout, and read-write when a developer has locked them for editing. After commit, the file will be unlocked and read-only again.

An additional benefit of TortoiseSVN is that it can do diffs of Word documents and present the differences in Word itself. This alone is a killer feature for me.

Greg Hewgill
A: 

I think this issue is a bit broader than just the "how to use SVN" aspect.

First of all, SVN might be the proper tool for technically oriented people but could be very cumbersome to artistic or management guys. I believe that all project related documentation should be kept in one place that is accessible by all participants.

Moreover, version control is not a substitute to a proper process and good communications. You need to find a way to communicate the changes and new requirements etc to all involved parties.

I think you might need a document management system. Alfresco or similar might be a good option.

kauppi
A: 

Subversion only stores the difference between revisions, which makes it very efficient. I'm not aware if this is true for binary files (such as Word or Excel files), however I believe it may be. If not, it may be to your advantage to use CSV files if possible instead of .XLS files and RTF files if possible instead of .DOC files.

Ryan McCue
A: 

Greg and kauppi both raise important issues here. Subversion is a fantastic tool but it's really not for everyone. I have been trying to get my development team to fully adopt it for over a year but still find myself talking them through the basics all too regularly.

If you've taken the time to understand and appreciate version control systems, they are one the tools you will never want to do without. For some people though, the process and dicipline of using them will seem like a hassle.

It comes back to communication and good teamworking. Sometimes these tools can help in that regard but alas, they can't solve all our problems.

Greg's suggestion of using svn:needs-lock as a way to control the editing of binary objects is a good one if your do end up going down this road.

Neil Albrock