We have a subversion repository, and we'd like to try out Kiln. We imported the repository using the Kiln import tool, but we are not yet ready to have a hard switchover to Mercurial for the entire team. Is it possible to import changes checked in to Subversion since the import? Is it possible to push changes from Mercurial back to the Subversion repository? Eventually we'll want to migrate the whole team to using Mercurial and Kiln, but while we iron out the details and migrate our Subversion-based deployment tools, are there any tools we can use to keep things synchronized?
|
5
|
|
|
|
|
3
|
The tool that most people will be using here is hgsubversion (which just had it's 1.0 release). There is a feature in hgsubversion to allow syncing between a Subversion and Mercurial repository, but we do not recommend it. The primary reason is that it adds another moving part to your source control process that can fail in a variety of ways. What works really well is its ability to move from Subversion to Mercurial once, and then back to Subversion later (if you need to). This process is easier to get right, and easier to debug if something goes wrong. I think it is worth trying to convert your repository, or part of it, to Mercurial and back again to see how it goes. For most people it will just work, and we are happy to answer questions if you are having trouble. In general, I would say that the ideal thing would be to move some chunk of your project to Kiln/Hg and have everyone that interacts with that chunk of the project use Mercurial. An example of a candidate for this type of thing from the Kiln project would be the client tools installer. It really lives on its own. This kind of thing encourages people to get familiar with Kiln/Hg and allows everyone to get the full benefit of code reviews on the stuff going into that bit of the project. It's also a chance to prove to everyone that the move really isn't that scary :-) |
||||||
|
|
2
|
My suggestion is the same as Jason's. We're in a similar situation to yourself in that we run Subversion, however we have two repositories, one for Production and one for Test / Prototype work. What we've done is import our Prototype repository into Kiln and then turned access to the original Subversion repository off. As it turns out for us, we currently have three developers doing prototype work so they're really hammering Kiln and getting their heads round the change of working with a DVCS system and the whole committing work locally, then pulling changes down with fetch enabled and then pushing their work out to Kiln. The worst case is, it doesn't work out. So it's just a matter of turning the original repository back on and back merging / adding any new changes, which with a file / folder comparison tool like Beyond Compare isn't that difficult (you can exclude the .hg and .svn sub folders from the comparison giving you pretty much what was different). |
|||||
|
|
0
|
Some time after the fact and with the bonus of Kiln Harmony bringing Git into the game - TortoiseGit Clones SVN repos and can later fetch from and commit to them. I haven't tried to commit to an SVN repo using this so good luck with that. To clone an SVN repo... hey, here's a blog post on it. Thanks Google. You need to be patient - it takes quite a while. Very patient. There is also an SVN bridge for Hg but I can't get it to work properly, at least behind an NTLM firewall (using CNTLM) pointing at Sourceforge. |
||
|
|