실제로 겪어보면 다시 업데이트 예정. Learn Git Branching에서 참고한 내용.
🚫 ! [remote rejected] main -> main (TF402455: Pushes to this branch are not permitted; you must use a pull request to update this branch.)
지금 프로젝트를 진행 중에 branch를 따로 만들어 작업하고 있다고 생각해 보자. 작업을 마치고 나서 push하고 main branch에 pull request를 하려고 했지만 실수로 main branch에 commit을 해버리면 어떻게 될까? 위와 같은 error message를 띄우면서, 이제 변경 사항을 push도 못하고 아무것도 못하는 상황이 될 것이다.
위는 main branch에 commit을 한 상태이다. 이 상태를 바탕으로 해결 방법을 알아보자.
❗️ 해결 방법
- 다른 브랜치를 새로 만들어 원격 저장소에 push 한다.
- 원격 저장소와 동기화될 수 있도록 로컬 저장소의 main branch를 reset한다.
- 그렇지 않으면 다음에 pull을 시도할 때 문제가 발생하거나, 다른 협업자들의 커밋과 충돌할 수 있다.
1. git reset --hard origin main
- 원격 저장소와 동기화될 수 있도록 로컬 저장소의 main branch를 reset한다.
- 그렇지 않으면 다음에 pull을 시도할 때 문제가 발생하거나, 다른 협업자들의 커밋과 충돌할 수 있다.
2. git checkout -b feature c2
- 다른 브랜치를 새로 만들어 원격 저장소에 push 한다.
3. git push origin feature