$ cat >> $HGRCPATH <<EOF > [web] > push_ssl = false > allow_push = * > [extensions] > EOF $ echo "states=$(echo $(dirname $TESTDIR))/obsolete.py" >> $HGRCPATH $ mkcommit() { > echo "$1" > "$1" > hg add "$1" > hg ci -m "add $1" > } $ hg init local $ cd local $ mkcommit a # 0 $ mkcommit b # 1 $ mkcommit c # 2 $ hg up 1 0 files updated, 0 files merged, 1 files removed, 0 files unresolved $ mkcommit obsol_c # 3 created new head $ hg debugobsolete 3 2 Test that obsolete changeset are hidden $ hg log changeset: 3:0d3f46688ccc tag: tip parent: 1:7c3bad9141dc user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add obsol_c changeset: 1:7c3bad9141dc user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add b changeset: 0:1f0dee641bb7 user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add a $ hg log --hidden changeset: 3:0d3f46688ccc tag: tip parent: 1:7c3bad9141dc user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add obsol_c changeset: 2:4538525df7e2 user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add c changeset: 1:7c3bad9141dc user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add b changeset: 0:1f0dee641bb7 user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add a $ hg log -r 'obsolete()' --hidden changeset: 2:4538525df7e2 user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add c test obsolete changeset with no-obsolete descendant $ hg up 1 -q $ mkcommit "obsol_c'" # 4 (on 1) created new head $ hg debugobsolete 4 3 $ hg log changeset: 4:725c380fe99b tag: tip parent: 1:7c3bad9141dc user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add obsol_c' changeset: 1:7c3bad9141dc user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add b changeset: 0:1f0dee641bb7 user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add a $ hg log -r 'obsolete()' --hidden changeset: 2:4538525df7e2 user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add c changeset: 3:0d3f46688ccc parent: 1:7c3bad9141dc user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add obsol_c $ hg up 3 -q $ mkcommit d # 5 (on 3) $ hg log -r 'obsolete()' changeset: 3:0d3f46688ccc parent: 1:7c3bad9141dc user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add obsol_c