Remote Tag support

Marc Strapetz 2 years ago updated by Thomas Singer 2 years ago 1

Git itself does not have "remote tags" as an explicit concept but one can workaround it by introducing custom refs, like 'rtags'. This basically requires to add an additional fetch-refspec like:

[remote "origin"]
  fetch = +refs/tags/*:refs/rtags/origin/*

This makes Git always reflect and update the server-side state of tags on pulls and pushes.

Now, SmartGit could interpret this special "rtags" refs and apply the same logic to it as it does for remote and local branches:

- evaluate ahead/behind/diverged state for tags

- in the Log, have puzzle-piece display of tags

- forced-push checks for tags

- ...

I wouldn't got that far with ahead/behind jigsaw pieces. Just the information whether a tag exists locally and remotely as well as equal/different would be enough for the majority of the use cases.