Inter-Repository work.... (new to mercurial)

Greg Ward greg-hg at gerg.ca
Fri Sep 4 12:38:54 CDT 2009


On Fri, Sep 4, 2009 at 11:04 AM, Thomas
Lehmann<Iris-und-Thomas-Lehmann at t-online.de> wrote:
> I have been assuming that this is the point: "push or pull"
> I have a repository with a structure like this: (three paths as
> example)
>
> D:\MercurialRepository\xml
> D:\MercurialRepository\python
> D:\MercurialRepository\python\tests
> D:\MercurialRepository\python\tkinter

The internal structure of your source tree is irrelevant.  All I need
to know is that you have related repositories at
D:\MercurialRepository and D:\XmlBasedGuiDesign.

> Now I want to "copy" all version of all files of last path into the
> empty repository
> from bitpucket.

I understand what you're saying, but it's important to use the right
terminology.  In Mercurial's case, the right terminology is that you
want to pull all changesets into your empty repository.  That's it:
changesets are everything.  Files and directories are minor
implementation details compared to the towering importance of
changesets.

> One Idea was to say:
>
> being at D:\XmlBasedGuiDesign (this is the clone of the bitbucket
> repository)
>
> hg pull D:\MercurialRepository\python\tkinter
> abort: repository D:\MercurialRepository\python\tkinter not found!

Simple:

  cd \XmlBasedGuiDesign
  hg pull ..\MercurialRepository

That's the basic operation.  The mirror operation is

  cd \MercurialRepository
  hg push ..\XmlBasedGuiDesign

Once you understand what's going on there, you're ready to start
having fun.  ;-)  But in the meantime, stop thinking about files and
directories and file versions.  Think *changesets*.

Greg


More information about the Mercurial mailing list