Local vs Server (phase names and clones)

Jason Harris jason at jasonfharris.com
Tue Jan 17 07:04:53 CST 2012


On Jan 17, 2012, at 9:57 AM, Pierre-Yves David wrote:

> Quick answer:
> 
> * We don't have sensible way to know if a local repo is server or not.

But this is *really* what is needed.

Can't you just see if at first approximation if it has a http:// in front of it?

More generally I would imagine you would have some hgrc configuration:

[phases]
private.permit.exchange.localfiles = file://*
private.permit.exchange.myPrivateServer = http://www.myPrivateServer.com/*
private.permit.pull.myCompanyServer = http://www.myCompanyServer.com/*
private.forbid.exchange.others = *

draft.permit.exchange.localflies = file://*
draft.permit.exchange.servers = http://*

publish.permit.exchange.localflies = file://*
publish.permit.exchange.servers = http://*

general form would be:

<phase>.<permit | forbid>.<exchange | pull | push | clone>.<some-unique-name> = spec



> * Secret changeset are not exchanged between repo (local or not).

Not so good...

> * you can alway bundle secret changeset

Good:)

> 
> * I'm considering a "--private" (or "--include-private") switch to commit to allow pushing secret changeset. (as --force did with mq)

You mean push / pull here right? (and for clone as well right?)

Without such an option the private changesets are next to useless...

> * With the change in discovery code, there will probably be more extension aiming to prevent exchange some changeset with a finer grain than phase. Those extension will probably not use phase directly.
> 
> See the other thread for more details.

I must have missed it can you give me the thread reference again in either MarkMail or some other archived email. I am sorry about this I really tried to follow the details and not miss any of them...

Cheers,
   Jas


More information about the Mercurial-devel mailing list