본문 바로가기

좋아하는 것_매직IT/96.IT 핫이슈

git gone - 원격에서 삭제된 브랜치를 모두 삭제하는 커스텀 명령어를 소개합니다. (erikschierboom.com)

반응형

git gone - 원격에서 삭제된 브랜치를 모두 삭제하는 커스텀 명령어를 소개합니다. 

아래는 요약내용이고요..한번 쓰으윽 보시길 추천드립니다.

원격(remote) 브랜치를 트래킹하는 로컬 브랜치가 존재하는 상태에서, 원격 브랜치가 삭제된 경우, 내 컴퓨터에만 남게 된 로컬 브랜치를 지워주는 커스텀 명령어 설정 방법

  • 트래킹하는 상태에서 원격 브랜치가 삭제되면 [gone] 상태로 전환된다는 점을 이용함
  • git gone 명령어는 두 가지를 실행함
    1. git fetch -p를 통해 prune 처리 (지워진 원격 브랜치 정보 갱신)
    2. 지워진 원격 브랜치를 트래킹하는 로컬 브랜치를 모두 삭제
728x90
  • 트래킹하는 원격 브랜치가 없는 로컬 브랜치는 지워지지 않음

git 실행이 가능한 터미널에서 아래 명령어를 사용하면 git gone 명령어를 커스텀 커맨드로 추가할 수 있음

git config --global alias.gone "! git fetch -p && git for-each-ref --format '%(refname:short) %(upstream:track)' | awk '\$2 == \"[gone]\" {print \$1}' | xargs -r git branch -D"

 

자세한 내용은 아래 웹페이지를 방문해 보시길 추천드립니다.

오늘의 블로그는 여기까지고요..
항상 믿고 봐주셔서 감사합니다. 

300x250