A question about corporate file sharing.
January 14, 2009 8:19 AM   Subscribe

My friend runs a small company that is growing. They're starting to run into file-sharing problems (versioning, archiving, etc.). Laboring under the bizarre belief that I know something about this stuff, my friend has asked for my help.

The company used to be two guys in Europe. Now it's about fifteen people in several countries (and continents), all collaborating. When it was just the two guys, it was easy for them to share files. Now it's getting complicated. They need a file and discover it's only on one guy's hard drive. and that guy is asleep (time-zone issues). Or there are several versions of a file floating around, and no one is sure which one is the most recent one.

I know about (and have used) svn and git, but I'm curious if there are any books or websites that go into details about this sort of collaboration and list good tools and techniques.

Note: this is a design shop, so many of the files are binary (Flash and PSD). This makes the svn thing a little tricky if there are conflicts. Or does it?

In any case, I'd like a resource or resources that gives suggestions for archiving (they have an svn, but it's getting huge), file sharing, naming conventions, etc.

They are mostly mac-based, but they have a few PCs on their network.
posted by grumblebee to Computers & Internet (12 answers total) 2 users marked this as a favorite
Response by poster: Good questions, odinsdream. I think they are flexible in terms of hosting. I would like to suggest a solution and let them wrestle with whether or not they can afford it. They are cost conscious but might spring for something that seems important.

Re the binary issue: say the svn reports a conflict on a file that's been worked on by person A in Germany and person B in Japan. How do they resolve this? I'm used to SVN from a programmer's perspective, where you can just look inside a TEXT file and easily see what's up.

My guess is that there's no easy solution. The two people need to get on the phone and talk through whatever is different about the two files.

This is the sort of issue that is coming up for them all the time. A client wants a file, and no one can figure out which version is the most recent -- usually because there is no most recent version that has all the changes in it. Person A has some of the most recent changes in his file; person B has some other changes in HIS file.

I'm looking for solutions to avoid this problem.
posted by grumblebee at 8:42 AM on January 14, 2009

Adobe has a product specifically geared to doing this for its various types of files, Adobe Version Cue.
posted by adipocere at 8:43 AM on January 14, 2009

Response by poster: I think part of the problem is that svn does not include file locking (or does it?). I've run into problems because of this, but they've been easy to solve, because I've just been working with text files.

But I can see how this could be a much bigger problem with binary files. For instance, at 3pm, Fred starts editing a PSD that's in the svn. At 3:10, Mary starts editing the same files. She does not have Fred's changes, because Fred is still working and hasn't updated the svn. Mary doesn't know that Fred is working on the file, because she's in another country and the file isn't locked.

At around 4pm, they both update and get conflicts. This is a multi-layered PSD file, and it's very difficult to track down the differences.
posted by grumblebee at 8:48 AM on January 14, 2009

Response by poster: So would the recommendation by to run both svn (for text files) and Adobe Version Cue for the PSDs and Flas?

I guess I'm thinking that this must be a common situation and there must be tried and true solutions that are a bit more detailed then "use a svn."
posted by grumblebee at 8:49 AM on January 14, 2009

I'm just throwing out Version Cue as something I've heard about. I personally kill the process every time I come across it. It's just something to look into, since what little I know about it suggests that it is designed to address some of the issues you bring up and specific file types.

At fifteen people, this is starting to sound a little bit like "time for an IT person."

Oh, and don't let anyone try to talk you into using SharePoint for this. Gah. *curls up, weeping*
posted by adipocere at 8:58 AM on January 14, 2009

I've been looking for something similar. I'm a grad student working on a research project where 6 people are in one country, and 3 are in another with different time zones. We have a mixture of file types and data. I tried ~10 different web-based project management software and so far my preferred is http://www.centraldesktop.com/

You can sign up for a free trial on this one (and all the others I tried). I have not tried to push any of these to the limits with huge files etc. but what I do like about this one, is that you can share files, blog, wiki, store basic databases and basic versioning.
posted by a womble is an active kind of sloth at 9:39 AM on January 14, 2009

Best answer: Since people have mentioned locking, but I haven't seen anyone post a definitive answer on whether SVN supports it, I will mention than Subversion DOES support file locking.
posted by Emanuel at 9:41 AM on January 14, 2009 [1 favorite]

As a lay person with a distributed team working on mostly text/ MS Office documents we have found dropbox very useful. Saves previous versions silently and manages conflicts. I dont know if it works for you. You can try at www.getdropbox.com.
posted by london302 at 9:41 AM on January 14, 2009

They can use subversion behind apache with webdav, then windows, mac and linux users can mount the repositores as drives. Then they might actually use it.
a how to on setting up svn, apache and webdav
wikipedia on webdav

Something else of interest is that most of these repository systems like svn can be set up to send email when a new version is checked in. That might help keep people reminded of who is working on what.
posted by bdc34 at 11:21 AM on January 14, 2009

Dreamhost.com makes it pretty easy and cheap to setup a SVN server via the interweb.
posted by blue_beetle at 1:31 PM on January 14, 2009

You might also want to look into distributed version control, but you might also want to run away screaming. Your choice.
posted by blue_beetle at 1:32 PM on January 14, 2009

You could just use Basecamp.

It's a lot simpler and easy to use that Git or Subversion, and the 'Files' feature has versioning with timestamps and user identification. Give the free version a try and see for yourself. I've used it for three years without a problem.
posted by Cobalt at 2:51 PM on January 14, 2009

« Older Help me be employed in Cleveland   |   A book on the history and interpretation of... Newer »
This thread is closed to new comments.