login
Header Space

 
 

Gitk Updates

October 29, 2007 - 9:59am
Submitted by Jeremy on October 29, 2007 - 9:59am.
Linux news

Paul Mackerras merged an updated version of gitk into his master branch. Gitk is a git repository browser. New features include improve searching, "thus you can now search for commits that modify certain files or directories, or commits that add/remove a given string, as well as searching for commits by commit message, author, committer or headline." Paul also noted two performance improvements, "gitk now uses a new graph layout algorithm, which means it doesn't have to generate the whole layout from top to bottom at startup time, making startup faster," and, "gitk caches the topology information used for the previous/next tag and branch information, making startup faster."

Linus Torvalds noted some display annoyances, but responded favorably to the performance improvements, "*huge* improvements. It is now really nice to start up gitk even on the full kernel history." He made some suggestions for additional improvements, then added, "but this has both the layout performance improvements and the fixes to only show selected files in the diff view by default, so I hope this gets merged into standard git soon.."


From: Paul Mackerras <paulus@...>
Subject: New features in gitk
Date: Oct 27, 9:39 pm 2007

I just pulled the dev branch of gitk into the master branch, so the
master branch now has the new features and improvements that I have
been working on, namely:

* The find and highlight functions have been combined into a single
  function, and there is now a button for finding backwards as well as
  a find forwards button.  Thus you can now search for commits that
  modify certain files or directories, or commits that add/remove a
  given string, as well as searching for commits by commit message,
  author, committer or headline.

* Combining the find and highlight functions freed up space that is
  now used for a progress bar and a status window.

* There is now a font chooser accessible from the edit/preferences
  window.

* Gitk now uses a new graph layout algorithm, which means it doesn't
  have to generate the whole layout from top to bottom at startup
  time, making startup faster.  Gitk also uses a new style for drawing
  short diagonal line segments that join an existing vertical line,
  which is visually clearer when the segment crosses another line.

* Gitk caches the topology information used for the previous/next tag
  and branch information, making startup faster.

Tk 8.5 is now in beta, meaning that some distros now have it
packaged.  Gitk looks much nicer in Tk8.5 since it supports
anti-aliased fonts, so I strongly suggest that people install and use
Tk8.5 if possible.

Paul.
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

From: Linus Torvalds <torvalds@...> Subject: Re: New features in gitk Date: Oct 28, 1:34 am 2007 On Sun, 28 Oct 2007, Paul Mackerras wrote: > > I just pulled the dev branch of gitk into the master branch, so the > master branch now has the new features and improvements that I have > been working on, namely: *Huge* improvements. It is now really nice to start up gitk even on the full kernel history. However, that crazy green bar chasing back-and-forth int he "reading" phase is really quite visually distracting. Maybe it looks better in Tk8.5, but it does look pretty annoying in the version I have. Can you tone that down a bit? But this has both the layout performance improvements and the fixes to only show selected files in the diff view by default, so I hope this gets merged into standard git soon.. Linus - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Paul Mackerras <paulus@...> Subject: Re: New features in gitk Date: Oct 28, 3:11 am 2007 Linus Torvalds writes: > However, that crazy green bar chasing back-and-forth int he "reading" > phase is really quite visually distracting. Maybe it looks better in > Tk8.5, but it does look pretty annoying in the version I have. Can you > tone that down a bit? Yeah. Actually what I'd like is to know how many commits git log is going to give me, so that I can do a normal progress bar whose length is proportional to commits_read / total_commits. With --topo-order (or --date-order) it has to get to the last commit before it outputs the first commit, doesn't it? So could it print the total number of commits on a line by itself at the start of its output? (Presumably it would need a --commit-count flag to enable that behaviour.) Other than that, I could slow the progress bar down, or do a bar of moving diagonal stripes, or something. Paul. - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Linus Torvalds <torvalds@...> Subject: Re: New features in gitk Date: Oct 28, 12:50 pm 2007 On Sun, 28 Oct 2007, Paul Mackerras wrote: > > Yeah. Actually what I'd like is to know how many commits git log is > going to give me That's not known until later. > With --topo-order (or --date-order) it has to get to the last commit > before it outputs the first commit, doesn't it? The cost is not generally in outputting the commits. The real cost is in traversing them in the first place. So yes, we could output the number of commits once we know it, but generally, by that time, it's not an interesting number any more! You might as well just read the list, because git is going to feed it to you as fast as it can (which is plenty fast - you'll probably get hundreds of megabytes of SHA1 values per second at that point). So basically, by the time you start getting SHA1's from --topo-order, the best thing you can do is just lay back and think of England. The *last* thing you want to do is bother with any graphics and updates, because it's just going to slow things down. It's before you even start getting the SHA1's, _or_ if you don't use "--date/topo-order" in the first place, that you want to have a "wait, I'm thinking" thing. And at neither time do you know how long it's going to be. (And as mentioned many times earlier - if you can avoid topo-order and date-order entirely, you are going to perform a million times better at startup for the cold-cache case. Since you seem to be doing the graph layout lazily now, maybe you could aim for that some day? It does mean that you might - occasionally - end up having to add a commit to *before* one you already laid out). Linus - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html


speck-geostationary