threads / discuss / 19195

How to restrict gitk to show only branch/merge commits?

Subject: How to restrict gitk to show only branch/merge commits?

## tl;dr

3 messages between May 6, 2009 and May 6, 2009.

replies: 2people: 3as markdown or json

Josef Wolf· May 6, 2009, 07:20 UTC · lore
Hello,

I would like gitk to show me only the heads, branch-points and merge-points of branches.

For example, given a history like this:
                   d...e--F--g...h--H
                  /        \
 a1--a2...an--b--C          N--o...p--P
                  \        /
                   i...j--K--l...m--M
I would like to see only
 - a1     because it has no parent
 - C,F,K  because they are reachable from multiple heads
 - N      because it has multiple parents
 - H,M,P  because they are heads

Ideally, there would be a possibility to add some "context" to the list of commits to be shown: with $context==1, all the commits shown in the above history would be shown, but the commits indicated by the triple-dots would be omitted.

The reason is that I have some repositories with several really long linear history. It is hard to get a global overview about the branch history if you have to scroll constantly.

Is something like that possible with gitk?
Andreas Ericsson· May 6, 2009, 07:42 UTC · re: Josef Wolf · lore

Re: How to restrict gitk to show only branch/merge commits?

Josef Wolf wrote:
Show 30 quoted lines
> Hello,
> 
> I would like gitk to show me only the heads, branch-points and
> merge-points of branches.
> 
> For example, given a history like this:
> 
>                    d...e--F--g...h--H
>                   /        \
>  a1--a2...an--b--C          N--o...p--P
>                   \        /
>                    i...j--K--l...m--M
> 
> I would like to see only
> 
>  - a1     because it has no parent
>  - C,F,K  because they are reachable from multiple heads
>  - N      because it has multiple parents
>  - H,M,P  because they are heads
> 
> Ideally, there would be a possibility to add some "context" to the
> list of commits to be shown: with $context==1, all the commits shown
> in the above history would be shown, but the commits indicated by
> the triple-dots would be omitted.
> 
> The reason is that I have some repositories with several really long
> linear history.  It is hard to get a global overview about the branch
> history if you have to scroll constantly.
> 
> Is something like that possible with gitk?

Not today, no. I'm not sure how hard it would be to add, and as I'm a tcl-analphabet the chances of successfully implementing it marginally increases if I don't work on it.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

Register now for Nordic Meet on Nagios, June 3-4 in Stockholm
 http://nordicmeetonnagios.op5.org/

Considering the successes of the wars on alcohol, poverty, drugs and
terror, I think we should give some serious thought to declaring war
on peace.
Jakub Narebski· May 6, 2009, 07:51 UTC · re: Josef Wolf · lore

Re: How to restrict gitk to show only branch/merge commits?

Josef Wolf <jw@raven.inka.de> writes:
Show 28 quoted lines
> I would like gitk to show me only the heads, branch-points and
> merge-points of branches.
> 
> For example, given a history like this:
> 
>                    d...e--F--g...h--H
>                   /        \
>  a1--a2...an--b--C          N--o...p--P
>                   \        /
>                    i...j--K--l...m--M
> 
> I would like to see only
> 
>  - a1     because it has no parent
>  - C,F,K  because they are reachable from multiple heads
>  - N      because it has multiple parents
>  - H,M,P  because they are heads
> 
> Ideally, there would be a possibility to add some "context" to the
> list of commits to be shown: with $context==1, all the commits shown
> in the above history would be shown, but the commits indicated by
> the triple-dots would be omitted.
> 
> The reason is that I have some repositories with several really long
> linear history.  It is hard to get a global overview about the branch
> history if you have to scroll constantly.
> 
> Is something like that possible with gitk?

I am not sure if it would give you exactly what you want, but if I understand correctly gitk accepts arguments for git-log (and you can set them somewhere in options, too). Take a look at section "History Simplification" in git-log/git-rev-list manpage, in particular at option '--simplify-by-decoration' there.

-- 
Jakub Narebski
Poland
ShadeHawk on #git

← back to recent threads