git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: visualizing Git's Git repo

From
Jeff King <peff@peff.net>
Date
May 27, 2008, 23:49 UTC
Message-ID
<20080527234948.GA17424@sigill.intra.peff.net>
In-Reply-To
<loom.20080527T202009-498@post.gmane.org>
On Tue, May 27, 2008 at 08:36:16PM +0000, Joshua Haberman wrote:
Show 6 quoted lines
> > 1. what do you all do to get a high-level view of what's going on with  
> > Git development?  do you use gitk?  if so, what options?
> 
> I get the impression from this thread that core Git developers don't make
> visualizing the repository a regular part of their development workflow.  Is
> that accurate?  What do you all do to keep tabs on Git development?

I don't know if I count as a core Git developer, but I do use gitk daily to track what goes into Junio's repo. My refs are organized something like:

  remotes/origin/* - tracking branches of Junio's git.git
  heads/jk/* - long running topics branched from master
  heads/next - Junio's next branch with short or temporary patches on top
My git day generally starts like this:
  git fetch ;# grab newly merged stuff
  gitk origin/next...next ;# see what's new
  git rebase origin/next ;# and bring ourselves up to date

You don't necessarily get to see all of the topic branches labeled individually, but generally you see each merged topic preceded by the 'Merge ...' commit.

For long running branches, I leave them alone until I'm ready to work on them. And then it's:

  git checkout jk/whatever
  gitk origin/master.. ;# what was I doing again?
  git rebase origin/master ;# should be clean if nobody else
                            # is touching the same area
And if the rebase isn't clean, then I investigate individual areas with:
  gitk --no-merges jk/whatever...origin/master problematic_file.c

So maybe that is a bit of a boring workflow description, but I do visualize with gitk all the time. I tend to do a lot of bug-hunting, too, for which I don't end up doing visualization. Instead, I almost always rely on asking more specific questions about content: blame (especially "tig blame"), bisect, and pickaxe ("git log -S").

-Peff
Previous: Joshua HabermanNext: Linus Torvalds
Message 7 of 9 in “visualizing Git's Git repo”
  1. Joshua HabermanMay 26, 2008
  2. Eric HanchrowMay 26, 2008
  3. Joshua HabermanMay 26, 2008
  4. Shawn O. PearceMay 26, 2008
  5. Björn SteinbrinkMay 27, 2008
  6. Joshua HabermanMay 27, 2008
  7. Jeff KingMay 27, 2008
  8. Linus TorvaldsMay 28, 2008
  9. Jakub NarebskiMay 28, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.