git 프로젝트의 단계와 3가지 파일의 상태

2022. 10. 26. 20:07Git

728x90

현재 상황 : vi편집기로 blog.c라는 파일을 만든 상태

 

add 명령어(변경사항 저장)

작업위치(그 이하) 폴더에 작업한 파일이 있을 경우 add를통해서 staging Area로 옮길 수 있다 = tracked되는 파일 추가

git add 파일명
git add .                        //전체 add

blog.c 파일을 add하였더니, 아직 커밋이 되지않았다, 

git rm --cached <file> ...를 사용하면 unstage로 간다. 

이걸로 미루어 봤을 때 지금은 stage있는 상태이다.

 

commit(변경사항 확정)

git commit -m "커밋내용"

staging area에 저장되어 있는 변경사항들을 git repository에 등록(변경사항 확정)

 

vi 명령어로 blog.c파일을 수정했다.

 

 

현재 blog.c는 modified상태이다.

git add <file>... to update what will be committed => add명령어를 사용하면 다시 커밋이 된다.

git restore <file>.... to discard changes is working directory => restore 명령어를 사용하면, woking directory로 파일이 이동한다.

즉, 현재 blog.c파일은 working directory에도 있지 않고, repository에도 있지 않다.

 

다시 add명령어를 사용했다.

git restore --staged <file> ... => 이 명령어를 사용하면 unstage로 간다.

즉, 현재는 unstage상태가 아니다.

 

다시 commit명령어를 사용했다.

git log 명령어 사용

 

정리해보자면, 

 

git 프로젝트의 단계와 3가지 파일의 상태

 

Woking Directory

Working Directory에서는 tracked상태 , untracked상태가 있다.

처음 생성한 파일들은 다 untracked상태

git add 명령어 사용하면 tracked 상태가 되면서 Staging Area로 이동됨

Staging Area

Staging Area에서는 Working Directory에 있는 파일들의 추적상태 관리

Staging Area에서는 stage상태, unstage상태가 있다.

stage상태가 되야지 commit이 가능하다.

unstage상태는 파일의 변화가 있다는 의미이다. → modified상태

modified상태의 파일들은 git add 명령어 사용하면 Staging Area의 stage상태가된다.

 

이상입니다~

728x90

'Git' 카테고리의 다른 글

git Vim으로 commit 메시지 작성하기  (0) 2023.04.26
특정 파일만 커밋하기!  (0) 2023.03.08
Fork와 Clone의 차이점  (0) 2022.11.05
LF will be replaced by CRLF [Git 경고 메세지] 해결방안  (0) 2022.10.26
git 시작하기  (0) 2022.10.26