manifest: remove addgroup() from manifestlog and imanifestlog
addgroup() is part of the storage interface for manifests.
Unfortunately, we don't yet have a formal storage interface
for manifests. (One will be established in subsequent commits.)
One thing is for sure, addgroup() doesn't belong on imanifestlog -
at least not unless we extend that interface to encompass storage.
For now, let's access addgroup() on the _revlog attribute, just like
we do for tree manifests. Even though this violates visibility,
it is consistent.
Differential Revision: https://phab.mercurial-scm.org/D4274
Do not strip innocent children. See https://bitbucket.org/facebook/hg-experimental/issues/6/hg-absorb-merges-diverged-commits
$ cat >> $HGRCPATH << EOF
> [extensions]
> absorb=
> drawdag=$RUNTESTDIR/drawdag.py
> EOF
$ hg init
$ hg debugdrawdag << EOF
> E
> |
> D F
> |/
> C
> |
> B
> |
> A
> EOF
$ hg up E -q
$ echo 1 >> B
$ echo 2 >> D
$ hg absorb
saved backup bundle to * (glob)
2 of 2 chunk(s) applied
$ hg log -G -T '{desc}'
@ E
|
o D
|
o C
|
o B
|
| o F
| |
| o C
| |
| o B
|/
o A