Как удалить все локальные теги репозитория?

Можно ли удалить все теги из локального репозитория?

Кажется, у меня есть возможность удалить один за другим, например:

git tag tag_name --delete

или удалить те, которые не на пульте дистанционного управления :

git fetch --prune --prune-tags

Но независимо от меток пульта? То есть, например, если у нас не было доступа к этому

2
задан 30.11.2019, 14:11
1 ответ

1. Удалять все локальные этикетки. (Опциональный рекомендуемый)

git tag -d $(git tag -l)

2. Получите все этикетки удаленного контроля. (Опциональный рекомендуемый)

git fetch

3. Удалять все удаленные этикетки.

git push origin --delete $(git tag -l) # Pushing once should be faster than multiple times


Может получать список удаленных этикеток в travГ©s от git ls-remote. Чтобы перечислять этикетки в хранилище, на которое он ссылается origin, он должен выполнять:

git ls-remote --tags origin

Это возвращает список hashes и имена дружеских этикеток, как:

94bf6de8315d9a7b22385e86e1f5add9183bcb3c        refs/tags/v0.1.3
cc047da6604bdd9a0e5ecbba3375ba6f09eed09d        refs/tags/v0.1.4
...
2f2e45bedf67dedb8d1dc0d02612345ee5c893f2        refs/tags/v0.5.4

Действительно, podrГ, - чтобы вооружать рукописный шрифт bash, чтобы сравнивать этикетки, произведенные этим списком с этикетками, которые у него есть локально. Бросьте беглый взгляд в git show-ref --tags, который производит имена этикеток в той же форме, что и git ls-remote).

Как абзац, git show-ref одна opciГіn, что делает противоположность того, что он gustarГ - в. Следующая команда enumerarГ - во все этикетки в удаленной ветви, которой у него нет локально:

git ls-remote --tags origin | git show-ref --tags --exclude-existing

Шрифт:

How to remove all git origin and помещение tags?

Remove помещение git tags that пахало не longer on the переизречение repository Добавочные

, проверьте этот ответ tambiГ©n интересен.

3
ответ дан 01.12.2019, 10:33
  • 1
    Первая команда - тот, который искал, удаляет все локальные этикетки без какой-либо другой consideració n git tag -d $(git tag -l) Большое спасибо. – Orici 30.11.2019, 14:32
  • 2
    Он радует меня, что он подал тебя, это хорошая одна opció n tambié n: $ git tag -d $(git tag) – J. Rodríguez 30.11.2019, 14:36
  • 3
    Sí я это подумал. Я обычно использую git tag, чтобы заносить в список, хотя git tag -l или git tag --list - má s описательные, как пример, так как сочетаются две команды. – Orici 30.11.2019, 14:41

Теги

Похожие вопросы