Basic Git Workflow : 단일 브랜치 작업 흐름

Sangyeon·2022년 8월 1일
0

Git

목록 보기
4/12
post-thumbnail

(출처 : https://phoenixnap.com/kb/how-git-works)

단일 브랜치에서의 기본적인 작업 흐름에 대한 포스팅 입니다.

용어 정리

Git 영역

git 영역은 다음과 같이 크게 3가지로 구분됩니다.

  1. Working Tree : 작업 트리
    • Working Directory : 작업 디렉터리
  2. Staging Area(Index) : 스테이징 영역
  3. Repository : 저장소
    • Local Repository : 로컬 저장소
    • Remote Repository : 원격 저장소

파일 상태

(출처 : https://thisblogbusy.tistory.com/entry/Git-Basics-Recording-Changes-to-the-Repository)

git 명령어 사용에 따른 파일 상태는 아래와 같이 4가지로 구분됩니다.

  • Untracked Files : 한번도 커밋되지 않아 Working Tree에 있는 파일
  • Unmodified Files : Working Tree 내 파일 중, 이전 커밋과 동일하게 변경사항이 없는 파일
  • Modified Files : Working Tree 내 파일 중, 이전 커밋과 달리 변경사항이 있는 파일
  • Staged Files : $ git add 명령어를 통해 Staging Area에 있는 파일

$ git status 명령어 사용 시 아래와 같이 어떤 파일이 Modified 상태인지, 또 어떤 파일이 Untracked 상태인지 확인할 수 있습니다.

git add : Staging Area에 변경사항 추가

작업 트리(Working Tree) 상의 변경 내용을 스테이징 영역(Staging Area)에 추가하는 것을 의미합니다.

$ git add .  # 모든 파일 add
$ git add <파일명>  # 특정 파일 add

git commit : Local Repository에 변경사항 추가

스테이징 영역(Staging Area) 상의 변경 내용을 Git 로컬 저장소(Git Local Repository)에 추가하는 것을 의미합니다.

$ git commit  # 에디터 열어서 커밋메시지 편집
$ git commit -m "커밋메시지"  # 짧은 커밋메시지로 commit 진행
$ git commit -am "커밋메시지"  # 짧은 커밋메시지로 add와 commit 동시에 진행

$ git commit -am "커밋메세지" 명령어 사용 시, Untracked 상태의 파일은 add 되지 않기 때문에 주의가 필요합니다.

하나의 커밋에는 더 이상 분리 할 수 없는 최소한의 코드 변경만 포함해야 버전 관리가 용이해집니다.(Keep Your Commits "Atomic".)

git push / fetch / merge 관련해서는 별도 포스팅(GitHub : 원격 저장소 호스팅 서비스)에서 다룹니다.

profile
I'm a constant learner.

0개의 댓글