ger*_*d00 24
从Git 2.2.0开始,您需要显式指定force标志:
git fetch origin --tags --force
在Git 2.20之前,与使用git-push [1]推送时不同,在refspec(或--force)中不带+的任何对refs / tags / *的更新都将被接受。提取时,我们混杂地认为来自远程的所有标签更新都是强制提取。从Git 2.20版本开始,获取更新refs / tags / *的方式与推送时相同。也就是说,任何更新将在refspec(或--force)中不带+的情况下被拒绝。
git fetch --tags 会做的。
从文档(--tags参数说明):
大多数标签会在下载分支头时自动获取,但此机制不会获取不指向可从正在跟踪的分支头到达的对象的标签。此标志允许下载所有标签及其关联对象。远程的默认行为可以通过 remote.<name>.tagopt 设置指定。
根据 gerrard00 的回答,该--force参数是覆盖 git Ver2.20 或更高版本中的本地标签所必需的。(完整的命令是git fetch --tags --force)