[참고] : https://www.youtube.com/watch?v=hFJZwOfme6w&list=PLuHgQVnccGMA8iwZwrGyNXCGy2LAAsTXk&index=1
mkdir git_project_ws
cd git_project_ws
git init
# Initialized empty Git repository in /home/yjh/Backup_ws/git_project_ws/.git/
.git 이라는 디렉토리가 생김 -> 버전 관리를 하면 여러 정보들이 생기는데 그 정보들이 이 디렉토리에 저장됨sudo apt install vim
vim f1.txt # source : 1 을 작성해주고 저장한다
cat f1.txt # source : 1 을 출력한다.
git status

git status 를 해주면 작성한 f1.txt 파일이 추적되고 있지 않는다고 뜬다.
이 파일은 버전 관리가 되고 있는 git_project_ws 디렉토리에 존재하지만 파일을 git에게 버전관리를 하라고 명령을 하지 않았다.
git add f1.txt 를 입력하여 git에게 버전관리를 시작하도록 명령한다.
git add f1.txt
git status

git config --global user.name '닉네임'
git config --global user.email '이메일'
이 작업을 해주면 내가 작성한 버전은 이름과, 메일 주소를 포함하기 때문에 누가 작업하고 있는지 알 수 있게된다.
이후에 git commit을 입력하여 맨 윗줄에 1을 입력하고 저장한다.
그러면 다음과 같은 화면이 뜬다
git commit

git log를 통해 누가, 어떻게, 언제 무엇을 변경했는지 알 수 있다git log

vim f1.txt

f1.txt 가 수정되었다고 modified 로 나온다git status

이 상태에서
git commit을 하면 안된다
- 다시
git add f1.txt를 입력하여 다시 버전 관리 시스템에 add를 시켜야 한다- 새로운 파일, 이미 버전 관리가 되고 있는 파일이 수정되었을 때도 add를 해주어야 한다
( 파일 최초 생성, 파일이 수정되서 버전을 만들기 전에도 add를 먼저 해야함 )

이 상태에서 git commit을 통해 숫자 2를 작성한다

git log를 통해 상황 살펴보기

cp f1.txt f2.txt
git status

add를 해주어야 한다git add f2.txt

새로운 파일 f2.txt를 만들고 add를 해주었으니 commit을 해주어야 함
3번째 파일이니까 3으로 저장하기

git log로 히스토리 확인하기

f1.txt와 f2.txt를 vim을 통해 수정해준다cat f1.txt , cat f2.txt를 통해 파일 내용 확인
=> 파일을 수정했으니, git status를 통해 확인을 해보면 버전관리가 되지 않고있다고 뜬다

따라서
git add를 통해 버전관리에 추가를 해주어야함
f1.txt만 add를 해주면 해당 파일만 커밋이 될 것임 (f2.txt는 커밋이 되지 않음add를 해준 파일만 커밋을 한다
이 의미는 "선택적"으로 커밋을 할 수 있다는 의미
git commit을 치고, 4번째 커밋이므로 숫자 4를 쓰고 저장한다

git log

git status로 확인을 해보면 다음과 같음
(f2.txt는 커밋이 되지 않음)

f1.txt 와 f2.txt 파일을 만들고
f1.txt만 add를 해주어 커밋 대기 상태로 만든다
그 후, commit을 해주면 f1.txt만 커밋이 되고 f2.txt는 커밋이 되지 않는다
git commit은 add를 통해 커밋 대기 상태인 파일들만 커밋을 해준다
이러한 커밋 대기 상태를 git 에서는 stage area 라고 한다