pull: fix handling of annotated tags with -r/--rev
pull: fix handling of annotated tags with -r/--rev
When pulling with -r/--rev, we should only add any annotated tags that actually exist in the repository. In particular, if -r/--rev specifies a branch, and an annotated tag points to something in that branch, we should either:
- Pull the annotated tag properly, i.e. including its tag object.
- Disregard the tag.
What we shouldn't do is our current behaviour:
- Pull the tag as a simple tag, i.e. a tag pointing directly to the commit.
This also adjusts the annotated tags test in a separate commit: Currently, the attempt to pushing an annotated tag merely masks an error, as the commit in question actually also changes the tag. Move it to a separate branch, so that we can push the annotated tag back again later.