프로그래밍/Git

[Git] 1. Git stage (feat. tracked 상태란)

Beginner:) 2023. 5. 24.
320x100

tracked(추적 파일)란  Git의 추적 개념이다.

 

즉 untracked 상태라면 Git이 관리해주지 않는 상태, tracked는 Git이 관리하는 상태이다.

 

왜 이런 상태를 만들었냐 하면, 만약 Git이 자동으로 파일들을 관리한다 할 때, 무수히 많은 파일들을 관리하기엔 버거울 수 있고 프로젝트와 관련 없는 데이터까지 관리하기엔 비효율적이다.

 

그래서 사용자가 효율적으로 관리하기 위해 tracked(추적 파일)와 untracked(추적하지 않는 파일)로 나뉠 수 있다.

 

Git이 관리하는 저장 공간을 Stage라 하는데, 임시 저장공간이라 할 수 있다.

 

즉, tracked 상태란 Stage에 등록된 파일이라 할 수 있다.

 

이후에 git push 등으로 Git의 형상관리를 위해서는 최종상태가 stage상태어야 한다.

 

Git을 이용하여 추적상태(tracked)로 만들어 보자.

 


 

tracked & untracked 상태 출력

git status

"""
Untracked files:
  (use "git add <file>..." to include in what will be committed)

	1_git_tracked/

nothing added to commit but untracked files present (use "git add" to track)
"""

 

Untracked -> tracked 스테이징

git add [파일 경로]
# 또는
git add . # 현재 경로의 모든 파일
git add ./1_git_tracked/1_git_tracked.c

"""
HEAD detached at bf49402
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

	new file:   1_git_tracked/1_git_tracked.c
"""

 

git unstage

git rm --cached [파일 경로]

 

git unstage 기록 삭제

(unstage를 하면 원래 상태로 돌아오나, 삭제&수정시 기록에 남게된다)

 

git reset HEAD [파일 경로]

 

참고로 stage 되지 않은 공간을 워킹 디렉토리, stage 된 공간을 스테이지 영역이라고 한다.

 

반응형

'프로그래밍 > Git' 카테고리의 다른 글

[Git] 4. branch(2)  (0) 2023.06.05
[Git] 3. branch(1)  (0) 2023.05.31
[Git] 계정 자동 로그인(feat. VSCode)  (0) 2023.05.29
[Git] 2. Commit (feat. log, diff)  (0) 2023.05.27
Git Permission denied (publickey) 에러 해결  (0) 2023.02.25

댓글