Short story:
we are now using *annotated* tags in a way that we would need to manage (remove) them easily. It would be usefull to have one of the folowing in "git tag":

1) git tag --delete-tags-to-danglings-and-unnamed-banches

This would be able to remove all tags that refers to commits which are on branches that are no more referenced by any branch name. This is happening when you tag something, then "git rebase". Your tag will still be there on the old-and-before-rebase branch and won't be "pruned" by any git command... (that I know of...)

Then you will end up to delete all of them "by hand"...

to do so you would like to have:

2) git tag -d "TOKEN*"

This would be able to delete all tags referred by the name.
Ok ok, I can do this like this:

rm .git/refs/tags/TOKEN*

but why have the git users "play" into the .git...?


Long story:

We started using annotated tags to hold information about the code "status", ie the results of our regression tests are stored in annotated tags each time you do a "make test" in the distribution. We can retrieve the information by "git show" which we aliased to parse the output, extract the ".html" that we stored in the tag message (about 67kb) and then display the "make test" results as a web page in a browser... ;-)

We also "resume" the information on the number of "(P)assed" and "(F)ailed" tests in the tag name to quickly view the overall status of the code in the local clone. For example, we end up with tags name like these:


as a result of: SQA_${USER}_${SHA}_P_${PASSED}_F_${FAILED}

However, the number of tags increases as you do many "make test" to validate your developments and see the progressions you do.

Moreover, when you "git fetch" from colleagues, you retrieve their annotated tags too, which is nice, since you can view the results of the regression tests they have done, which can contain useful information to share...

BUT, when your colleagues delete their old tags because they rebased, you don't have the possibility to "git fetch --prune-tags", so you are left with all those "old" tags hanging all around and would like to easily remove them...

Because you know that no more branches are associated with the tip commit of all those "old-before-rebased-branches", you would like something like feature request #1 to automagically do the job you do by hand in feature request #2... ;-)

Ok, we shall not rebase but merge, but this is another long story... ;-)

Hope all this might be useful to other, so if other people start using tags like this, more will hope to have these features... ;-)


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

Reply via email to