Re: [PATCH 2/4] glossary: define committish (a.k.a. commit-ish)
- From
Ramkumar Ramachandra <artagnon@gmail.com>
- Date
- Jun 19, 2013, 05:56 UTC
- Message-ID
- <CALkWK0=-PT=QD5enFQhrDZN03xCAttZKtjtT8rE7n4QynT+Ndg@mail.gmail.com>
- In-Reply-To
- <51C135BE.4030506@bbn.com>
Richard Hansen wrote:
> On 2013-06-19 00:19, Ramkumar Ramachandra wrote: >> Is master~3 a committish? What about :/foomery? > > Yes; as documented, both of those are refs that point to a commit.
>From gitglossary(7):
ref
A 40-byte hex representation of a SHA-1 or a name that denotes a
particular object. They may be stored in a file under $GIT_DIR/refs/
directory, or in the $GIT_DIR/packed-refs file.Do master~3 and :/foomery qualify as refs?
Show 8 quoted lines
>> Look at the other forms in gitrevisions(7); master:quuxery,
>> master^{tree} are notable exceptions.
>
> gitrevisions(7) says that master:quuxery is a ref pointing to a blob or
> tree, so it is not a committish. However, if quuxery is a submodule, I
> would expect master:quuxery to point to a commit object and thus be a
> committish. So perhaps the <rev>:<path> description in gitrevisions(7)
> should be updated to accommodate submodules.When quuxery is a submodule, master:quuxery refers to a commit object that does not exist in the parent repository. I don't know what we gain by documenting a comittish you can't even `show`.