Hide my SVK addiction
April 6, 2008 8:55 AM   Subscribe

I would like to use SVK in a manner that's invisible to my svn-using co-workers. Naturally, there are compllications.

First, what I'd like to do:

I want to have an svk mirror of my three SVN source code repositories set up in such a way that I can do everything that svk lets me do (mainly I want to be able to commit intermediate work without dealing with our review process until it's ready to be pushed to the core product's source tree)

Complicating this is that we have a change review tool that is based on svn, and therefore assumes a simple working-copy <> repository model. This tools is not practically modifiable beyond very basic changes, and in particular it's very sensitive to the command line output of the version control command being used.

Is there any way I can make these two worlds work together?

Please keep in mind, by the way, that I'm very new to DVCS, but I'm fairly familiar with svn itself. If there's svn-trickery required, I am probably up to that but you might have to hand-hold me through the svk parts.
posted by ChrisR to Computers & Internet (4 answers total) 1 user marked this as a favorite
What's the review tool? Is it an in-house product? What are the specific problems / error messages you're running into?

You can use Pastie to save some sample error messages to show us to help get you going.
posted by voidcontext at 9:36 AM on April 6, 2008

Well, really, for intermediate work, you don't need to use svk or anything different from svn. You *should* be able to get a private branch somewhere deep in the tree where you can play around with stuff and not bug anyone else ... nor trigger any code review processes. If you don't, y'all are seriously underusing the capabilities of svn.

And if your SVN admins won't allow you to do that, why don't you just run svnserv locally on your machine and keep your intermediate repositories there? Then you can just use svn merge to move your changes from your local svn url to your workplace svn url. (This works best if you can do it on command line ... GUIs get clumsy when you're trying to do something like this.)
posted by SpecialK at 10:13 AM on April 6, 2008

A bit off-topic, but may I suggest git-svn? You can commit, branch, merge, all that crap in your git repo and then when you're happy, push all your commits upstream to the SVN server with a single command.
posted by thedaniel at 11:29 AM on April 6, 2008

Response by poster: The issue is the push to the upstream server; that push _must_ happen under the auspices of the review tool. That's the real key. What I was hoping for was a nice, tidy way to tell a working copy to work against my svk mirror all the time, except when I want to commit for real, at which point it should look (to svn, not to svk) like it's just a delta against the real svn repository.

This isn't a problem specifically with the svn repository admin, since, well, that's me ;) I would just like to be able to work my own process into the middle here, and svk seems like a good fit. I can (and have) created personal branches already -- when I converted from CVS I laid the repository out in such a way as to make that easy to do -- and that's one route I can easily proceed along if my half-imagined idea of using svk doesn't work out.

voidcontext: I do not have error messages to report; this is not a tool problem, it's a process issue.

thedaniel: you're correct, it's off-topic. I'm not interested in wading into the war over which dvcs tool is best. That being said, the process you're describing is the one I'd like to have, just with that damnable push step taken care of :)
posted by ChrisR at 3:32 PM on April 6, 2008

« Older Partial PC DVD drive failure   |   Help me turn this MIME attachment into something... Newer »
This thread is closed to new comments.