すべてのgitオリジンとローカルタグを削除するにはどうすればよいですか?


99

すでにプッシュされているgitタグをどのように削除しますか?すべてのgitremote(origin)タグを削除し、すべてのgitlocalタグを削除します。

回答:


245

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

4.すべてのローカルタグを削除します。

git tag -d $(git tag -l)

1
「引数リストが長すぎます」というエラーメッセージが表示された場合は、タグをクリアしようとしている場合に発生する可能性があります。使用git tag -d $(git tag -l | head 100)
rocketspacer 2018

1
オプション1と4の違いは何ですか?どちらもgit tag -d $(git tag -l)です。
MichaelOzeryansky19年

2
1)すべてのローカルタグをクリアします2)すべてのリモートタグを取得して、リモートタグの完全なリストをローカルに提供します3)ローカルリストを参照してリモートタグを削除します4)ステップ2からローカルタグを削除します
senteceFeb

1
私が上だと思う3.それがあるべきgit push --delete origin $(git tag -l)
npocmaka

2
git tag -d $(git tag -l)gitの2.23に失敗したerror: switch `l' is incompatible with --delete
turbanoff

6

コマンドプロンプトを使用するWindowsの場合:

ローカルタグの削除:

for /f "tokens=* delims=" %a in ('git tag -l') do git tag -d %a

リモートタグの削除:

for /f "tokens=* delims=" %a in ('git tag -l') do git push --delete origin %a

2
PSを使用する場合:git tag -l | %{git tag -d $_}
PentPloompuu20年

1
ローカルタグの場合:git tag -l | xargsはgitのタグは、-d
LongTP5

1
@ LongTP5-xargsネイティブのWindowsコマンドではないため、追加でインストールする必要があります。
npocmaka
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.