Re: Git Tags
- Date: Thu, 29 Nov 2018 16:09:57 +0100
- From: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx>
- Subject: Re: Git Tags
On Thu, Nov 29 2018, Stefanie Leisestreichler wrote:
> I have done this (on box A):
> git commit -m "Message"
> git tag -a 0.9.0
> git push origin master
> In my local repository, when I run "git tag" it is showing me "0.9.0".
> Then I did (on box B)
> git clone ssh://user@host:/path/project.git
> cd project
> git tag
> Now git tag is showing nothing.
> Why is the tag only available in my local repository?
> Also when I try to
> git clone --branch 0.9.0 ssh://user@host:/path/project.git
> it tells me: fatal:remote branch not found in upstream repository origin
Because --branch <name> means get refs/heads/<name>, tags are not
branches. However, because we're apparently quite loose about this in
the clone/fetch code this does give you the tag if it exists, but
probably not in the way you expect.
We interpret the argument as a branch, and will get not only this tag
but "follow" (see --no-tags in git-fetch(1)) the tag as though it were a
branch and give you all tags leading up to that one. This would give you
a single tag:
git clone --no-tags --branch v2.19.0 --single-branch https://github.com/git/git.git
But this is a more direct way to do it:
git init git; git -C git fetch --no-tags https://github.com/git/git.git tag v2.19.0
Which'll since you said it failed that's because you haven't pushed the
tag. Try 'git ls-remote <url>' to see if it's there (it's not).