Shawn Pearce <spearce@xxxxxxxxxxx> writes: >> The best I came up with is still my "show-branch --reflog" so >> far. You really need to show not just the commit title but how >> they topologically relate to the commits on the surviving >> branch, and I think having something graphical or semi-graphical >> is a must. > > Probably right. But I can't make heads or tails out of that > output for just one topic branch... Here is what my private 'pu' look like: ! [pu@{0}] Merge branch 'jc/fsck-reflog' into pu ! [pu@{1}] Merge branch 'jc/pickaxe' into pu ! [pu@{2}] Merge branches 'jn/web', 'jc/explain', 'jc/web' and ! [pu@{3}] Merge branch 'jc/leftright' into next ! [pu@{4}] Merge branch 'jc/fsck-reflog' into pu ! [pu@{5}] Merge branch 'jc/pickaxe' into pu ! [pu@{6}] Merge branches 'jc/fsck-reflog', 'jc/clone', 'j ! [pu@{7}] Merge branch 'jc/blame' into next -------- - [pu@{0}] Merge branch 'jc/fsck-reflog' into pu + [pu@{0}^2] git reflog expire + [pu@{0}^2^] Move in_merge_bases() to commit.c + [pu@{0}^2~2] reflog: fix warning message. -- [pu@{1}] Merge branch 'jc/pickaxe' into pu --- [pu@{2}] Merge branches 'jn/web', 'jc/explain', 'jc/web ---- [pu@{3}] Merge branch 'jc/leftright' into next ++++ [pu@{3}^2] Revert "Make left-right automatic." ... ++++ [pu@{3}~2^2~3^2^] Revert "fix testsuite: make sure they - [pu@{4}] Merge branch 'jc/fsck-reflog' into pu + + [pu@{0}^2~3] Teach git-repack to preserve objects refer -- [pu@{5}] Merge branch 'jc/pickaxe' into pu ++ ++ [pu@{1}^2] blame: --show-stats for easier optimization --- [pu@{6}] Merge branches 'jc/fsck-reflog', 'jc/clone', ' +++ +++ [pu@{2}^5] para-walk: walk n trees, index and working t ... + +++ [pu@{0}^2~5] add for_each_reflog_ent() iterator -------- [pu@{7}] Merge branch 'jc/blame' into next What matters most is the leftmost column. Most of the time when you are looking at reflog, you are looking for what's rewound and lost. Stretches of lines with symbols (e.g. pu@{3}^2 to pu@{3}~2^2~3^2^, and pu@{0}^2 to pu@{0}^2~2) are not so interesting [*1*]. The entry whose column have whitespace there are the lost ones (rewound or amended). pu@{4} used to be the tip of 'pu', but after I whipped 'next' into a reasonable shape, I did "git branch -f pu next" to bundle the tips of topics that are not ready for 'next' into it (and all the rest pu@{3}, pu@{2}, pu@{1} and pu@{0} are sequence of merges into 'pu'). [Footnote] *1* We might want to add an output filter that lets the command omit such lines with the same set of reachable tips when showing the reflog entries. - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html