Differences between revisions 1 and 5 (spanning 4 versions)
Revision 1 as of 2010-11-27 02:07:30
Size: 1205
Comment:
Revision 5 as of 2010-11-29 20:05:46
Size: 1553
Comment: Added ohloh.net link
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
= Extension Name = = RebaseIfExtension =
Line 5: Line 5:

This is useful since manual merges are error prone and a merge commit more clearly expresses each side of the merge, and the merge resolution choices, than a rebase (which tends to bundle all the local changes and the merge ops together and giving little chance of a rollback.)

The background for this is described in [[http://stackoverflow.com/questions/4086724/how-do-i-check-for-potential-merge-rebase-conflicts-in-mercurial|this StackOverflow question]].
Line 18: Line 14:
Download site: https://bitbucket.org/marcusl/ml-hgext/src/tip/rebaseif.py

Issue tracker: https://bitbucket.org/marcusl/ml-hgext/issues
 * Download site: https://bitbucket.org/marcusl/ml-hgext/src/tip/rebaseif.py
 * Issue tracker: https://bitbucket.org/marcusl/ml-hgext/issues
 * If you like it, drop a note here: https://www.ohloh.net/p/ml-hgext
Line 23: Line 19:

The extension provides both a new command {{{rebaseif}}} as well as a new option to pull {{{--rebaseif}}} that invoke the rebaseif procedure after pulling. (Similar to RebaseExtension 's --rebase option).

This is useful since manual merges are error prone and a merge commit more clearly expresses each side of the merge, and the merge resolution choices, than a rebase (which tends to bundle all the local changes and the merge ops together and giving little chance of a rollback.)

The background for this is described in [[http://stackoverflow.com/questions/4086724/how-do-i-check-for-potential-merge-rebase-conflicts-in-mercurial|this StackOverflow question]].

Line 32: Line 36:
== Usage ==

{{{
> hg rebaseif
}}}

{{{
> hg pull --rebaseif
}}}
Line 38: Line 52:
CategoryExtension CategoryExtensionsByOthers CategoryExtensionsByOthers

RebaseIfExtension

This extension builds on the RebaseExtension but adds some simple logic that chooses a merge instead of a rebase if there are conflicts.

1. Status

This extension is/is not distributed with Mercurial.

Author: MarcusLindblom

2. Overview

The extension provides both a new command rebaseif as well as a new option to pull --rebaseif that invoke the rebaseif procedure after pulling. (Similar to RebaseExtension 's --rebase option).

This is useful since manual merges are error prone and a merge commit more clearly expresses each side of the merge, and the merge resolution choices, than a rebase (which tends to bundle all the local changes and the merge ops together and giving little chance of a rollback.)

The background for this is described in this StackOverflow question.

3. Configuration

Configure your .hgrc to enable the extension by adding following lines:

[extensions]
rebaseif = path/to/rebaseif.py

4. Usage

> hg rebaseif

> hg pull --rebaseif

5. See also


CategoryExtensionsByOthers

RebaseIfExtension (last edited 2012-02-15 22:36:20 by ks3095497)