首页 > 解决方案 > 如何 git reset --hard并删除所有本地不相关的标签?

问题描述

假设我克隆了一个 repo 并且标签是

现在我做一个

git reset --hard v2.0

当然,最新的提交现在是 v2.0 并且代码已重置。但是当我给 a 时git tag,我仍然会得到

如何将 git 重置为 v2.0,以便将来的标签 v3.0 和 v4.0 也从本地删除?

这个的用例是什么?- 我必须计算当前标签和前一个标签。

上一个标签

echo $(git describe --abbrev=0 --tags `git rev-list --tags --skip=0 --max-count=2` | cut -c2- | sed '2q;d')

当前标签

echo $(git describe --abbrev=0 --tags `git rev-list --tags --skip=0 --max-count=2` | cut -c2- | sed '1q;d')

标签: git

解决方案


git reset将移动 HEAD,并且与现有标签无关。

您需要删除标签git tag -d

你可以:

第一个列表中的任何标签,但不是第二个列表中的任何标签都需要删除。


推荐阅读