On Feb 25, 2011, at 06:40 PM, Adrian Buehlmann wrote:

>First, get an initial clone (let's name it 'master') over the wire
>using: [1]
>
>  $ hg clone -U ssh://h...@hg.python.org/cpython master
>
>Then create a hardlinked clone [2] for working in each branch,
>specifying the branch to check out using option -u:
>
>  $ hg clone master py26 -u 2.6
>  updating to branch 2.6
>  NNN files updated, 0 files merged, 0 files removed, 0 files unresolved
>
>  $ hg clone master py27 -u 2.7
>  updating to branch 2.7
>  NNN files updated, 0 files merged, 0 files removed, 0 files unresolved
>
>  $ hg clone master trunk -u trunk
>  updating to branch trunk
>  NNN files updated, 0 files merged, 0 files removed, 0 files unresolved
>
>  $ hg clone master py31 -u 3.1
>  updating to branch 3.1
>  NNN files updated, 0 files merged, 0 files removed, 0 files unresolved
>
>  $ hg clone master py32 -u 3.2
>  updating to branch 3.2
>  NNN files updated, 0 files merged, 0 files removed, 0 files unresolved
>
>Note that each of these branch clones will initially have your local
>master repo as the default path [3,4]. If you'd like to have the default
>push/pull path to point to ssh://h...@hg.python.org/cpython instead, you'd
>want to edit the [paths] section in the .hg/hgrc file in each of the
>branch repos.

Thanks very much Adrian, this is exactly what I was looking for.  It maps
almost directly to my current mental model for working on Python in Subversion
(and truth be told, also how I do/did it with Bazaar).

It does leave me with an empty 'master' directory that I basically won't
touch, though I suppose I could hide it in a dot-filename.  And I have to
remember to fiddle with .hg/hgrc when I clone a new branch working directory,
but I guess that's mostly a one-time cost.

I'll have to remember that 'hg pull' does not update the working copy by
default, and eventually I'll figure out the whole merge thing.

One immediate thing that I'm missing from Bazaar is that 'bzr commit' invokes
my editor and always shows me a 'diff -u' in the commit message buffer.  This
is incredibly handy because I don't have to remember to do the diff in a
different window, and I always have all the information I want right there to
craft the commit message.  It doesn't look like this is possible with 'hg
commit' though, right?

Cheers,
-Barry

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to