Mercurial > hgsubversion
view README @ 77:ed3dd5bf45da
fetch_command: bypass export3() and checkout manually
This method has several advantages:
- export3() does not work very well under Windows, while client.list() and
ra.get_file() do
- File modes are retrieved from get_file() for free, instead of being read from
the filesystem, which does not work under Windows, more generally the
filesystem is bypassed completely.
- It can be made much smarter by checkouting changed files only, like convert
extension does.
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Sun, 09 Nov 2008 18:08:35 -0600 |
parents | b61d49e3f91c |
children | 31923684e4dc |
line wrap: on
line source
-*-restructuredtext-*- About ----- hgsubversion is an extension for Mercurial that allows using Mercurial as a Subversion client. Right now it is *not* ready for production use. You should only be using this if you're ready to hack on it, and go diving into the internals of Mercurial and/or Subversion. Installation ------------ You need to have Subversion installed with the SWIG Python bindings from Subversion 1.5 or later. You need a recent Mercurial. At present, the required memctx and rebase code is in mercurial_ and crew_, but not crew-stable_ or mercurial-stable_. Install Mercurial from one of mercurial or crew if you have not already. Personally, I use crew_. .. _mercurial: http://selenic.com/repo/hg .. _mercurial-stable: http://selenic.com/repo/hg-stable .. _crew: http://hg.intevation.org/mercurial/crew .. _crew-stable: http://hg.intevation.org/mercurial/crew-stable If you are unfamiliar with installing Mercurial extensions, please see the UsingExtensions_ page in the Mercurial wiki. Look at the example for specifying an absolute path near the bottom of the page. You want to give the path to the top level of your clone of this repository. .. _UsingExtensions: http://www.selenic.com/mercurial/wiki/index.cgi/UsingExtensions Before using hgsubversion, I *strongly* encourage you to run the automated tests. Just use nose_ if you have it (or ``easy_install nose`` if you want it), or use ``python tests/run.py`` to run the suite with the conventional test runner. Note that because I use nose, there's a lot of stdout spew in the tests right now. The important part is that all the tests pass. .. _nose: http://code.google.com/p/python-nose/ Basic Use ----------- Get a new clone of an svn server:: $ hg svnclone <svn URI> [destination] Real example:: $ hg svnclone http://python-nose.googlecode.com/svn nose-hg Pull new revisions into an already-converted repo:: $ hg svn pull For more information, see 'hg svn help' while in a converted repo.