주제 2
Pull과 Push
일상적인 원격 작업 흐름은 작게 유지합니다. 필요하면 먼저 pull하고, 의미 있는 단위로 commit한 뒤, 준비되면 push합니다.
완료할 작업
한 번의 pull과 push 흐름 후 local과 GitHub 이력에 같은 완료 commit이 존재합니다.
시작 전 확인
- 터미널이 의도한 repository와 branch 안에 있습니다.
- Push 전에 local 변경을 검토하고 commit했습니다.
검증 상태
- 상태
- 재검증 필요
- 환경
- Command-line 동작은 모든 플랫폼에 적용되며 screenshot은 Windows VS Code와 GitHub Desktop 경로도 포함합니다.
- 검증 대상
- Git, VS Code, GitHub Desktop의 pull과 push.
- 마지막 검증
- 현재 제품 기준 walkthrough 대기 중.
- 운영체제 지원
- Git 명령은 Windows, macOS, Linux를 지원하며 graphical control은 제품과 플랫폼마다 다릅니다.
용어 정리
| 용어 | 의미 |
|---|---|
Stage |
변경 사항을 커밋에 포함시키기 전에 준비하는 작업. |
Commit |
로컬 Git 저장소에 변경 사항을 저장하는 작업. |
Push |
로컬 Git 저장소에 있는 커밋을 원격 저장소로 전송하는 작업. |
Pull |
원격 저장소에 있는 커밋을 가져와 로컬 브랜치에 병합하는 작업. |
Pull (첫 번째 방법)
GitHub에 업로드 되어 있는 것을 등록된 폴더로 다운로드하는 것을 배워보도록 하겠습니다.
Source Control에서 오른쪽 버튼을 클릭하고 'Pull’을 선택하세요.
Pull이 성공적으로 완료되면 다음과 같은 화면을 확인할 수 있습니다.
아무도 remote를 바꾸지 않았다면 pull은 아무 일도 하지 않습니다. 그것도 정상입니다.
Pull (두 번째 방법)
Windows에서는 Ctrl + Shift + `, macOS에서는 Cmd + Shift + `로 새 터미널을 엽니다. 그런 다음 다음 명령어를 입력하세요:
git pull
Pull (세 번째 방법)
Command Palette에서도 Pull 명령을 실행할 수 있습니다. Windows에서는 Ctrl + Shift + P, macOS에서는 Cmd + Shift + P를 사용하세요.
Push (첫 번째 방법)
변경된 사항을 Stage하고 Commit 후에 Push함으로써 GitHub에 업로드할 수 있습니다.
Source Control에서 Changes의 '+'버튼을 클릭하세요.
Staged Changes가 생긴 것을 확인할 수 있습니다.
Commit message를 입력하세요.
오른쪽 버튼을 클릭하세요.
'Commit & Push’를 선택하세요.
Push (두 번째 방법)
Windows에서는 Ctrl + Shift + `, macOS에서는 Cmd + Shift + `로 새 터미널을 엽니다. 그런 다음 다음 명령어를 입력하세요:
git add .
git commit -m "Describe your change"
git push
Push (세 번째 방법)
Command Palette에서도 Push 명령을 실행할 수 있습니다. Windows에서는 Ctrl + Shift + P, macOS에서는 Cmd + Shift + P를 사용하세요.
언제 pull하고, 언제 commit하고, 언제 push하는지 즉흥적으로 판단하지 않고 설명할 수 있으면 기본 sync 루프는 자리 잡은 것입니다.
자주 발생하는 문제
- 겹치는 local 변경을 commit하지 않은 채 pull하면 sync가 중단될 수 있습니다.
- Push가 거절되면 원격 commit을 먼저 pull하고 검토한 뒤 다시 시도해야 합니다.
완료 확인
git status가 clean working tree와 local branch가 remote branch와 최신 상태임을 표시합니다.