1. 로컬 브랜치 삭제

git branch -d <branch-name>
// 강제삭제
git branch -D <branch-name>
 

이 명령어는 브랜치를 삭제하려고 할 때 해당 브랜치가 병합되었는지 확인합니다. 만약 병합되지 않은 브랜치를 삭제하고 싶다면, 강제로 삭제해야 합니다.

강제로 로컬 브랜치를 삭제하려면 -D 플래그를 사용합니다.

2. 원격 브랜치 삭제

원격 브랜치를 삭제하려면 git push 명령어를 사용합니다.

git push origin --delete <branch-name>
 

이 명령어는 원격 저장소에서 브랜치를 삭제합니다.

 

3. 동일한 단어가 포함된 브랜치들 일괄 삭제 (예: 같은 패턴이 있는 브랜치)

로컬 브랜치 이름에 특정 패턴이 포함된 모든 브랜치를 일괄 삭제하고 싶다면, 다음 명령어로 처리할 수 있습니다. 예를 들어, 이름에 feature가 포함된 모든 브랜치를 삭제하려면:

git branch | grep 'feature' | xargs git branch -D​

이 명령어는 feature가 포함된 모든 로컬 브랜치를 찾아서 강제로 삭제합니다.

 

4. 로컬에서 이미 삭제된 원격 브랜치를 동기화하여 정리

원격 저장소에서 삭제된 브랜치를 로컬에서 정리하려면 git fetch --prune 명령어를 사용합니다.

git fetch --prune

이 명령어는 원격에서 삭제된 브랜치를 로컬에서 자동으로 삭제해 줍니다.

 

5. 동일한 단어가 포함된 원격 브랜치 일괄 삭제 방법

  1. 원격 브랜치 목록을 가져옵니다. 원격 브랜치 목록을 가져오고, 삭제하려는 브랜치 중 특정 단어가 포함된 브랜치만 필터링할 수 있습니다.
     
    git branch -r
  2. 원격 브랜치에서 특정 단어가 포함된 브랜치를 필터링하여 삭제합니다. 예를 들어, 원격 브랜치 중 이름에 feature라는 단어가 포함된 브랜치를 일괄 삭제하려면:설명:
    • git branch -r : 원격 브랜치 목록을 출력합니다.
    • grep 'origin/feature' : feature라는 단어가 포함된 원격 브랜치를 필터링합니다.
    • sed 's/origin\///' : origin/ 접두사를 제거합니다 (브랜치 이름에서 origin/ 부분을 삭제).
    • xargs -I {} git push origin --delete {} : 필터링된 브랜치를 원격에서 삭제합니다.
    • git branch -r | grep 'origin/feature' | sed 's/origin\///' | xargs -I {} git push origin --delete {}
  3. 삭제 결과를 확인합니다. 원격 브랜치가 제대로 삭제되었는지 확인하려면 다시 원격 브랜치 목록을 확인할 수 있습니다.
git branch -r

주의 사항:

  • 브랜치 삭제는 되돌릴 수 없으므로, 삭제 전 반드시 필요한 브랜치인지 확인해야 합니다.
  • grep이나 sed를 사용할 때 올바른 패턴을 지정했는지 확인하여, 원하지 않는 브랜치가 삭제되지 않도록 주의하세요.

+ Recent posts