안녕하세요, Git의 핵심 기능인 push와 pull에 대해 자세히 알아보겠습니다.
이 두 명령어는 원격 저장소와 로컬 저장소 간의 코드 동기화를 위해 필수적인 도구입니다.
Git Push: 로컬 변경사항을 원격으로 전송하기
Git push는 로컬 저장소의 커밋을 원격 저장소로 전송하는 명령어
코드 변경사항을 GitHub에 업로드(Push)하거나 최신 변경사항을 가져오는(Pull) 방법입니다.
1. Push
git push <원격 저장소> <브랜치>
git push origin main
이 명령어는 'origin'이라는 원격 저장소의 'main' 브랜치로 현재 브랜치의 커밋을 전송합니다.
주요 옵션:
--all: 모든 브랜치를 푸시합니다.
--tags: 태그를 함께 푸시합니다.
-f 또는 --force: 원격 브랜치를 강제로 덮어씁니다 (주의 필요).
주의사항:
Push 전에 항상 최신 변경사항을 pull 받아 충돌을 방지하세요.
강제 push는 팀 프로젝트에서 문제를 일으킬 수 있으므로 신중히 사용해야 합니다.
2.Pull
git pull <원격 저장소> <브랜치>
git pull origin main
주요 옵션:
--rebase: fetch한 후 rebase를 수행합니다.
--no-commit: 병합은 수행하지만 자동 커밋은 하지 않습니다.
--ff-only: fast-forward 병합만 허용합니다.
주의사항:
Pull 전에 로컬 변경사항을 커밋하거나 stash하세요.
충돌이 발생할 경우 수동으로 해결해야 합니다.
3. Push와 Pull의 워크플로우
작업 시작 전 항상 git pull을 실행하여 최신 상태로 업데이트합니다.
로컬에서 작업을 수행하고 변경사항을 커밋합니다.
작업 완료 후 git push를 실행하여 변경사항을 원격 저장소에 반영합니다.
충돌이 발생하면 로컬에서 해결한 후 다시 push합니다.
TIP
git fetch를 사용하여 원격 변경사항을 확인만 하고 병합은 나중에 할 수 있습니다.
git pull --rebase를 사용하면 커밋 히스토리를 더 깔끔하게 유지할 수 있습니다.
대규모 팀 프로젝트에서는 feature 브랜치를 사용하고 pull request를 통해 변경사항을 관리하는 것이 좋습니다.
Git push와 pull을 효과적으로 사용하면 팀 협업과 버전 관리가 훨씬 수월해집니다.
'데이터핸들링 > Tool' 카테고리의 다른 글
[VSCODE] GitHub 연동 및 사용방법 (0) | 2024.11.20 |
---|---|
[VSCODE] Git Hub 레파지토리 변경하는 법 (0) | 2024.11.15 |
깃허브 contributions color 잔디 색상 (1) | 2024.11.01 |