Building tags is not pointless in the general case:
- A tag is not obliged to be on any specific branch, or be equal to any specific branch. E.g.
- You can create a branch, tag a commit on it, delete it, and push.
- Or tag a commit, make more commits to the branch, then push.
- Tag provides additional input to the build. E.g. you can extract version information from the tag, deploy only on tags (this is a very common practice since tags usually mark releases), do some custom things depending on tag value (e.g. deploy to different environments) etc.
If you wish to not build tags for your project, exclude them with a build condition:
if: tag IS blank