GIt 과 Github

석진·2024년 1월 10일
0
post-thumbnail

GIt 과 Github

📌Git 버전 관리 시스템

버전 관리 시스템의 목적

  • 이력 관리
    • 무언가 잘못됐을 때 돌아가기
    • 특정 시점 사이의 변화 비교하기
    • 누가, 왜 수정했는지 파악하기
  • 분기 관리
    • 큰 변경 작업을 안전하게 진행하기
    • 병렬적으로 진행된 작업을 편리하게 통합하기
  • 종류 : git, mercurial, subversion...

git은 분산(저장소) 버전 관리 시스템

  • 서버에서도 진행, 컴퓨터에서도 진행 각각 진행한다.
  • 로컬과 서버에 동시 존재한다.
  • git은 기본 동작으로 최대한 변화를 발생시키지 않으려 한다.

git 저장소 생성 방법

  • git init(내 로컬에서 먼저 만드는 것)
  • git clone(remote 에 있는걸 그대로 복제해오는 것)

commit

  • 의미 있는 변화
  • 미래를 위한 보험(현재의 변화를 추적하기 위한 용도)
  • 하나로 만들어놓은 커밋을 3개로 분리하기는 힘듬
  • 3개로 쪼개어 놓은 것을 하나로 합치는 것은 쉬움
  • 가급적이면 쪼개는 것이 낫다.

Staging Area

branch

  • 분기관리
  • 위험한 작업을 바로 메인에다 올려둘 수 없으니 분리해둠
  • 용도에 따른 분리
  • 브랜치를 합치는 명령어 merge / bebase

📌Github

github에 push하기

로컬 저장소에 있는 commit 들을 github에 반영

  • push 를 해준다.
  • pull (remote 에 있는걸 rocal로 가져온다.) fetch 후 pull
  • Branch Workflow
    • git flow, gitbhub flow(가장 간단), gitlab flow, trunk-based flow
  • pull request

Fork

  • (오픈소스에 기여할 때 필수, 협업을 할 때 선택적으로 적용)

충돌최대한 적게 하면서 push 하는 방법

  • pull 을 자주 한다.
  • 두 작업자가 같은 파일을 수정하지 않도록 작업을 나눈다.
  • 작업량 작게 만들기
profile
내 서비스 만들기

0개의 댓글