tags:

views:

111

answers:

2

For the company I am contracted to, they have a central office in Denver Colorado then roving on-site teams in Canada, India, and Africa.

Regarding the people in Africa, well my understanding is that they all wake up at 3am everyday and start a svn update then go back to sleep. Its usually done by 7-8am. The problem is connectivity and its not going to change as they're literally in the middle of no where and connect to us via a satellite connection ( so probably a 1-5 second ping ).

We've evaluated mercury and git ( for speed & distributed natures) ) as alternatives, but for various reasons thats not going to work for the company. So a possible viable alternative would be to use svnsync as described here ->

http://svn.collab.net/repos/svn/trunk/notes/svnsync.txt Q: What if I want to check out from a mirror, but commit to the master?

I could setup a svn mirror server and ship it out to them and hopefully make their life easier. What am I missing here besides the need for them to constantly switch back and forth from the mirror and master repo's?

+1  A: 

I haven't used it, but this question mentions setting up a mirror as a write-through proxy. That sounds like what you want.

Don Kirkby
+3  A: 

I don't know what your "various reasons" were, but you really need a distributed version control system. Subversion (and CVS it was built to mimic) was just not built for this kind of usage.

If you really can't use mercurial or git, I'd suggest looking at one of the other distributed version control systems.

If there's some reason why you really have to stick to Subversion, you might try SVK. It is a distributed version control system built on top of Subversion.


Update:

In the comments, David suggested that the issue with Git was that he couldn't get it to work easily under Windows, particularly Vista.

I found this a bit odd, as I have never used Git on any platform other than Windows. For an easy install, I would highly suggest using Git Extensions. I've done the install on XP and Vista manually, but using the Git Extensions installer makes the process trivial, and adds some little nice goodies like explorer integration.

T.E.D.
I'm almost sorry to upvote this, because it's a "Don't put nails in walls" answer, but after having given this issue some thought, I really can't come to a different conclusion than you. +1
balpha
I evaluated Git and it works well on linux, but we have a odd collection of people running Vista, XP, and Apple. It was relatively easy to get Git working on the Apple machines, somewhat painful on XP, and I've yet to get Git to work on Vista.
David
git-svn can be used and git can be run as a subversion daemon. I'm not sure what the reasons are for not being able to use git, but I can tell you that remote development with a centralized system is extremely inefficient.
rado
let those who can't use git commit to a git subversion daemon, just like they use subversion
rado
That's rather odd, David. I've had it working on my Vista box at home without trouble for nearly a year now. You do know about Git Extensions ( http://gitextensions.sourceforge.net/ ), don't you? Also, this might help a bit: http://gitcasts.com/posts/git-on-windows
T.E.D.
@radorant I'm well aware that SVN is not suited for our needs, but it has been a step up from what was in use only a year ago. Still git-svn looks like a possibility.
David
@T.E.D. Yes I did know. For myself I had a slew of odd problems with various tools on Vista Ultimate and adding more details, there are a number of ranking/influential people in the company that would be passively/outright combative to any process changes that I can't prove run flawlessly. It was a nightmare getting LiquiBase adopted so to change the choice of VCS, even if its better and makes the team's productivity go up, is probably going to be just as hard.
David
Ahhh, so the issue is political. Why am I not surprised? Perhaps because we are still officially using SourceSafe for just that reason. Believe me, I feel your pain...and then some.
T.E.D.