As discussed on the git email list [1] with the subject "Fetching tags overwrites existing tags" there is a bug where fetching tags can overwrite existing tags. Ævar Arnfjörð Bjarmasono, has created a patch series [2] which requires a '--force' flag when fetching if the user actually wants to overwrite any existing flags. This patch series allows tags in remotes to be placed in a sub hierarchy, refs/remote-tags when "git remote add" is passed the --remote-tags option. The patch series also modifies tag so "git tag -l" will list tags in refs/remote-tags properly. It also test for "git remote add" which uses "git tag -l". [1]: https://public-inbox.org/git/xmqqbme51rgn.fsf@xxxxxxxxxxxxxxxxxxxxxxxxx/T/#m4928340a9f49c6ffa9db5b94243e46df6958eaa5 [2]: https://public-inbox.org/git/xmqqbme51rgn.fsf@xxxxxxxxxxxxxxxxxxxxxxxxx/T/#mb68d54667a9ad8eee60a22ebdf2264f8022d07a8 Wink Saville (3): Teach remote add the --remote-tags option Teach tag to list remote-tags Test git remote add -f --remote-tags Documentation/git-remote.txt | 8 +++++-- builtin/remote.c | 44 ++++++++++++++++++++++++++++++++---- builtin/tag.c | 2 +- ref-filter.c | 9 ++++++-- ref-filter.h | 11 +++++---- refs.c | 1 + remote.c | 2 ++ t/t5505-remote.sh | 20 ++++++++++++++++ 8 files changed, 83 insertions(+), 14 deletions(-) -- 2.17.0.393.g4573f5e134