Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We have a trac server setup that works with the svn commits, so we can do things like "fixed #183" in the commit messages, and reference the changes involved. Right now I have eclipse with subclipse + trac plugins, and it works pretty well.

But I don't have internet all the time and it becomes very difficult to commit to an inaccessible svn server.

I would like to use some type of local repository for commits, and then push commits all at once, but individually to server. Changing svn / trac isn't an option at this time. Other developers can touch the svn server directly.

Is there a way to cache the commits locally, and then send them when I have internet again? Take in mind that I can't just do one big commit of all my changes because it makes it a nightmare since I can't selectively merge.

Basically is there a way to do this with git/bzr/mercurialand still use svn/trac as intended?

I'd be willing to do some scripting, but I don't know where to start.

share|improve this question

closed as off-topic by MichaelT, Scant Roger, Bart van Ingen Schenau Nov 29 '15 at 15:57

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to find or recommend tools, libraries, programming languages, resources (including books, blogs, tutorials, and examples), or projects to undertake are off-topic on Programmers as they attract opinionated answers that won't have lasting value to others. You may be able to get help in The Whiteboard, our chat room." – MichaelT, Scant Roger, Bart van Ingen Schenau
If this question can be reworded to fit the rules in the help center, please edit the question.

Can use Mercurial easily, check : – OneOfOne Nov 30 '10 at 1:15
This question appears to be off-topic because it is about a tool chain implementation / setup. – GlenH7 Aug 24 '13 at 18:46
When I originally wrote this question, I was under the impression that discussions about workflow belonged here - but apparently I was wrong. Here's a good review of how to decide if you should be asking on Stackoverflow or Programmers:… I am not sure of a good place to ask questions like above, perhaps with the temporal and subjective nature of the problem, a subreddit may be more relevant. – Ape-inago Dec 2 '15 at 14:58

git-svn does pretty much exactly what you want. I used to do this at a former place; they had SVN installed as source control, but the connection was unreliable so I tracked my changes locally in Git and only committed to the main repo when I had a hard line into the office server. It was really, REALLY useful having local branches, and merging my code in got much easier once I switched over.

The link up there is basically an online man page. If you decide to go this route, also check out the tutorials available online.

The only real complaint I had was that the initial checkout took a good 40 minutes; I went to grab a sandwich and a tea, and it had just finished when I got back. Committing and pushing thereafter was a breeze (actually much faster than the SVN process), but don't be surprised if that first pull takes a while.

share|improve this answer
do you know if this is compatible with any git plugins for eclipse? if i point eclipse at the local git repo, will it work like I expect? – Ape-inago Nov 30 '10 at 8:01
To be honest git is easiest to use from terminal – radekg Nov 30 '10 at 10:45

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