From: Jakub Narębski Date: Tue, 19 Jul 2016 16:03:22 GMT Subject: Re: [PATCH v3 4/8] doc: give headings for the two and three dot notations Message-ID: <578E4F4A.2020708@gmail.com> In-Reply-To: W dniu 2016-07-13 o 00:11, Philip Oakley pisze: > From: "Junio C Hamano" [...] >> I actually think this is a good place to have them described. >> ^ is about specifying a single commit. These two are >> not that (you can say HEAD^2^@ but you cannot say HEAD^@^2, for >> example). > > These two are special cases I'm not too familiar with, particularly > the r1^! which I didn't understand from the description... ^@ is all parents of , that is ^@ == ^1 ^2 ... ^ where is number of parents commit has. ^! is (if standalone) a single commit range, only revision. It is actually ^! == ( --not ^@ ) that is, reachable from but not from any of its parents. Parentheses here denote that `--not` does not affect the rest of rev-like parameters. Hope that helps -- Jakub Narębski