Plans for Mercurial branches?

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Plans for Mercurial branches?

Björn Winckler
Hi,

I was wondering what the plans for the Mercurial branches are once 7.3
is finished.  Will "vim73" be merged into "default" at some point, or
will there be one giant "vim73 patch" applied to "default" (making all
changesets in the "vim73" branch into a patch) and "vim73" will be
left, or ...?

I am wondering because I am in the process of changing the MacVim repo
to use the Vim Mercurial repo as upstream instead of the svn repo.
This is to allow me to make an informed decision as to which branch to
merge my own "macvim" branch against.

Thanks,
Björn

--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Plans for Mercurial branches?

Bram Moolenaar

Björn Winckler wrote:

> I was wondering what the plans for the Mercurial branches are once 7.3
> is finished.  Will "vim73" be merged into "default" at some point, or
> will there be one giant "vim73 patch" applied to "default" (making all
> changesets in the "vim73" branch into a patch) and "vim73" will be
> left, or ...?
>
> I am wondering because I am in the process of changing the MacVim repo
> to use the Vim Mercurial repo as upstream instead of the svn repo.
> This is to allow me to make an informed decision as to which branch to
> merge my own "macvim" branch against.

When 7.3 is released it will become the default branch.  How this is
done I don't know.  There were some problems when I used "hg rebase" on
the vim73 branch, now it's no longer possible to merge directly from the
default branch into the vim73 branch.  I don't know if the other way
around would still work.  Or that we need to use export + import.

--
From "know your smileys":
 ...---...   SOS

 /// Bram Moolenaar -- [hidden email] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\        download, build and distribute -- http://www.A-A-P.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Plans for Mercurial branches?

Björn Winckler
On 23 May 2010 12:38, Bram Moolenaar wrote:

>
> Björn Winckler wrote:
>
>> I was wondering what the plans for the Mercurial branches are once 7.3
>> is finished.  Will "vim73" be merged into "default" at some point, or
>> will there be one giant "vim73 patch" applied to "default" (making all
>> changesets in the "vim73" branch into a patch) and "vim73" will be
>> left, or ...?
>>
>> I am wondering because I am in the process of changing the MacVim repo
>> to use the Vim Mercurial repo as upstream instead of the svn repo.
>> This is to allow me to make an informed decision as to which branch to
>> merge my own "macvim" branch against.
>
> When 7.3 is released it will become the default branch.  How this is
> done I don't know.  There were some problems when I used "hg rebase" on
> the vim73 branch, now it's no longer possible to merge directly from the
> default branch into the vim73 branch.  I don't know if the other way
> around would still work.  Or that we need to use export + import.

I don't know how to do this either -- from what I can tell you will
have to rewrite history in some way (e.g. export+import).

On that topic, will the history of the "default" branch never be
rewritten (no rebase, etc.)?  If so, I will merge the MacVim branch
against the default branch (and probably keep a topic branch that
merges against vim73).

Björn

--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Plans for Mercurial branches?

Tony Mechelynck
On 23/05/10 15:30, björn wrote:

> On 23 May 2010 12:38, Bram Moolenaar wrote:
>>
>> Björn Winckler wrote:
>>
>>> I was wondering what the plans for the Mercurial branches are once 7.3
>>> is finished.  Will "vim73" be merged into "default" at some point, or
>>> will there be one giant "vim73 patch" applied to "default" (making all
>>> changesets in the "vim73" branch into a patch) and "vim73" will be
>>> left, or ...?
>>>
>>> I am wondering because I am in the process of changing the MacVim repo
>>> to use the Vim Mercurial repo as upstream instead of the svn repo.
>>> This is to allow me to make an informed decision as to which branch to
>>> merge my own "macvim" branch against.
>>
>> When 7.3 is released it will become the default branch.  How this is
>> done I don't know.  There were some problems when I used "hg rebase" on
>> the vim73 branch, now it's no longer possible to merge directly from the
>> default branch into the vim73 branch.  I don't know if the other way
>> around would still work.  Or that we need to use export + import.
>
> I don't know how to do this either -- from what I can tell you will
> have to rewrite history in some way (e.g. export+import).
>
> On that topic, will the history of the "default" branch never be
> rewritten (no rebase, etc.)?  If so, I will merge the MacVim branch
> against the default branch (and probably keep a topic branch that
> merges against vim73).
>
> Björn
>

I guess this kind of problem is why Mercurial recommends that the
default branch always be the branch undergoing active development, i.e.,
usually not the current stable branch but the experimental branch which
will someday become the next release. Then when work starts on a further
release, the current release is branched off, and the work-in-progress
for the new release happens on the "default" without affecting the
stable release which has just received a branch name. OTOH the
branched-off release(s) may still receive security & stability updates
for some time (usually at a decreasing rate) and then die (be "closed"
in Mercurial language).

Mercurial is based on invariant history, so in principle (with a few
exceptions such as hg rollback) what has been done cannot be undone, and
too bad for the (l)user if he goofed and doesn't see it at once.

If we someday want that what is now the default branch become a "vim72"
branch while the current vim73 branch should become a new "default", it
may be quite hard to achieve. Maybe with the transplant extension and/or
the experimental hg rebase --detach (available only in the development
version of the rebase extension)... Now if only there were a few more
examples and explanations in that Mercurial documentation...

Maybe it will be simpler to go on with the vim73 branch, and someday let
the so-called default branch die, when Vim 7.2 will be at EOL?

