{"thread":{"id":"25665","subject":"[PATCH] fixup in git log's history simplification example","startedAt":"2010-11-07T22:51:05Z","lastAt":"2010-11-07T22:51:05Z","messageCount":1,"participants":["Benjamin Poirier"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"155351","messageId":"1289170265-994-1-git-send-email-benjamin.poirier@polymtl.ca","threadId":"25665","inReplyTo":null,"subject":"[PATCH] fixup in git log's history simplification example","fromName":"Benjamin Poirier","fromEmail":"benjamin.poirier@polymtl.ca","sentAt":"2010-11-07T22:51:05Z","receivedAt":"2010-11-07T22:51:05Z","isPatch":true,"sender":{"key":"benjamin.poirier@polymtl.ca","avatar":null},"body":"According to the description in git-log(1), at E, foo's content is\n\"asdf\" and at P it is \"foobarbaz\". Therefore, a diff filtered for foo\nbetween E and P is non-empty and P is !TREESAME to E.\n\nCorrect the statement regarding that in the example.\n\nSigned-off-by: Benjamin Poirier <benjamin.poirier@polymtl.ca>\nCc: Thomas Rast <trast@student.ethz.ch>\n---\nIt's a small change but I confirmed it by creating a repository with the\ncommits from the example. It can be accessed at:\n\tgit clone git://github.com/benthaman/git-doc-hs_example.git\n\nI also tested that the rest of the example is accurate nevertheless.\n\nThe claim that P and E are !TREESAME is supported by the following\noperations:\n1)\nA diff filtered for foo between E and P is non-empty, therefore they\nare !TREESAME:\n\t$ git diff :/E :/P -- foo\n\tdiff --git a/foo b/foo\n\tindex 8bd6648..b33c138 100644\n\t--- a/foo\n\t+++ b/foo\n\t@@ -1 +1 @@\n\t-asdf\n\t+foobarbaz\n\n2)\n\t$ git log --sparse --oneline master -- foo\n\tb0ee555 P\n\tc930763 O\n\t6282898 D\n\t5cb421e N\n\td7c4f29 C\n\tfc9e858 M\n\t6be6304 A\n\te06936d I\n\nE is not included because it is !TREESAME, as the documentation for\n'--sparse' predicts:\n\t\"Note that without --full-history, this still simplifies merges: if\n\tone of the parents is TREESAME, we follow only that one, so the\n\tother sides of the merge are never walked.\"\n---\n Documentation/rev-list-options.txt |    5 +++--\n 1 files changed, 3 insertions(+), 2 deletions(-)\n\ndiff --git a/Documentation/rev-list-options.txt b/Documentation/rev-list-options.txt\nindex 7a42567..46b98a0 100644\n--- a/Documentation/rev-list-options.txt\n+++ b/Documentation/rev-list-options.txt\n@@ -436,8 +436,9 @@ each merge.  The commits are:\n   `N` and `D` to \"foobarbaz\"; i.e., it is not TREESAME to any parent.\n \n * `E` changes `quux` to \"xyzzy\", and its merge `P` combines the\n-  strings to \"quux xyzzy\".  Despite appearing interesting, `P` is\n-  TREESAME to all parents.\n+  strings to \"quux xyzzy\".  `P` is TREESAME to `O` and !TREESAME to\n+  `E`.\n+\n \n 'rev-list' walks backwards through history, including or excluding\n commits based on whether '\\--full-history' and/or parent rewriting\n-- \n1.7.2.3\n"}]}