본문 바로가기
Git · GitHub

[깃] 리포지토리(repository)란? git push, pull, clone 정리

by 메이플 🍁 2022. 3. 24.

⚠️ 이 포스팅은 핵심 쏙쏙 Git을 공부하고 정리한 블로그 포스팅입니다 ⚠️

 

포스팅에 해당하는 목차는 다음과 같습니다:
1주차 

  • 1-8 원격 repo 사용하기 - 개념탑재
  • 1-9 원격 repo 사용하기 - 실습

 


 

1. 리포지토리(repository)

깃으로 관리되는 프로젝트. 줄여서 리포라고도 한다.

1.1 리포지토리의 2가지 종류

1) 로컬 리포지토리(local repository)

내 컴퓨터에 저장되어 있는 깃으로 관리되는 프로젝트

2) 원격 리포지토리(remote repository)

깃허브처럼 다른곳에서 접속할 수 있는 공간에 저장되어 있는 깃으로 관리되는 프로젝트

1.2 원격 repo 와 로컬 repo가 함께 사용된다는 의미는?

google drive 같은 클라우드 서비스에 있는 폴더를 내 컴퓨터에 있는 폴더와 동기화해주면 클라우드 폴더와 내 컴퓨터에 있는 폴더가 같아진다. 이처럼 원격 repo와 로컬 repo를 연결시킬 수 있는데 이때 로컬 repo가 원격 repo를 연결하는 것을 추적(tracking / branch tracking)이라고 한다. 단, 클라우드 서비스와는 다르게 commit을 자동으로 반영하지는 않는다. 즉 commit은 수동으로 반영해야한다.

1.3 원격 repo와 로컬 repo를 연결하는 2가지 방법

1) 로컬  repo가 없고 원격 repo에 있는 내용을 가져오고 싶을 때는 리포지토리를 clone 한다
2) 원격 repo와 로컬 repo 둘 다 있고 두 개를 연결하고 싶을 때는 로컬 repo가 원격 repo를 tracking 하도록 설정한다

 

2. git push와 pull 그리고 clone

 

 

2.1 git push

  • 로컬 repo의 commit들을 원격 repo에 반영하는 것 (commit을 밀어넣기)
  • 로컬 repo를 기준으로 내용을 보내주는거니까 push

2.2 git pull

  • 원격 repo의 commite들을 로컬 repo에 반영하는 것 (commit을 땡겨오기)
  • 로컬 repo를 기준으로 내용을 가져오는거니까 pull

2.3 git clone

  • 원격 repo를 내 컴퓨터에서도 사용할 수 있도록 가져오는 것 (일종의 초기 다운로드)

 

3. 충돌(conflict)을 피하는 Git 작업순서

1. pull로 원격 repo에 있을지 모르는 변경사항들을 로컬 repo에 반영해준다 (원격 repo 와 로컬 repo의 상태 똑같이 맞춰주기)

2. commit으로 로컬 repo의 변경사항을 저장한다

3. push로 로컬 repo에서 작업한 것을 원격 repo에 올려준다

작업순서: pull > commit > push

댓글