{"thread":{"id":"46565","subject":"git-describe --contains","startedAt":"2017-08-11T06:50:19Z","lastAt":"2017-08-13T06:39:44Z","messageCount":4,"participants":["Davide Cavallari","Nicolas Morey-Chaisemartin","Andreas Schwab"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"326127","messageId":"CANOKeme4j9fHuQoQY3MQeoNuietjez8m1wPkAO=1eSDtHG3J9w@mail.gmail.com","threadId":"46565","inReplyTo":null,"subject":"git-describe --contains","fromName":"Davide Cavallari","fromEmail":"davide.cavallari@gmail.com","sentAt":"2017-08-11T06:50:08Z","receivedAt":"2017-08-11T06:50:19Z","isPatch":false,"sender":{"key":"davide.cavallari@gmail.com","avatar":null},"body":"Please help me understand how this command works. There is one case in the\nlinux kernel repository that puzzles me. Let's consider patch \"drm/i915/\nexeclists: Reset RING registers upon resume\" [1]. This patch was committed 641\ncommits after version 4.8-rc2:\n\n~$ git describe bafb2f7d4755bf1571bd5e9a03b97f3fc4fe69ae\nv4.8-rc2-641-gbafb2f7d4755\n\nSo I would expect to find it in version 4.8-rc3 and later versions.\n\nHowever, if I search for the tag that follows (and hence contains) that\ncommit, I do not find version 4.8-rc3, nor version 4.8, nor version 4.9, but\n4.10-rc1:\n\n~$ git describe --contains bafb2f7d4755bf1571bd5e9a03b97f3fc4fe69ae\nv4.10-rc1~154^2~44^2~178\n\nWhy? Why not v4.8-rc3? This means that the patch has been included neither in\nv4.8 nor in v4.9, but only in version 4.10-rc1, right? Why so much time was\nneeded, considering it was the 621st commit on top ov v4.8-rc2?\n\nBTW, what are the numbers 154^2~44^2~178 that follow the tag name?\n\nThanks & Regards,\n   Davide\n\n[1] https://patchwork.freedesktop.org/patch/111587/\n"},{"id":"326139","messageId":"476ddcbb-6d66-bc6b-5fbd-aa43851dec30@suse.de","threadId":"46565","inReplyTo":"CANOKeme4j9fHuQoQY3MQeoNuietjez8m1wPkAO=1eSDtHG3J9w@mail.gmail.com","subject":"Re: git-describe --contains","fromName":"Nicolas Morey-Chaisemartin","fromEmail":"nmoreychaisemartin@suse.de","sentAt":"2017-08-11T09:12:04Z","receivedAt":"2017-08-11T09:12:11Z","isPatch":false,"sender":{"key":"nmoreychaisemartin@suse.de","avatar":"https://gravatar.com/avatar/5546322ccb9067f56b6939d9d5c758a40cab5b978b1379fd6ec8ab9b8a6a12b1?d=mp&s=160"},"body":"\n\nLe 11/08/2017 à 08:50, Davide Cavallari a écrit :\n> Please help me understand how this command works. There is one case in the\n> linux kernel repository that puzzles me. Let's consider patch \"drm/i915/\n> execlists: Reset RING registers upon resume\" [1]. This patch was committed 641\n> commits after version 4.8-rc2:\n>\n> ~$ git describe bafb2f7d4755bf1571bd5e9a03b97f3fc4fe69ae\n> v4.8-rc2-641-gbafb2f7d4755\n>\n> So I would expect to find it in version 4.8-rc3 and later versions.\n>\n> However, if I search for the tag that follows (and hence contains) that\n> commit, I do not find version 4.8-rc3, nor version 4.8, nor version 4.9, but\n> 4.10-rc1:\n>\n> ~$ git describe --contains bafb2f7d4755bf1571bd5e9a03b97f3fc4fe69ae\n> v4.10-rc1~154^2~44^2~178\n>\n> Why? Why not v4.8-rc3? This means that the patch has been included neither in\n> v4.8 nor in v4.9, but only in version 4.10-rc1, right? Why so much time was\n> needed, considering it was the 621st commit on top ov v4.8-rc2?\n\nBecause it was not in v4.8-rc3.\nThis probably means it was applied on a branch that started from somewhere between 4.8-rc2 and 4.8-rc3 but it was only merge into master after v4.9 was released\n\n\n>\n> BTW, what are the numbers 154^2~44^2~178 that follow the tag name?\n\nThis is due to merges. You have basically a roadmap to go up the ancestry graph.\n~154 means 154 commit before the tag\n^2 means the 2nd parent of this commit.\nand so on...\n\nThe format is detailed (among other tings) in man gitrevisions\n\nNicolas\n\n"},{"id":"326140","messageId":"87shgyh2a3.fsf@linux-m68k.org","threadId":"46565","inReplyTo":"CANOKeme4j9fHuQoQY3MQeoNuietjez8m1wPkAO=1eSDtHG3J9w@mail.gmail.com","subject":"Re: git-describe --contains","fromName":"Andreas Schwab","fromEmail":"schwab@linux-m68k.org","sentAt":"2017-08-11T09:39:00Z","receivedAt":"2017-08-11T09:39:09Z","isPatch":false,"sender":{"key":"schwab@linux-m68k.org","avatar":"https://avatars.githubusercontent.com/u/2175493?v=4"},"body":"On Aug 11 2017, Davide Cavallari <davide.cavallari@gmail.com> wrote:\n\n> Please help me understand how this command works. There is one case in the\n> linux kernel repository that puzzles me. Let's consider patch \"drm/i915/\n> execlists: Reset RING registers upon resume\" [1]. This patch was committed 641\n> commits after version 4.8-rc2:\n>\n> ~$ git describe bafb2f7d4755bf1571bd5e9a03b97f3fc4fe69ae\n> v4.8-rc2-641-gbafb2f7d4755\n>\n> So I would expect to find it in version 4.8-rc3 and later versions.\n>\n> However, if I search for the tag that follows (and hence contains) that\n> commit, I do not find version 4.8-rc3, nor version 4.8, nor version 4.9, but\n> 4.10-rc1:\n>\n> ~$ git describe --contains bafb2f7d4755bf1571bd5e9a03b97f3fc4fe69ae\n> v4.10-rc1~154^2~44^2~178\n>\n> Why? Why not v4.8-rc3? This means that the patch has been included neither in\n> v4.8 nor in v4.9, but only in version 4.10-rc1, right? Why so much time was\n> needed, considering it was the 621st commit on top ov v4.8-rc2?\n\nYou have to ask that the maintainers of the drm subsystem.  If you look\nat commit 5481e27f6fd06b7cb902072e81d6b083db8155eb you see that the\nbranch containing the above commit was merged into a branch that follows\nv4.9-rc2, which eventually was merged into v4.10-rc1.\n\n> BTW, what are the numbers 154^2~44^2~178 that follow the tag name?\n\nSee git-rev-parse(1).  '~N' means to go back N parents, ^N means to pick\nparent N of a merge commit.\n\nAndreas.\n\n-- \nAndreas Schwab, schwab@linux-m68k.org\nGPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5\n\"And now for something completely different.\"\n"},{"id":"326236","messageId":"CANOKemdSA0OgaLosQ6ez=YPGJWOCCax6qQ5s=XSv1DQ4DwuMUw@mail.gmail.com","threadId":"46565","inReplyTo":"CANOKemc32rreg5TVYdxYQ=te1a-wv5PeOPwGfX3Sye0gPQPC=Q@mail.gmail.com","subject":"Re: git-describe --contains","fromName":"Davide Cavallari","fromEmail":"davide.cavallari@gmail.com","sentAt":"2017-08-13T06:39:35Z","receivedAt":"2017-08-13T06:39:44Z","isPatch":false,"sender":{"key":"davide.cavallari@gmail.com","avatar":null},"body":"Thanks Andreas and Nicholas, I'll check it out.\n"}]}