Git 이란?

박근수·2024년 2월 4일
0

Git

목록 보기
1/5
post-custom-banner

Git

  • 형상관리도구(Configuration Management Tool) 중 하나이다.
  • Git은 프로젝트 소스코드를 효과적으로 관리할 수 있는 시스템

효과적 관리란?

  • 여러 명이 동시에 작업하더라도 문제 없도록 함
  • 소프트웨어의 여러 버전을 동시에 관리할 수 있음
  • 프로젝트 진행의 모든 로그를 볼 수 있으며 해당 시점으로 되돌리는 것도 가능

사용하는 이유

프로젝트 시 어떤 기능을 빼고 더하고 고치고 수정하는 과정이 필요하며 기능을 되돌리게 될 수도 있고, 서로 다른 기능의 버전을 유지해야 하는 경우도 있음

코드 관리 측면

  • 변경된 이력 확인
  • 이전 이력으로 되돌리기
  • 다른 기능의 버전 코드 유지
  • 현재 죄종이 어느 시점인지 표현할 수 있음

협업의 측면

  • 각 기능별로 분업 후 하나의 코드로 합칠 수 있음
  • 같은 부분을 수정해 문제가 생기는 경우 안내
  • 협업으로 인한 실수 예방
  • 팀원 간의 커뮤니케이션 지원

Git 기반의 서비스

  • Github
  • Bitbucket (Atlassian 제품들과 연계)
  • GitLab (설치형 Git => 용량에 대한 비용 절감, 소스코드의 보안 좋음)

Git 설치 (MAC)

brew install git

//버전확인
git --version

기본 동작 원리

  • Working Directory : 작업하는 파일이 있는 디렉토리
  • Staging Area : Git에 등록할 (커밋) 파일들이 올라가는 영역
  • Local Repository : 로컬 Git 프로젝트의 메타데이터와 데이터 정보가 저장되는 영역
  • Remote Repository : Github 등의 서비스를 통한 온라인 상의 저장소

기본 용어

  • origin : 원격(Github 등의 온라인 저장소)에 있는 코드
  • head : 내가 지금 작업하고 있는 로컬 브렌치
  • add : Working Directory에서 Staging Area로 듣록
  • commit : Staging Area에 등록된 파일을 Local Storage로 등록
  • Commit Message : commit 시 함께 작성해 저장하는 메세지 (메모)
  • push : Local Storage에서 변경된 파일들을 Local Repository로 전달
  • fetch : Remote Repository의 변경된 파일들을 Local Repository로 전달
  • merge : Local Repository의 변경사항을 Working Directory로 전달
  • Branch : 독립적으로 어떤 작업을 따로 진행하기위한 가지
  • checkout : 사용할 다른 브랜치를 지정
profile
개발블로그
post-custom-banner

0개의 댓글