{"thread":{"id":"9250","subject":"gitk screenshots of complex history","startedAt":"2007-07-27T04:13:01Z","lastAt":"2007-07-27T13:52:38Z","messageCount":5,"participants":["Shawn O. Pearce","Linus Torvalds","David Kastrup","Brian Downing"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"48751","messageId":"20070727041300.GD20052@spearce.org","threadId":"9250","inReplyTo":null,"subject":"gitk screenshots of complex history","fromName":"Shawn O. Pearce","fromEmail":"spearce@spearce.org","sentAt":"2007-07-27T04:13:01Z","receivedAt":"2007-07-27T04:13:01Z","isPatch":false,"sender":{"key":"spearce@spearce.org","avatar":"https://avatars.githubusercontent.com/u/34844?v=4"},"body":"I've mentioned both on list and on #git that one of my production\nrepositories has a few weird points in time.  Some folks have asked\nto see at least screenshots of the line part of the gitk output,\nas apparently they've never seen ugly history in Git.  Lucky them.\n\nThe images are rather large so I have posted them on my website\nwith a bit longer explanation of each:\n\n  http://www.spearce.org/2007/07/difficult-gitk-graphs.html\n\n\nI just compared my own history to Linus' linux-2.6 history.\nThe kernel team can't hold a candle to this mess.  Remember,\nthis is *with* me involved in the project on a daily basis.  Me.\nSomeone who knows Git fairly well...\n\nOK, no more screenshots from *that* repository!  I don't ever want\nto run `gitk --all` there again.  Ever.\n\nPS: The really interesting data (subject lines, authors, dates)\nhas all been redacted from the images.  I can't publish that stuff.\n\n-- \nShawn.\n"},{"id":"48760","messageId":"alpine.LFD.0.999.0707262219210.3442@woody.linux-foundation.org","threadId":"9250","inReplyTo":"20070727041300.GD20052@spearce.org","subject":"Re: gitk screenshots of complex history","fromName":"Linus Torvalds","fromEmail":"torvalds@linux-foundation.org","sentAt":"2007-07-27T05:20:25Z","receivedAt":"2007-07-27T05:20:25Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\n\nOn Fri, 27 Jul 2007, Shawn O. Pearce wrote:\n> \n> I just compared my own history to Linus' linux-2.6 history.\n> The kernel team can't hold a candle to this mess.\n\nRather on purpose, I might add. I've actually been fairly anal about \nhaving people maintain clean histories, to the point where I refuse to \npull from trees that don't do a good enough job.\n\n\t\t\tLinus\n"},{"id":"48763","messageId":"20070727052934.GH20052@spearce.org","threadId":"9250","inReplyTo":"alpine.LFD.0.999.0707262219210.3442@woody.linux-foundation.org","subject":"Re: gitk screenshots of complex history","fromName":"Shawn O. Pearce","fromEmail":"spearce@spearce.org","sentAt":"2007-07-27T05:29:34Z","receivedAt":"2007-07-27T05:29:34Z","isPatch":false,"sender":{"key":"spearce@spearce.org","avatar":"https://avatars.githubusercontent.com/u/34844?v=4"},"body":"Linus Torvalds <torvalds@linux-foundation.org> wrote:\n> On Fri, 27 Jul 2007, Shawn O. Pearce wrote:\n> > \n> > I just compared my own history to Linus' linux-2.6 history.\n> > The kernel team can't hold a candle to this mess.\n> \n> Rather on purpose, I might add. I've actually been fairly anal about \n> having people maintain clean histories, to the point where I refuse to \n> pull from trees that don't do a good enough job.\n\nFor 4 of our internal repositories I've taken that policy up now\nmyself, and nobody is allowed to create releases from them except me.\nThis has helped.  A lot.  So does sensible use of `git rebase -i`.\nYou and Junio have really sold me on the value of having someone\nplay a very strict gatekeeper role.  I get better work product from\nmy coworkers this way too.  They know someone else is looking at\nwhat they are doing and try harder.\n\nBut it doesn't help the really old history, nor does it help\nthe repository these images came from.  I don't own/control that\ndevelopment.  I just provide git help as much as I can.\n\n-- \nShawn.\n"},{"id":"48769","messageId":"85k5sm5rbw.fsf@lola.goethe.zz","threadId":"9250","inReplyTo":"20070727052934.GH20052@spearce.org","subject":"Re: gitk screenshots of complex history","fromName":"David Kastrup","fromEmail":"dak@gnu.org","sentAt":"2007-07-27T05:49:23Z","receivedAt":"2007-07-27T05:49:23Z","isPatch":false,"sender":{"key":"dak@gnu.org","avatar":"https://avatars.githubusercontent.com/u/52141349?v=4"},"body":"\"Shawn O. Pearce\" <spearce@spearce.org> writes:\n\n> Linus Torvalds <torvalds@linux-foundation.org> wrote:\n>> On Fri, 27 Jul 2007, Shawn O. Pearce wrote:\n>> > \n>> > I just compared my own history to Linus' linux-2.6 history.\n>> > The kernel team can't hold a candle to this mess.\n>> \n>> Rather on purpose, I might add. I've actually been fairly anal about \n>> having people maintain clean histories, to the point where I refuse to \n>> pull from trees that don't do a good enough job.\n>\n> For 4 of our internal repositories I've taken that policy up now\n> myself, and nobody is allowed to create releases from them except me.\n> This has helped.  A lot.  So does sensible use of `git rebase -i`.\n> You and Junio have really sold me on the value of having someone\n> play a very strict gatekeeper role.  I get better work product from\n> my coworkers this way too.  They know someone else is looking at\n> what they are doing and try harder.\n>\n> But it doesn't help the really old history, nor does it help\n> the repository these images came from.  I don't own/control that\n> development.  I just provide git help as much as I can.\n\nOne idea I have not yet put into any code is using graphviz for\ncreating a nice (possibly clickable) layout of a commit history.  It\nmight be able to rearrange things such that the long parallel lines\nget avoided.  Could be an interesting feature for the HTML\nvisualizers.\n\n-- \nDavid Kastrup, Kriemhildstr. 15, 44793 Bochum\n"},{"id":"48799","messageId":"20070727135238.GW21692@lavos.net","threadId":"9250","inReplyTo":"20070727041300.GD20052@spearce.org","subject":"Re: gitk screenshots of complex history","fromName":"Brian Downing","fromEmail":"bdowning@lavos.net","sentAt":"2007-07-27T13:52:38Z","receivedAt":"2007-07-27T13:52:38Z","isPatch":false,"sender":{"key":"bdowning@lavos.net","avatar":"https://avatars.githubusercontent.com/u/366426?v=4"},"body":"On Fri, Jul 27, 2007 at 12:13:01AM -0400, Shawn O. Pearce wrote:\n> I've mentioned both on list and on #git that one of my production\n> repositories has a few weird points in time.  Some folks have asked\n> to see at least screenshots of the line part of the gitk output,\n> as apparently they've never seen ugly history in Git.  Lucky them.\n> \n> The images are rather large so I have posted them on my website\n> with a bit longer explanation of each:\n> \n>   http://www.spearce.org/2007/07/difficult-gitk-graphs.html\n \n> OK, no more screenshots from *that* repository!  I don't ever want\n> to run `gitk --all` there again.  Ever.\n\nWere those graphs generated with --topo-order (the default) or\n--date-order?  I've found complex history usually looks a lot more\nmanageable with --date-order.  Certainly the Git history is a LOT less\nwide with --all --date-order than --all.\n\nDoes this help your situation as well?\n\n-bcd\n"}]}