add a 'inhibit' extension
This extension will be used to reduce the scope of evolve in order to make some
of its features available to the mass earlier.
See extension documentation for details.
$ cat >> $HGRCPATH <<EOF
> [ui]
> logtemplate = {rev}:{node|short} {desc}\n
> [extensions]
> EOF
$ echo "evolve=$(echo $(dirname $TESTDIR))/hgext/evolve.py" >> $HGRCPATH
$ echo "inhibit=$(echo $(dirname $TESTDIR))/hgext/inhibit.py" >> $HGRCPATH
$ mkcommit() {
> echo "$1" > "$1"
> hg add "$1"
> hg ci -m "add $1"
> }
$ hg init inhibit
$ cd inhibit
$ mkcommit cA
$ mkcommit cB
$ mkcommit cC
$ mkcommit cD
$ hg up 'desc(cA)'
0 files updated, 0 files merged, 3 files removed, 0 files unresolved
$ mkcommit cE
created new head
$ mkcommit cG
$ mkcommit cH
$ mkcommit cJ
$ hg log -G
@ 7:18214586bf78 add cJ
|
o 6:cf5c4f4554ce add cH
|
o 5:5419eb264a33 add cG
|
o 4:98065434e5c6 add cE
|
| o 3:2db36d8066ff add cD
| |
| o 2:7df62a38b9bf add cC
| |
| o 1:02bcbc3f6e56 add cB
|/
o 0:54ccbc537fc2 add cA
plain prune
$ hg prune 1::
3 changesets pruned
$ hg log -G
@ 7:18214586bf78 add cJ
|
o 6:cf5c4f4554ce add cH
|
o 5:5419eb264a33 add cG
|
o 4:98065434e5c6 add cE
|
o 0:54ccbc537fc2 add cA
$ hg debugobsinhibit --hidden 1::
$ hg log -G
@ 7:18214586bf78 add cJ
|
o 6:cf5c4f4554ce add cH
|
o 5:5419eb264a33 add cG
|
o 4:98065434e5c6 add cE
|
| o 3:2db36d8066ff add cD
| |
| o 2:7df62a38b9bf add cC
| |
| o 1:02bcbc3f6e56 add cB
|/
o 0:54ccbc537fc2 add cA
$ hg prune --hidden 1::
3 changesets pruned
$ hg log -G
@ 7:18214586bf78 add cJ
|
o 6:cf5c4f4554ce add cH
|
o 5:5419eb264a33 add cG
|
o 4:98065434e5c6 add cE
|
o 0:54ccbc537fc2 add cA
after amend
$ echo babar > cJ
$ hg amend
$ hg log -G
@ 9:55c73a90e4b4 add cJ
|
o 6:cf5c4f4554ce add cH
|
o 5:5419eb264a33 add cG
|
o 4:98065434e5c6 add cE
|
o 0:54ccbc537fc2 add cA
$ hg debugobsinhibit --hidden 18214586bf78
$ hg log -G
@ 9:55c73a90e4b4 add cJ
|
| o 7:18214586bf78 add cJ
|/
o 6:cf5c4f4554ce add cH
|
o 5:5419eb264a33 add cG
|
o 4:98065434e5c6 add cE
|
o 0:54ccbc537fc2 add cA
and no divergence
$ hg summary
parent: 9:55c73a90e4b4 tip
add cJ
branch: default
commit: (clean)
update: 1 new changesets, 2 branch heads (merge)