[remote rejected] cannot lock ref 에러

유석현(SeokHyun Yu)·2023년 1월 12일
0

문제 해결

목록 보기
8/11

1. 문제

로컬에서 작업하고 있는 브랜치를 origin에 push 하는 상황에서 위와 같은 에러가 발생했다.


2. 원인 및 해결 방법

Git은 브랜치가 계층 구조로 되어있다.

"lab/fix"라는 이름의 새 브랜치를 생성하려고 하면 Git은 이를 "lab"이라는 이름의 상위 브랜치 아래에 "fix"라는 이름의 하위 브랜치를 생성하라는 요청으로 해석한다.

하지만 Git은 특정 브랜치 아래에 하위 브랜치 생성을 허용하지 않는다(찾아봤지만 이유는 모르겠다).

이 문제를 해결하려면 origin의 "lab" 브랜치를 삭제하거나 "lab" 브랜치와 충돌하지 않는 다른 브랜치 이름을 사용하면 된다.

git push origin --delete {브랜치명} 명령을 통해 origin의 브랜치를 삭제할 수 있다.

git branch -m {새 브랜치명} 명령을 통해 로컬의 브랜치 이름을 바꿀 수 있다.

둘 중 하나의 방법을 택하여 문제를 해결할 수 있다.

profile
Backend Engineer

0개의 댓글