views:

169

answers:

4
+1  Q: 

SVN on Windows

Sorry in advance if this not 'SO'-ish enough---

I have a tech writing friend who is looking into version control for her word and visio documents. I advised her to check out TortioseSVN or whatever M$-flavor of Git is out there for local version control. However, she is concerned about what will happen if a file gets corrupted...I obviously don't use Windows, and have not ever had a problem with file corruption on my OS X or Linux machines. Has anyone ever experienced problems with using VC and having files get corrupted?

EDIT: I should clarify...I don't mean that the VC causes corruption, just wondering how VC apps handle file corruption.

+3  A: 

I'm not sure I'm following your concern.

If a file gets corrupted between a checkout and checkin, you will obviously see it in a diff and you'll still have a full history.

It's not SVN's job to wonder if your file is corrupted - and what's the definition of corruption as far as SVN is concerned?

There could be bugs specific to Windows though, but in my experience none of them corrupt files, at least I have never had one corrupted. I oftentimes experience post-commit problems that I have to solve with svn cleanup or deleting and re-checking out a directory though but, again, none of them are mutating.

All software has bugs - it's whether they are serious ones unpatched is the question. SVN quality control is quite good, but you never know.

By the way, I highly recommend SmartSVN for a client. It's far superior to Tortoise, though a bit slower and is written in Java. There is nothing that allows me to gain control of my repos better though - TortoiseSVN doesn't even compare.

Artem Russakovskii
A: 

Using SVN and regularly committing is a great way to mitigate file corruption - if your file gets corrupt (how though, I don't know), simply roll back to the last non-corrupt revision.

SVN doesn't work so well with binary files (like word docs) in that it saves a whole new copy rather than a delta, but it's not like you're talking large volumes of information or anything so that's fine.

SVN has a bit of a learning curve though so you'd probably have to set it up for her.

Luke Schafer
SVN always uses the same binary difference algorithm for all files, regardless of whether they are marked as binary or text.
Stephen C. Steel
...using rdiff in the backend I believe.
Artem Russakovskii
A: 

I've been using SVN for a couple of years and have never had a file corrupted. Just make a regular backup plan for the repository if worried about corruption. Also take a look at this blog http://newgeeks.blogspot.com/2006/08/word-document-management-using-svn.html

Rob Spieldenner
+1  A: 

I've had subversion corrupt repos on me. However, I should point out that this was a) in much earlier versions, and b) I was doing some rather, er., "interesting" administration things on the repos (trying to extract parts of the repos into new repos), so it could well have been my fault.

That said, I'd count it as pretty safe; I commit a lot of important things to my repos.

One thing to point out to her, though, is that if she's worried she can always keep multiple checkouts going as well. If she has a second checkout that she just updates once a day, after confirming that her main checkout is ok, should true disaster strike and corrupt both the repo and her working checkout, she's got a good copy of her document in the other checkout.

That said, daily backups of the repo are a good thing for many reasons.

I'd also like to note that, with a bit of training and support, non-techies usually have no trouble with Subversion. I've taught people who had trouble with Excel to use Subversion, and after a couple of weeks they were happily using it on their own.

Curt Sampson