| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- docker
- docker compose
- 컨테이너
- Dead Letter Queue
- JdbcTemplate
- redis
- 서블릿 컨테이너
- kafka
- 지연 로딩
- @Transactional
- 스프링 부트
- Routing Key
- Spring Data JPA
- DLQ
- mybatis
- AWS
- dockerhub
- DI
- 쿠버네티스
- JWT
- Web
- JPA
- @ComponentScan
- MSA
- CORS
- JPQL
- Spring Container
- 페이징
- Spring
- securitycontextholderfilter
- Today
- Total
look-forest
원격 저장소 본문
로컬에 원격 저장소 추가 후 Push
GitHub 레포지토리 생성 후 복붙 명령어를 뜯어보자
git remote add origin (원격 저장소 주소)
- 로컬의 Git 저장소에 원격 저장소로의 연결 추가
원격 저장소 이름에 흔히 origin 사용. 다른 것으로 수정 가능
git branch -M main
- GitHub 권장 - 기본 브랜치명을 main으로
git push -u origin main
- 로컬 저장소의 커밋 내역들 원격으로 push(업로드)
-u 또는 --set-upstream : 현재 브랜치와 명시된 원격 브랜치 기본 연결. main으로 업로드하도록 디폴트 지정
main 브랜치에서 실행하면 앞으로 git push만 해도 origin 원격저장소의 main 브랜치로 push 된다!
push와 pull
pull 할 것이 있을 때 push를 하면?
1. merge 방식
원격저장소의 main과 로컬의 main을 분기된 히스토리를 병합해서 새로운 커밋이 생긴다.
git pull --no-rebase
2. rebase 방식
원격 히스토리에 맞춰 내 커밋을 붙인다.
(pull할 때 rebase는 사용해도 된다)
git pull --rebase
협업상 충돌 발생 해결하기
merge든 rebase든 수정해서 저장 후 commit이나 continue 하면 된다.
rebase의 경우 충돌 시 origin에 있는 걸 선택하면 커밋이 앞서지 않지만, (결과적으로 origin과 동일할 테니)
local의 내용을 선택하면 커밋이 생기면서 origin을 앞서게 된다.
로컬의 내역 강제 push 해보기
원격의 다른 부분이 잘못되어서 로컬의 커밋 내역으로 덮어씌우는 상황 (합의 필요)
git push --force
로컬의 히스토리로 기록되고 원격의 기존 커밋은 삭제된다..!
원격의 브랜치 다루기
로컬에서 브랜치 만들어 원격에 push 해보기
from-local 브랜치에서 git push하면 오류가 난다. 원격의 어떤 브랜치로 push할 지 설정이 되어 있지 않으므로..!
원격 브랜치 명시 및 기본 설정
git push -u origin from-local
로컬 및 원격 브랜치 목록 보기
git branch --all
원격의 브랜치 로컬에 받아오기
아래 명령어로 원격의 변경사항 확인
git fetch
아래 명령어로 로컬에 같은 이름의 브랜치를 생성하여 연결하고 switch (push에서 -u으로 set upstream과 비슷)
git switch -t origin/from-remote
원격의 브랜치 삭제
git push (원격 이름) --delete (원격의 브랜치명)
fetch vs. pull
- fetch: 원격 저장소의 최신 커밋을 로컬로 가져오기만 함
- pull: 원격 저장소의 최신 커밋을 로컬로 가져와 merge 또는 rebase로 적용
즉, pull = fetch + merge/rebase
fetch한 내역을 적용하기 전에 살펴보려면
- git fetch
- git checkout origin/main 으로 이동해서 변경 사항을 본다
- git pull 로 적용
원격의 새 브랜치 확인 후 받아오려면
- git fetch
- git checkout origin/new-branch 으로 이동해서 변경 사항을 본다
- git switch -t origin/new-branch 로 적용 (trace 옵션으로 원격 브랜치를 받아 로컬에 생성할 뿐 아니라 원격 브랜치와 연결)
참고 자료 & 이미지 출처
제대로 파는 Git & GitHub - by 얄코
제대로 파는 Git & GitHub - by 얄코 강의 | 얄팍한 코딩사전 - 인프런
얄팍한 코딩사전 | 코알못도 따라올 수 있는 친절하고 쉬운 강좌! 현업 개발자는 Git 박사로 들어주는 끝판왕 강좌!, Git & Github, 얄코와 함께 제대로 판다! ⭐️ 대학교 이메일 계정이 있다면?
www.inflearn.com
'Tool > Git & Github' 카테고리의 다른 글
| 커밋 관리 (0) | 2025.03.11 |
|---|---|
| 브랜치 관리 (0) | 2025.03.11 |
| 버전 관리 (0) | 2025.03.03 |