Differences between revisions 18 and 20 (spanning 2 versions)
Revision 18 as of 2013-06-01 17:35:53
Size: 3553
Editor: cpe-071-077-042-241
Comment: Add config file contents for recent versions of mercurial
Revision 20 as of 2013-08-26 09:50:20
Size: 249
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
#pragma section-numbers 2
= Histedit Extension =

'''This extension is distributed with Mercurial 2.3 and later.'''

''Author: Augie Fackler''

Repository: https://bitbucket.org/durin42/histedit/

Works with: Mercurial 1.3 and beyond (tests are run against versions seen [[https://bitbucket.org/durin42/histedit/src/tip/Makefile#cl-23|in the Makefile]].)

In core since version 2.3

<<TableOfContents>>

== Overview ==

History editing plugin for Mercurial, heavily inspired by {{{git rebase --interactive}}}.

It allows selecting ('''pick'''), combining ('''fold'''), rejecting ('''drop''') or modifying ('''edit''') already commited changesets.

== Configuration ==

In versions of Mercurial after 2.3, enable the extension by adding the following lines to your ''`.hgrc`''/''`mercurial.ini`'' file:

{{{
[extensions]
histedit =
}}}

For older versions, you need to grab the extension source and then configure your ''`.hgrc`''/''`mercurial.ini`'' to enable the extension by adding following lines:

{{{
[extensions]
histedit = ~/path/to/histedit/hg_histedit.py
}}}

== Usage Scenario ==

The extension adds the {{{histedit}}} command, which takes a {{{revision}}} argument. All changesets from that revision and onwards are selected for history reordering and modification. They are presented as an ordered list with a changeset revision preceded by an action keyword for each line ({{{action revision-id}}}).

If you were to run {{{hg histedit c561b4e977df}}} for a repo with the history graph

{{{
@ 3[tip] 7c2fd3b9020c 2009-04-27 18:04 -0500 durin42
| Add delta
|
o 2 030b686bedc4 2009-04-27 18:04 -0500 durin42
| Add gamma
|
o 1 c561b4e977df 2009-04-27 18:04 -0500 durin42
| Add beta
|
o 0 d8d2fcd0e319 2009-04-27 18:04 -0500 durin42
     Add alpha
}}}

an editor would open containing the following text:

{{{
pick c561b4e977df Add beta
pick 030b686bedc4 Add gamma
pick 7c2fd3b9020c Add delta

# Edit history between c561b4e977df and 7c2fd3b9020c
#
# Commands:
# p, pick = use commit
# e, edit = use commit, but stop for amending
# f, fold = use commit, but fold into previous commit
# d, drop = remove commit from history
#
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
}}}

History rewriting works by reordering changesets so that they reflect a new ordering in the history graph, or by changing the desired action to take on each changeset. The possible actions are one of {{{pick}}}, {{{fold}}}, {{{edit}}} and {{{drop}}}:

 pick:: Simply accepts the changeset as is. This is the default action.
 fold:: Combines a changeset with the previous changeset in the list and opens an editor to edit the commit message.
 edit:: Drops to the command prompt, allowing to edit files freely to commit some changes as a separate commit. When done, any remaining uncommitted changes will be committed as well. When done, run {{{hg histedit --continue}}} to finish this step or {{{hg histedit --abort}}} to abandon the new changes and keep the previous state.
 drop:: Removes the changeset from history.

When changes lead to conflicts then the user is dropped to the command prompt and has the very same options as when the {{{edit}}} action is selected. To accept new changes the {{{hg histedit --continue}}} command is used and to drop them the {{{hg histedit --abort}}} one.

See http://bitbucket.org/durin42/histedit/src/tip/README for a more detailed explanation.

----
CategoryExtensionsByOthers
Santa Maria-born and raised Jennifer Matthews is hooked on [[http://bestgamess.com/groups/terrific-travel-tips-1679286743/|Costa Blanca weather June,]] gadgets, rock collecting. And lastly she's captivated by having fun with her fantastic friends.

Santa Maria-born and raised Jennifer Matthews is hooked on Costa Blanca weather June, gadgets, rock collecting. And lastly she's captivated by having fun with her fantastic friends.

HisteditExtension (last edited 2021-02-01 14:07:53 by muxator)