이전 게시물에 이어
터미널에 git status를 입력하면,
'No commits yet'이라는 문구가 뜬다.
commit을 타임캡슐이라고 생각하면 됨.
그리고 'Untracked files'은 git의 관리에 들어간 적이 없는 파일.
즉, 파일들을 타임캡슐에 넣은 적이 없다는 뜻.
캡슐에 넣어서 땅속에 묻으려면 일단 캡슐에 담아야 함.
git add 파일이름
엔터치면, 파일 옆 표시도 바뀌는 것을 볼 수 있음.
git status로 현재 상황을 확인하면,
tottenham.yaml 파일은 캡슐에 담았고, 나머지 두 파일은 아직인 상황.
Q. 여기서 나머지 두 파일을 한 번에 캡슐에 담고 싶다면?
git add .
git add .을 통해 모든 파일을 캡슐에 넣었고,
git status로 현재 상황을 확인하면!
모든 파일들이 캡슐 안에 들어가 있음. 캡슐을 묻을 준비가 끝났다는 것,,,
새로운 버전을 만든다는 뜻.
git commit
터미널에 입력하면,
이런 화면이 뜰 것임.
'FIRST COMMIT'이라는 문구를 적은 뒤, ctrl+w를 누르면 빠져나옴.
git status로 현재 상황을 확인해보면 ↓
더이상 묻을 캡슐이 없다는 것.
소스트리에서도 확인해보면 프로젝트는 'FIRST COMMIT'이라는 버전에 와 있는 것임.
이후 터미널에 git log
를 입력하면,
노란색 글씨로 commit이 뜨고, 뒤에 일련번호가 따라옴.
모든 commit마다 고유의 문자열이 있음.
우리가 적어 놓은 commit 메시지도 나온 것을 확인 가능.
사실 ↑ 위의 방법은 commit을 복잡하게 하는 방법임.
[더 쉽게 commit 하는 법]
git commit -m "커밋메시지"
일단 더 복잡한 변경사항들을 만들어 보겠음
1) mancity.yaml 파일 삭제
2) tottenham.yaml의 manager를 '안토니오 콘테'로 변경
3) liverpool.yaml 파일 추가
mancity.yaml 파일은 삭제되었으며,
tottenham.yaml 파일은 수정되었으므로 'modified'의 약자인 'M'으로 표기.
liverpool.yaml 파일은 새로 생성되었음.
이번에도 역시나 git status로 현재 상황을 확인해보면,
변경사항들을 확인할 수 있음.
++ 변경사항을 좀 더 구체적으로 보는 법
git diff
변경사항을 보다 자세하게 알 수 있음.
[git diff 사용법]
변경사항들을 한 번 더 캡슐에 담아보겠음
liverpool.yaml 파일이 새로 생겼다는 사실,
mancity.yaml 파일이 삭제 되었다는 사실,
tottenham.yaml 파일이 수정되었다는 사실 모두가 캡슐에 담긴 상태.
그럼 이제 commit을 해서 캡슐을 땅속에 묻어야 할 타이밍.
git commit -m "커밋메시지"
입력.
git log
를 통해 살펴보면
두 가지의 버전을 확인할 수 있음.
소스트리에서도 확인 가능.
[TIP. add와 commit을 동시에 하는 법]
git commit -am "(메시지)"
하지만 이 경우는, 새로 생성된 파일이 없을 때 한정.
세 가지의 커밋을 더 추가해보자.
1) tottenham.yaml의 members에 굴리엘모 비카리오 추가
커밋 메시지 : Add 굴리엘모 비카리오 to tottenham
2) arsenal.yaml 추가
커밋 메시지 : Add team arsenal
3)
team : manchester-united
manager : 텐 하흐
members :
- 브루노 페르난데스
- 크리스티안 에릭센
- 라파엘 바란
커밋 메시지 : Replace arsenal with manU
이렇게 총 5가지의 버전을 만들었음.