콘텐츠로 건너뛰기
GitTree
Git 가이드3분 읽음

로컬 및 원격에서 Git 브랜치를 삭제하는 방법

로컬 브랜치와 해당 원격 복사본은 서로 다른 두 가지입니다. 각 항목을 삭제하는 방법, 일반적인 오류의 의미, 오래된 참조를 정리하는 방법, 실수로 삭제한 분기를 복구하는 방법은 다음과 같습니다.

작성자: Kodmora

GitTree 뒤에 있는 소프트웨어 하우스

업데이트됨
  • 브랜치
  • 리모트 및 푸시
  • 실행 취소 및 복구
이 페이지에서

로컬 분기를 삭제하려면 `git branch -d branch-name`을 실행하세요. 원격 저장소에서 삭제하려면 `git push origin --delete branch-name`을(를) 실행하세요. 이는 별도의 작업입니다. 하나를 삭제하면 다른 하나는 그대로 유지됩니다. Git은 브랜치에 병합되지 않은 커밋이 있는 경우 첫 번째 명령을 거부하여 작업을 보호합니다.

어떤 명령이 무엇을 삭제합니까?
목표명령
병합된 로컬 분기 삭제git branch -d feature/search
병합되지 않은 로컬 브랜치 강제 삭제git branch -D feature/search
원격에서 분기 삭제git push origin --delete feature/search
오래된 원격 추적 참조 제거git fetch --prune

로컬 Git 브랜치를 어떻게 삭제하나요?

Git은 현재 있는 브랜치를 삭제하지 않으므로 먼저 전환하세요. 그런 다음 삭제하십시오.

git switch main
git branch -d feature/search

Git은 브랜치의 마지막 커밋을 인쇄합니다. 가장 쉬운 방법이므로 해당 해시를 잠시 유지하세요.

Deleted branch feature/search (was 4f2a9c1).

원격 브랜치를 어떻게 삭제하나요?

git push origin --delete feature/search

이렇게 하면 해당 원격 저장소를 사용하는 모든 사람의 분기가 제거되므로 아직 이를 필요로 하는 사람이 없는지, 끌어오기 요청이 닫혔는지 확인하세요. 로컬 복사본도 삭제할 때까지 그대로 유지됩니다.

삭제 오류는 무엇을 의미하나요?

분기 삭제 시 일반적인 오류
메시지의미수정
not fully merged브랜치에 업스트림이나 HEAD에 없는 커밋이 있습니다.병합하거나 필요하지 않다고 확신하는 경우 -D을(를) 사용하세요.
cannot delete branch … used by worktree당신은 여기 또는 다른 작업 트리에 있습니다.git switch main을(를) 실행하거나 다른 작업 트리를 제거하세요.
remote ref does not exist브랜치가 이미 원격에서 사라졌습니다.오래된 복사본을 지우려면 git fetch --prune을 실행하세요.

git 원격 정리 원본은 무엇을 합니까?

누군가 원격에서 브랜치를 삭제하면 저장소는 이를 제거할 때까지 해당 브랜치를 origin/feature/search 참조로 유지합니다. 정리하면 오래된 참조가 삭제됩니다. 귀하의 로컬 브랜치에는 절대 영향을 미치지 않습니다.

git fetch --prune
# or, without fetching anything new
git remote prune origin

원격 복사본이 손실된 로컬 브랜치를 확인하려면 자세한 목록에서 gone를 찾으세요.

git branch -vv

삭제된 분기를 어떻게 다시 복구하나요?

브랜치는 커밋의 이름일 뿐이므로 삭제해도 커밋이 바로 삭제되지는 않습니다. 인쇄된 Git 해시에서 이름을 다시 생성하거나 reflog에서 찾으세요.

git branch feature/search 4f2a9c1

# no hash? search the reflog
git reflog

빨리 수행하십시오. 도달할 수 없는 커밋은 결국 가비지 수집을 통해 정리됩니다. 삭제된 숨김 또는 삭제된 브랜치 복구에 대한 게시물에서는 더 어려운 사례를 다루고, 브랜치 및 전환 강의에서는 브랜치가 왜 그렇게 저렴한지 설명합니다.

GitTree에서 분기를 삭제하는 방법

  1. 브랜치 메뉴 열기

    그래프에서 분기 레이블을 마우스 오른쪽 버튼으로 클릭합니다. 메뉴는 각 작업의 분기 이름을 지정합니다.

  2. 삭제를 선택하세요

    GitTree는 제거된 내용과 마지막 커밋이 refs/ogt/trash에 저장되었음을 나타냅니다. 취소가 기본값이므로 기능/검색 삭제를 눌러 확인하세요.

  3. 원격 복사본도 삭제

    Delete … 및 Origin/…은 둘 다 제거하고 Delete Both로 확인됩니다. 원격 저장소에서 삭제된 분기는 GitTree에서 다시 가져올 수 없습니다.

  4. 마음이 바뀌었나요?

    분기를 다시 가져오려면 로컬 삭제 직후 툴바에서 실행 취소를 누르세요.

브랜치 이름 바꾸기 및 삭제 가이드에 자세한 내용이 있으며, 브랜치 이름 바꾸는 방법에서는 대신 이름 변경을 다룹니다.

GitTree의 분기 메뉴는 모든 작업의 분기 이름을 지정하므로 삭제가 제거하는 항목을 확인할 수 있습니다.
GitTree의 분기 메뉴는 모든 작업의 분기 이름을 지정하므로 삭제가 제거하는 항목을 확인할 수 있습니다.

자주 묻는 질문

브랜치를 삭제하면 커밋도 삭제되나요?

당장은 아닙니다. 다른 브랜치에 대한 커밋은 그대로 유지됩니다. 해당 분기에서만 커밋할 수 없게 되며 가비지 수집으로 제거될 때까지 복구할 수 있습니다.

git Branch -d와 -D의 차이점은 무엇입니까?

-d은(는) 병합되지 않은 커밋이 있는 브랜치 삭제를 거부합니다. -D는 어쨌든 삭제하므로 확실한 경우에만 사용하세요.

로컬 분기를 삭제하면 원격 분기도 삭제되나요?

아니요. 별개입니다. 원격 저장소에는 git push origin --delete branch-name을(를) 사용하세요.

삭제된 원격 브랜치가 여전히 나타나는 이유는 무엇입니까?

귀하의 저장소에는 여전히 원격 추적 참조가 있습니다. 제거하려면 git fetch --prune을 실행하세요.

한 번에 여러 브랜치를 삭제할 수 있나요?

예. git branch -d one two three는 나열된 각 이름을 삭제하고 git push origin --delete one two는 원격 저장소에서도 동일한 작업을 수행합니다.

출처

다른 제품에 대한 주장은 2026년 11월 7일의 공식 페이지에서 확인되었습니다. 가격과 기능은 변경됩니다. 공급업체 페이지가 진실의 원천입니다.