1

We have several employees who work from home. The general method is they copy files from our internal server to their local machines. The problem is that they sometimes forget to put the source files back on the server, so the next employee has no idea the file on the server is not the most recent.

We use SVN for our small programming department but need something less globally robust that doesn't drastically change our large internal server structure. Would love to find something that would recognize who copied a file last with what date, or something where they could right-click in the folder to put their name, similar to checking out a library book.

If anyone has any suggestions (preferably free), I'm all ears.

1

2 Answers 2

0

You really don't want them bringing your files onto their machines for dev work and then sending back to you. You can end up with the classic "works on my dev machines but not -test or -staging" due to some little library or config tweak, etc.

So.. I say... Set up remote desktop to their desktop machines in the office. This is how we work from home (and two completely remote employees - they share a broom closet as their office) - access is via VPN (ssh w/ port forwarding on my Linux box), fire up RDP (xfreerdp on the Linux box) and connect to our internal hostname (me-idnum.corp.internal). Log in as normal, and other than telephone and the coffee machine, I am in the office. Connected to internal access only source repo/version control, using the supported and defined dev/test/build/etc environmnet(s), etc.

What makes this extremely nice is that the IDE and VCS combo (IBM tweaked versions of Eclipse and git) notifies all of us of check ins, what sub-area, who did them, what work item they are associated with, etc. which also helps solve your original issue.

0

You can simply set the SVN repository, or critical files within it, to "lock required" see the red book for info - which ends with:

[Tip] Users and administrators alike are encouraged to attach the svn:needs-lock property to any file that cannot be contextually merged. This is the primary technique for encouraging good locking habits and preventing wasted effort.

If your files aren't under version control, such as SVN, then simply put them into a repository.

You can also tell/train your developers that if they are working on critical areas then they should request a lock on those areas for the duration of their work.

Unlike older version control systems where once a file is locked only the admins can break the lock anybody with developer rights can usually break-lock but other developers can see who has the lock before they take a conscious decision to steal or break it.

(Suversion works on the assumption that developers are all grown-ups).

For users who are not developers I would recommend TortoiseSVN which integrates nicely with Windows File Explorer.

  • Free
  • Easy to use
  • You can use the file:/// protocol to access repositories that do not live on a web server.
  • Also available for OS-X & Linux

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.