Re: Trouble with cat-file on tags
On Fri, Apr 01, 2016 at 12:00:44PM +0200, Sebastian Schuberth wrote: > This means > > $ git cat-file tag refs/tags/v0.1.2 > > displays the *contents* of the tag, not the tag itself. Right. `cat-file` is about looking at object content. > Which leads me to > the next question: For a given name of an annotated tag, how to get the hash > of the tag object? The solution I found for now: > > $ git show-ref --tags -- v0.1.2 > 92b67e2b0626519ef8cd4e9cacb2bdafba6d53f0 refs/tags/v0.1.2 Here you just want to resolve the ref, without looking at the object. The canonical way is: git rev-parse --verify v0.1.2 You can also use that to peel the tag to a commit, or a commit to a tree (e.g., with "v0.1.2^{commit}"). -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: Trouble with cat-file on tags
On 4/1/2016 11:32, Sebastian Schuberth wrote: However, I still get information about the commit oject iintsead of the tag object. Is this expected? Solved this one, too: Yes it is. I was misreading the docs: "If is specified, the raw (though uncompressed) contents of the will be returned." This means $ git cat-file tag refs/tags/v0.1.2 displays the *contents* of the tag, not the tag itself. Which leads me to the next question: For a given name of an annotated tag, how to get the hash of the tag object? The solution I found for now: $ git show-ref --tags -- v0.1.2 92b67e2b0626519ef8cd4e9cacb2bdafba6d53f0 refs/tags/v0.1.2 Regards, Sebastian -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: Trouble with cat-file on tags
On 4/1/2016 11:26, Sebastian Schuberth wrote: ---8<--- $ git tag test-tag $ git tag -l test-tag v0.0.3 v0.0.4 v0.1.0 v0.1.1 v0.1.2 $ git cat-file tag refs/tags/test-tag fatal: git cat-file refs/tags/test-tag: bad file ---8<--- Alright, I just found out why that is: Lighweight tags are not stored as Git objects. As soon as I make it an annoted tag by specifying a message, "cat-file tag" do esnot display a fatal error anymore. However, I still get information about the commit oject iintsead of the tag object. Is this expected? Regards, Sebastian -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Trouble with cat-file on tags
Hi, I was trying to use cat-file to get the hash of a tag object (not the hash of the commit object the tag points to), and I'm running into some issues. At the example of a cloned gerry [1] repository: ---8<--- $ git tag test-tag $ git tag -l test-tag v0.0.3 v0.0.4 v0.1.0 v0.1.1 v0.1.2 $ git cat-file tag refs/tags/test-tag fatal: git cat-file refs/tags/test-tag: bad file ---8<--- So for a newly created local tag, cat-file does not seem to work. However: ---8<--- $ git cat-file tag refs/tags/v0.1.2 object 91b0d21eba039e5ba0a90104c9c485735576dcbf type commit tag v0.1.2 tagger Travis Truman1452693317 -0500 Version 0.1.2 ---8<--- For an existing tag, git-file suddenly *does* seem to work, although I'm puzzled why I'm getting info on the commit object here. I thought "cat-file tag" should explicitly make "cat-file" list information about the tag object itself, not about the commit object the tag points to. Thoughts? [1] https://github.com/trumant/gerry Regards, Sebastian -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html