깃은
버전관리할 파일을 add를 통해 'stage area'란 곳에 올리게 되고, commit을 통해 버전에 포함시킨다.
이 stage area에 대해 알아보자.
우선 현재 상황 (1~3번까지의 상황)
f1.txt 파일을 v.1이란 버전으로 관리 하고 있다.
f1.txt 파일내용 : f1.txt ver.1
복습하기
f2.txt를 만들어 add 후 commit으로 새 버전을 만들어 보자.
위처럼 f2.txt를 만들고 명령어
'git status'를 쳐보면
Untracked files : f2.txt
추적이 안되는 파일 f2.txt를 확인 할 수 있다.
'git add f2.txt'로 git에 추가한다.
'git add f2.txt'
f2.txt 파일을 등록 후,
'git status'
를 입력해 보면 새롭게 등록된 것(new file)을 확인 할 수 있다.
'git commit'으로 버전 메시지를 수정한다.
'i'
를 입력해 insert 모드로 전환 후, 'v.2'를 입력한다.
f2.txt가 새로운 파일로 들어왔다는 것을 확인 할 수 있다.
작성 후, 'esc'키로 insert 모드를 종료한다.
':wq'
vim(commit)을 저장 후 종료한다.
위 처럼 v.2로 바뀐 것을 볼 수 있다.
'git log'
깃의 로그를 확인 해 보자.
여기까지는 복습 겸, 파일저장/버전수정하는 방법이었다.
이제는 파일 안의 내용을 '수정 후'에 'add', 'commit'을 통해 새로운 버전을 만들어보자.
단! 파일 f1.txt 만 add해서 commit 해보자.
파일 내용 수정
f1.txt의 수정내용 : f1.txt ver.2
f2.txt의 수정내용 : f2.txt ver.1
'git status'를 입력해 보자.
'git status'
위 처럼 f1,txt, f2.txt 파일이 수정되었다. 그리고 commit 되지 않았다. 라고 빨간색으로 표시된다.
여기서 중요!
add'를 통해 골라서 'commit' 할 수 있다.
: 만약, 많은 작업(change)이 있는데 commit할 타이밍을 놓쳤다면 (이런 경우가 많음!) 'commit'할 파일 만 골라 'add' 후 'commit'할 수 있다.
f1.txt 만 add 후, commit 해보자
git add f1.txt
f1.txt를 깃에 추가했다.
git status
깃의 현황을 보면, add를 통해 stage area에 올라가게 된 f1은 초록색으로
아직 저장소에 있지만, stage area에 올라가지 않은 f2는 아직 빨간색인걸 볼 수 있다.
'git commit'
-> 'i' -> v.3 ->'esc' -> ':wq'
'git commit'을 통해 버전메세지를 v.3로 수정 후 저장, 종료한다.
'git log'
git log를 통해서 확인해 보면 v.3로 제대로 저장된 것을 볼 수 있다.
다시 'git status'
저장소에서 아직 add 되지않은 f2.txt만 빨간 글씨로 나온다.
git add를 하면 그 파일은 'commit 대기 상태'에 들어가게 된다.
git commit은 'commit 대기 상태'에 있는 파일에 대해서만 그 버전에 포함시킨다.
git에서는 이 'commit 대기상태'를 'stage area'라고 부른다.
정리
'git commit'은 'git add'를 통해 'stage area'에 올라와 있는 파일에 대해서만 버전에 올린다.
즉, add를 통해 버전에 올릴 수 있는 파일을 선택해서 올릴 수 있다.
git status는 '수정된'change 파일 들의 상태를 알 수 있다.
(add로 stage area에 올라가 있는 파일 : 초록색 / add로 stage area에 올라가지 않은 파일 : 빨간색)
'공부하기 > GitHub' 카테고리의 다른 글
깃(git) 시작하기 6. 과거 버전으로 돌아가기 (git reset) (0) | 2018.11.22 |
---|---|
깃(git) 시작하기 5. 버전 간의 차이점 확인하기 (git log -p/ git diff ) (0) | 2018.11.22 |
깃(git) 시작하기 3. 버전 만들기 (git config / git commit) (0) | 2018.11.22 |
깃(git) 시작하기 2. 관리 파일 확인, 등록하기 (git status, git add) (0) | 2018.11.21 |
깃(git) 환경구축 - Sublime Text와 Git 연동하기 (0) | 2018.11.16 |