Rewriting changeset order on push/pull (keeping the history graph tidy)
Arne Babenhauserheide
arne_bab at web.de
Tue Aug 14 13:25:05 UTC 2012
Am Montag, 13. August 2012, 23:39:01 schrieb Stanimir Stamenkov:
> Mon, 13 Aug 2012 21:57:11 +0200, /Arne Babenhauserheide/:
> > If you don’t need the merges, you can do it like this:
> > hg log -r "all() - merge()" -G
>
> Would it be possible to hide just intermediate merges from:
How would you define “intermediate merge”?
Just show the last merge?
And why do you need the final merge? It’s a regular merge like all the others,
too.
maybe you could add tip explicitely, so if the last merge is tip, it gets
shown.
As testcase I created some especially messy bogus history:
hg init test ; cd test
for i in 1 2 3 4; do echo $i > $i ; hg ci -Am "$i"; hg up -r -$i; done
for i in 1 2 3 4; do echo $i > $i ; hg ci -Am "$i"; hg up -r -$i; hg merge $i
; hg ci -m "merged $i"; done
for i in $(hg heads --template "{node} ") ; do hg merge $i ; hg ci -m "merge";
done
I think the nicest representation is this:
hg log -Gr "(all() - merge()) or head()"
It showed that in the end the revisions converged again - and it shows the
actual states of the development.
$ hg log -Gr "(all() - merge()) or head()"
@ Änderung: 7:52fe4a8ec3cc
|\ Marke: tip
| | Vorgänger: 6:7d3026216270
| | Vorgänger: 5:848c390645ac
| | Nutzer: Arne Babenhauserheide <bab at draketo.de>
| | Datum: Tue Aug 14 15:09:54 2012 +0200
| | Zusammenfassung: merge
| |
| \
| |\
| | o Änderung: 3:55ba56aa8299
| | | Vorgänger: 0:385d95ab1fea
| | | Nutzer: Arne Babenhauserheide <bab at draketo.de>
| | | Datum: Tue Aug 14 15:09:40 2012 +0200
| | | Zusammenfassung: 4
| | |
| o | Änderung: 2:b500d0a90d40
| |/ Vorgänger: 0:385d95ab1fea
| | Nutzer: Arne Babenhauserheide <bab at draketo.de>
| | Datum: Tue Aug 14 15:09:39 2012 +0200
| | Zusammenfassung: 3
| |
o | Änderung: 1:8cc66166edc9
|/ Nutzer: Arne Babenhauserheide <bab at draketo.de>
| Datum: Tue Aug 14 15:09:38 2012 +0200
| Zusammenfassung: 2
|
o Änderung: 0:385d95ab1fea
Nutzer: Arne Babenhauserheide <bab at draketo.de>
Datum: Tue Aug 14 15:09:38 2012 +0200
Zusammenfassung: 1
The shortest representation is without the heads, though.
$ hg log -Gr "(all() - merge())"
o Änderung: 3:55ba56aa8299
| Vorgänger: 0:385d95ab1fea
| Nutzer: Arne Babenhauserheide <bab at draketo.de>
| Datum: Tue Aug 14 15:09:40 2012 +0200
| Zusammenfassung: 4
|
| o Änderung: 2:b500d0a90d40
|/ Vorgänger: 0:385d95ab1fea
| Nutzer: Arne Babenhauserheide <bab at draketo.de>
| Datum: Tue Aug 14 15:09:39 2012 +0200
| Zusammenfassung: 3
|
| o Änderung: 1:8cc66166edc9
|/ Nutzer: Arne Babenhauserheide <bab at draketo.de>
| Datum: Tue Aug 14 15:09:38 2012 +0200
| Zusammenfassung: 2
|
o Änderung: 0:385d95ab1fea
Nutzer: Arne Babenhauserheide <bab at draketo.de>
Datum: Tue Aug 14 15:09:38 2012 +0200
Zusammenfassung: 1
The vanilla-log looks like this:
$ hg log -G
@ Änderung: 7:52fe4a8ec3cc
|\ Marke: tip
| | Vorgänger: 6:7d3026216270
| | Vorgänger: 5:848c390645ac
| | Nutzer: Arne Babenhauserheide <bab at draketo.de>
| | Datum: Tue Aug 14 15:09:54 2012 +0200
| | Zusammenfassung: merge
| |
| o Änderung: 6:7d3026216270
| |\ Vorgänger: 2:b500d0a90d40
| | | Vorgänger: 4:8dbc55213c9f
| | | Nutzer: Arne Babenhauserheide <bab at draketo.de>
| | | Datum: Tue Aug 14 15:09:45 2012 +0200
| | | Zusammenfassung: merged 4
| | |
o | | Änderung: 5:848c390645ac
|\| | Vorgänger: 3:55ba56aa8299
| | | Vorgänger: 2:b500d0a90d40
| | | Nutzer: Arne Babenhauserheide <bab at draketo.de>
| | | Datum: Tue Aug 14 15:09:43 2012 +0200
| | | Zusammenfassung: merged 2
| | |
+---o Änderung: 4:8dbc55213c9f
| | | Vorgänger: 3:55ba56aa8299
| | | Vorgänger: 1:8cc66166edc9
| | | Nutzer: Arne Babenhauserheide <bab at draketo.de>
| | | Datum: Tue Aug 14 15:09:41 2012 +0200
| | | Zusammenfassung: merged 1
| | |
o | | Änderung: 3:55ba56aa8299
| | | Vorgänger: 0:385d95ab1fea
| | | Nutzer: Arne Babenhauserheide <bab at draketo.de>
| | | Datum: Tue Aug 14 15:09:40 2012 +0200
| | | Zusammenfassung: 4
| | |
| o | Änderung: 2:b500d0a90d40
|/ / Vorgänger: 0:385d95ab1fea
| | Nutzer: Arne Babenhauserheide <bab at draketo.de>
| | Datum: Tue Aug 14 15:09:39 2012 +0200
| | Zusammenfassung: 3
| |
| o Änderung: 1:8cc66166edc9
|/ Nutzer: Arne Babenhauserheide <bab at draketo.de>
| Datum: Tue Aug 14 15:09:38 2012 +0200
| Zusammenfassung: 2
|
o Änderung: 0:385d95ab1fea
Nutzer: Arne Babenhauserheide <bab at draketo.de>
Datum: Tue Aug 14 15:09:38 2012 +0200
Zusammenfassung: 1
Best wishes,
Arne
PS: I just turned my email into a blog bost, too:
http://draketo.de/light/english/mercurial/creating-nice-logs-revsets
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 316 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.mercurial-scm.org/pipermail/mercurial/attachments/20120814/c8489468/attachment.asc>
More information about the Mercurial
mailing list