Lukas Fleischer <[email protected]> writes:
> In c9a42c4 (bundle: allow rev-list options to exclude annotated tags,
> 2009-01-02), we added a test to check whether annotated tags, which fall
> outside the specified date range, are excluded from bundles. However,
> when initializing the repository, a command to create a lightweight tag
> was used. Fix this by replacing `git tag` by `git tag -a`. Furthermore,
> explicitly mention in the test message that an annotated tag is created
> and also test whether tags within the specified date range are included
> properly.
>
> Note that this fix reveals that the annotated tag exclusion actually
> does not work. Therefore, the test is marked expect-failure for now.
>
> Signed-off-by: Lukas Fleischer <[email protected]>
> ---
> t/t5704-bundle.sh | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/t/t5704-bundle.sh b/t/t5704-bundle.sh
> index a45c316..2f063ea 100755
> --- a/t/t5704-bundle.sh
> +++ b/t/t5704-bundle.sh
> @@ -6,7 +6,7 @@ test_description='some bundle related tests'
> test_expect_success 'setup' '
> test_commit initial &&
> test_tick &&
> - git tag -m tag tag &&
> + git tag -am tag tag &&
I'd prefer to see this spelled as "-a -m tag", but anyway,
this suggests to me that a request to create a light-weight tag
should be made to error out when -m is given, or automatically
promote itself to create an annotated tag, perhaps? That is in line
with what happens when you do "git tag -F <file> tagname".
Oh, wait.
$ git tag -d foo
$ git rev-parse refs/tags/foo --
fatal: bad revision 'refs/tags/foo'
$ git tag -m msg foo
$ git cat-file -t refs/tags/foo
tag
$ git cat-file tag refs/tags/foo
object d84843c...
type commit
tag foo
tagger Junio ....
msg
$ git version
git version 2.1.0-rc0-247-g66c8a75
The output from "git blame -L'/^int cmd_tag/,/^}/' builtin/tag.c"
seems to indicate that we automatically turned annotate on when a
message is given via -m or -F since the very first version of "git
tag" that was re-implemented in C, i.e. 62e09ce9 (Make git tag a
builtin., 2007-07-20).
Your analysis starts to sound fishy. What version of Git are you
talking about?
> test_commit second &&
> test_commit third &&
> git tag -d initial &&
> @@ -14,7 +14,10 @@ test_expect_success 'setup' '
> git tag -d third
> '
>
> -test_expect_success 'tags can be excluded by rev-list options' '
> +test_expect_failure 'annotated tags can be excluded by rev-list options' '
> + git bundle create bundle --all --since=7.Apr.2005.15:14:00.-0700 &&
> + git ls-remote bundle > output &&
> + grep tag output &&
> git bundle create bundle --all --since=7.Apr.2005.15:16:00.-0700 &&
> git ls-remote bundle > output &&
> ! grep tag output
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html