Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- java map
- 프로그래머스제일작은수
- javaJRE
- 격파르타장점
- java set 출력
- java set 저장
- java list 출력
- 인터프린터언어
- java 자료구조 활용
- java map 출력
- java알고리즘
- 코딩부트캠프후기
- 프로그래머스
- javaJVM
- java알고리즘문제풀이
- 항해15기
- 격파르타합격후기
- 격파르타후기
- 항해99후기
- java map 저장
- 격파르타비전공자
- 노베이스부트캠프
- 컴파일
- sqld자격증합격
- 비전공자sqld
- java참조자료형
- java최솟값구하기
- java기본자료형
- 작은수제거하기
- java list 저장
Archives
- Today
- Total
코딩과 결혼합니다
branch push 거부 (Updates were rejected because the tip of your current branch is behind) 본문
2세/Git
branch push 거부 (Updates were rejected because the tip of your current branch is behind)
코딩러버 2024. 7. 27. 19:37728x90
상황
브랜치에서 새로운 코드를 작성 - commit 후 원격 저장소로 push를 날렸는데 push가 거부되는 오류가 발생하였다.
$ git push
To https://github.com/lodalee/jpashop_prac.git
! [rejected] feature/category-entity -> feature/category-entity (non-fast-forward)
error: failed to push some refs to 'https://github.com/lodalee/jpashop_prac.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
터미널을 확인해 보았을 때에는 위와 같은 로그가 생겼으며,
영어 울렁증이 있기에,, chat GPT의 도움을 받았다.
원인
현재 로컬 브랜치가 원격 브랜치보다 뒤에 위치해 있어 푸시가 거부된 것이라고 한다.
원격 브랜치에 이미 새로운 커밋이 존재하는데 이를 로컬 브랜치에 병합하지 않은 채로 또 다른 커밋을 만들어 push 하려 했던 것이다.
해결
1. 원격 변경사항을 병합
git pull origin feature/category-entity
이 명령어로 원격 브랜치의 변경 사항을 로컬 브랜치에 병합한다. 나는 여기서 충돌이 발생하여 이를 해결한 뒤에 변경 사항을 커밋하였다.
2. 충돌 해결 후 커밋&푸시
# 충돌 해결 후 파일 스테이징
git add .
# 병합 완료 커밋
git commit -m "fix: resolve merge conflicts"
# 변경사항 푸시
git push origin feature/category-entity
3. 충돌이 없다면 (2)의 과정은 생략하고 바로 push 하면 된다.
git push origin feature/category-entity
아직은 git을 다루는 게 헷갈리기도 하고 익숙하지 않다. 하지만 이전보다는 원인이나 해결방법을 봤을 때에 이해도가 훨씬 빨라진 느낌이 든다. 다음에 이와 같은 상황이 다시 일어났을 때에 잘 해결할 수 있을 것 같다.
+
혼자서 해보는 것이긴 하지만, 브랜치 관리에 커밋 -> 푸시 -> 풀리퀘스트 등등 반복적으로 해봄으로써 협업에 대한 이해도를 높이고 있다. 나중에 팀원들과 함께 협업할 때에도 큰 도움이 될 것 같다.
'2세 > Git' 카테고리의 다른 글
git 명령어 (0) | 2023.07.18 |
---|---|
git 에러 push/pull (0) | 2023.07.18 |
230630 - Git에서 자주 쓰는 코드 & JPA (0) | 2023.06.30 |
Git 명령어 총정리집/실전 링크 (by 코딩알려주는 누나❤) (0) | 2023.05.24 |
Git 설치/ Git 설치 안하고 GitHub에 파일 올리기 (0) | 2023.05.24 |