Git 개념 정리

yeji kang·2020년 7월 7일
0

git,github

목록 보기
2/5

개념

  1. working directory
  2. staging area
  3. repository

working directory

  • 작업을 하는 프로젝트 디렉토리 ex)MathTool
  • = working tree

staging area

  • git add를 한 파일들이 존재하는 영역.
  • 커밋을 하게되면 staging area에 있는 파일들만 커밋에 반영됩니다.
  • = index

repository

  • working directory의 변경 이력들이 저장되어 있는 영역입니다.
  • 커밋들이 저장되는 영역이라는 뜻!

정리

working directory - (git add cal.js) -> staging area - ( git commit -m "Ver_1") -> repository

  • working directory에서 작업 -> 작업한 파일들 git add 하고 이 파일들은 staging area 추가됨->commit 하게되면 파일들의 모습이 스냅샵처럼 repository에 저장

staging area에 올렸는지 여부에 따라 최신 모습이 커밋에 반영되는지가 달라집니다.

  • 예를 들면 working directory에서 a파일 b파일 코드 수정을 했습니다. 하지만 b파일만 git add를 하고 commit을 했다면 repository에 (a파일이전 , b파일수정본) 이 하나의 버전으로 올라가게 됩니다.

실습

  1. 파일 수정하기
    • 기존에 있던 cal.js 와 License에 주석을 추가해봤습니다.
  2. 한 파일만 git add 하기
    • cal.js만 git add했습니다.
  3. 확인해보기
    - git status 로 상태를 확인했습니다.

Changes to be committed : 커밋에 반영될 변경사항
Changes not staged for commit : 커밋에 반영되지 않는 변경사항

  • cal.js는 staging area에 있고, 변경은 했지만 staging area에 없는 파일은 License 입니다 라고 알려주는 메시지입니다.
  • commit을 하기전에 확인하면 좋습니다.

git status : 깃이 인식하고 있는 프로젝트 디렉토리의 현재 상태를 보여줌

추가

git add (디렉토리명) : 디렉토리 아래에 속해있는 파일 한번에 추가됩니다.

git add . : 현재 프로젝트 디렉토리 내에서 변경사항이 생긴 모든 파일들을 staging area에 추가하라

파일의 4가지 상태

  1. Untracked 상태
  2. Tracked 상태

Tracked 상태

  • Staged 상태
  • Unmodified 상태
  • modified 상태

1. Untracked 상태

  • 파일이 Git에 의해서 변동사항이 전혀 추적되고 있지 않는 상태를 뜻합니다.
  • 파일을 새로 생성하고 그 파일을 한번도 git add 해주지 않았다면 이상태.

2. Tracked 상태

  • 파일이 Git에 의해 그 변동사항이 추적되고 있는 상태입니다.
  • 그 특성에 따라 3가지 상태로 나뉩니다.

1) Staged 상태

  • staging area에 올라와 있는 상태
  • 새로 생성된 파일에 내용을 쓰고 git add를하거나
  • 한 번이라도 커밋에 포함됐었던 파일이라도 내용을 수정하고 git add를 해주면 이 상태

2) Unmodified 상태

  • 최신 커밋의 모습과 비교했을 때 변동사항이 없는 상태(수정되지 않은, 변한게없는)
  • 커밋을 하고 난 직후에는 working directory 안의 모든 파일들이 이 상태가 됩니다.

3)Modified 상태

  • 최신 커밋의 모습과 비교했을 때 조금이라도 바뀐 내용이 있는 상태.

출처 : 코드잇 ,pro Git

0개의 댓글