programing

모든 git 오리진 및 로컬 태그를 제거하는 방법은 무엇입니까?

lastcode 2023. 6. 26. 21:23
반응형

모든 git 오리진 및 로컬 태그를 제거하는 방법은 무엇입니까?

이미 푸시된 깃 태그는 어떻게 제거합니까?모든 git 원격(오리진) 태그를 삭제하고 모든 git 로컬 태그를 삭제합니다.

  1. 모든 로컬 태그 삭제(옵션 권장)
    git tag -d $(git tag -l)
    
  2. 원격 모든 태그 가져오기(옵션 권장)
    git fetch
    
  3. 모든 원격 태그를 삭제합니다.
    # Note: pushing once should be faster than multiple times
    git push origin --delete $(git tag -l) 
    
  4. 모든 로컬 태그를 삭제합니다.
    git tag -d $(git tag -l)
    

명령 프롬프트를 사용하는 창의 경우:

로컬 태그 삭제 중:

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

주요 대답은 저에게 통하지 않았습니다.

실패했습니다.

git push origin --delete $(git tag -l)

오류:

fatal: --delete doesn't make sense without any refs

그것은 제가 로컬 태그가 없었기 때문입니다!

git tag -l실행 후에도 아무것도 표시되지 않았습니다.git fetch모든 원격 태그를 가져오는 것으로 추정됩니다.

하지만, 다음은 효과가 있었습니다!:

GitHub에 원격 태그가 있지만 로컬 태그가 없는 경우와 같은 드문 특정 상황에서는 삭제할 태그를 수동으로 지정해야 할 수 있습니다.

모든 원격 태그를 보려면 https://github.com/YOUR_USERNAME/YOUR_REPO_NAME/tags (예: https://github.com/ElectricRCAircraftGuy/sublime_gcode/tags) )으로 이동합니다.

표시된 태그1.0.0그리고.1.0.1다음을 사용하여 수동으로 삭제:

원격 태그를 수동으로 삭제하는 방법

# General format to delete a **remote** tag on remote named "origin"
git push --delete origin <tag_name>

# My case exactly
git push --delete origin 1.0.0
git push --delete origin 1.0.1

로컬 태그를 수동으로 삭제하는 방법

# list all tags
git tag
# OR (same thing): 
git tag -l

# delete a local tag
git tag -d <tag_name>
# Example: delete local tag named `1.0.0`
git tag -d 1.0.0

이 모든 것을 알게 된 출처: https://devconnected.com/how-to-delete-local-and-remote-tags-on-git/

언급URL : https://stackoverflow.com/questions/44702757/how-to-remove-all-git-origin-and-local-tags

반응형