Or else, maybe (but I don't know if it's allowed) "hg branch -f default"
to "force" the current (vim73) branch to become the default, obscuring
the earlier default? Maybe after "hg branch vim72" on the current
default, so that work on Vim 7.2 can still continue?


Best regards,
Tony.
--
Prostitution is the only business where you can go into the hole and
still come out ahead.

--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Plans for Mercurial branches?

Xavier de Gaye-2
In reply to this post by Bram Moolenaar
On Sun, May 23, 2010 at 12:38 PM, Bram Moolenaar wrote:
>
> ...
> When 7.3 is released it will become the default branch.  How this is
> done I don't know. ...
>


The 'vim73' branch can be given the name of the 'default' branch with
the 'hg branch --force default' command after the 'default' branch is
named 'vim72' with the 'hg branch vim72' command (both followed by
commit).

A simple test made on a fake repo with 'default' and 'vim73' branches
(same as in the current vim repo) shows this result after that is done:

$ hg branches
default                     5:ce5266650699
vim72                       4:d5bb6abbab9a
vim73                       3:90078dbe59dd (inactive)

Changeset '3:90078dbe59dd' is the tip of the vim73 branch before it is
renamed to 'default'.


Xavier

--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Plans for Mercurial branches?

Bram Moolenaar
In reply to this post by Björn Winckler

Björn Winckler wrote:

> On 23 May 2010 12:38, Bram Moolenaar wrote:
> >
> > Björn Winckler wrote:
> >
> >> I was wondering what the plans for the Mercurial branches are once 7.3
> >> is finished.  Will "vim73" be merged into "default" at some point, or
> >> will there be one giant "vim73 patch" applied to "default" (making all
> >> changesets in the "vim73" branch into a patch) and "vim73" will be
> >> left, or ...?
> >>
> >> I am wondering because I am in the process of changing the MacVim repo
> >> to use the Vim Mercurial repo as upstream instead of the svn repo.
> >> This is to allow me to make an informed decision as to which branch to
> >> merge my own "macvim" branch against.
> >
> > When 7.3 is released it will become the default branch.  How this is
> > done I don't know.  There were some problems when I used "hg rebase" on
> > the vim73 branch, now it's no longer possible to merge directly from the
> > default branch into the vim73 branch.  I don't know if the other way
> > around would still work.  Or that we need to use export + import.
>
> I don't know how to do this either -- from what I can tell you will
> have to rewrite history in some way (e.g. export+import).
>
> On that topic, will the history of the "default" branch never be
> rewritten (no rebase, etc.)?  If so, I will merge the MacVim branch
> against the default branch (and probably keep a topic branch that
> merges against vim73).

I have been told in a Mercurial maillist that "hg rebase" must not be
used for changes that have been pushed.  Thus it's safe to assume the
default branch will keep it's history.

--
% cat /usr/include/life.h
void life(void);

 /// Bram Moolenaar -- [hidden email] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\        download, build and distribute -- http://www.A-A-P.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Plans for Mercurial branches?

James Vega-3
In reply to this post by Bram Moolenaar
On Sun, May 23, 2010 at 12:38:10PM +0200, Bram Moolenaar wrote:

>
> Björn Winckler wrote:
>
> > I was wondering what the plans for the Mercurial branches are once 7.3
> > is finished.  Will "vim73" be merged into "default" at some point, or
> > will there be one giant "vim73 patch" applied to "default" (making all
> > changesets in the "vim73" branch into a patch) and "vim73" will be
> > left, or ...?
> >
> > I am wondering because I am in the process of changing the MacVim repo
> > to use the Vim Mercurial repo as upstream instead of the svn repo.
> > This is to allow me to make an informed decision as to which branch to
> > merge my own "macvim" branch against.
>
> When 7.3 is released it will become the default branch.  How this is
> done I don't know.  There were some problems when I used "hg rebase" on
> the vim73 branch, now it's no longer possible to merge directly from the
> default branch into the vim73 branch.  I don't know if the other way
> around would still work.
Merging vim73 into default should work fine, and it currently does.  I
tried it earlier today.

--
James
GPG Key: 1024D/61326D40 2003-09-02 James Vega <[hidden email]>

signature.asc (205 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Plans for Mercurial branches?

Gary Johnson-4
In reply to this post by Bram Moolenaar
On 2010-05-23, Bram Moolenaar wrote:

> Björn Winckler wrote:
>
> > I was wondering what the plans for the Mercurial branches are once 7.3
> > is finished.  Will "vim73" be merged into "default" at some point, or
> > will there be one giant "vim73 patch" applied to "default" (making all
> > changesets in the "vim73" branch into a patch) and "vim73" will be
> > left, or ...?
> >
> > I am wondering because I am in the process of changing the MacVim repo
> > to use the Vim Mercurial repo as upstream instead of the svn repo.
> > This is to allow me to make an informed decision as to which branch to
> > merge my own "macvim" branch against.
>
> When 7.3 is released it will become the default branch.  How this is
> done I don't know.  There were some problems when I used "hg rebase" on
> the vim73 branch, now it's no longer possible to merge directly from the
> default branch into the vim73 branch.

I just did this and it seemed to work fine.  Specifically, I cloned
the vim repo, which was at changeset a8afba7027ae at the time, and
merged the 7.2.437 patch to the vim73 branch as follows.

    hg update vim73
    hg merge default
    hg ci

I had to manually merge the file that contains the patch list,
version.c, I think, but that was easy using vimdiff.

You should be able to merge each Vim 7.2 patch to the vim73 branch
as it comes along.

Regards,
Gary

--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php