{"thread":{"id":"3878","subject":"log/diff option parsing unification","startedAt":"2006-04-15T12:04:40Z","lastAt":"2006-04-15T12:04:40Z","messageCount":1,"participants":["Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"18693","messageId":"7vk69rgi3r.fsf@assigned-by-dhcp.cox.net","threadId":"3878","inReplyTo":null,"subject":"log/diff option parsing unification","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2006-04-15T12:04:40Z","receivedAt":"2006-04-15T12:04:40Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Linus,\n\nI kept your log/diff option parsing stuff with a few fixups for\nabout 3 hours in the \"next\" branch, but dropped and replaced\nthem with an alternative with lesser impact.  I freely admit\nthat what you write is nicer and cleaner than what I do 99.9% of\nthe time, but I think this time it is justified.  We have been\ntelling people that their scripts can expect certain output\nformat out of the lowest level Plumbing such as rev-list and\ndiff-tree.  I just do not want to break it, and doing things\nwith very unified way seemed to be too much hassle to keep\neverything compatible.\n\nOn the other hand, I am much more relaxed if 'git-log' and\n'git-whatchanged' output are not bit-for-bit identical to their\nshell script versions.  You (not \"Linus, you\" but figuratively\nyou) would be crazy if you have been feeding their output to\nyour own scripts with such an expectation.  The rule-of-thumb I\napply here is that anything that has built-in pager is primarily\nfor human consumption, and the stability of its output format is\na fair game, especially when the modified behaviour results in\nbetter output for humans.\n\nI might regret this later when we try to do the internal \"git\ndiff\", but it is already tomorrow morning now, so I'll crash\nfirst.\n\nThis option parsing unification will be post 1.3.0, but it is\nimportant enough that I suspect it will be the first topic to be\nmerged and disrupt the \"master\" branch for a while after 1.3.0.\n"}]}