지난 글에 이어서 여러가지 실습을 해보면서 사용법을 익히도록 해봅시다.
1) Git설치.
2) Git으로 버전관리 할 디렉토리인 'git Study'를 생성
3) 'git Study' 디렉토리 내에서 'git init' 명령어를 통해 이 디렉토리가 git으로 관리됨을 선언
4) 'git Study' 디렉토리 내에서 'test.c'라는 파일을 만들고, add, commit 해보기.
여기까지가 지난 글에 했던 작업입니다.
이번 글은 add와 commit에 대한 좀 더 자세한 사용법에 대한 실습을 하겠습니다.
오늘 실습을 하기전에 먼저 commit을 하려면 add를 먼저 해야된다는 것을 알아야합니다.
그리고 여러 파일에 대해 git add를 하고 commit를 하게되면 add한 파일이 한꺼번에 commit됩니다. (즉, 한꺼번에 commit했으므로 이전 Version으로 돌아가려면 add한 파일들 모두 다 이전 Version으로 돌아갑니다.)
그러므로 각 파일에 대해 따로 버전관리를 하려면
git add test.c -> git commit
git add test2.c -> git commit
이런식으로 각각 따로 add와 commit을 해 줘야합니다.
이해하기 어려웠다면 실습을 통해 보여드리겠습니다.
★git add,commit에 대해 좀 더 자세히 소개하고자
현재 디렉토리 내에 'test.c' 파일을 수정하였고, 'test2.c' 파일을 추가적으로 생성하였습니다.
1) 'git status' , 'git log'
< test.c가 변경되었다는 것과 test2.c가 추적되고있지 않다는 status를 볼 수 있습니다>
<현재 Version 1까지 commit된 것을 확인할 수 있습니다.(version1은 test.c를 commit하고 test.c를 수정하기 전>
2) git add test.c -> git add test2.c -> git commit
<현재 상태>
위의 상태에서 git add test.c , git add test2.c 를 하고 git commit를 해보겠습니다.
즉, 두 파일을 add하고 한꺼번에 commit하는 것입니다.
두 파일을 add하고 commit하니까 새로운 Version2가 '1개' 생긴 것을 볼 수 있습니다.
이것은 'add한 파일들이 같이 버전 갱신이 된다'입니다.
만약 test.c에 대해 Version1으로 돌아가고싶다 -> test2.c도 test.c와 같이 commit 했으므로 test2.c는 commit되지 않은 상태로 돌아가는 것입니다.
Version1으로 되돌린 후 디렉토리 모습입니다.
Version1은 test2.c가 없고 test.c가 수정되기 전 버전이므로 이 버전으로 돌아가는 것입니다.
(이전으로 돌리는 방법은 추후에 포스팅 할 예정입니다)
3) git add test.c -> git commit -> git add test2.c -> git commit
<현재 상태>
위의 상태에서 git add test.c -> git commit -> git add test2.c -> git commit을 해보도록 하겠습니다.
test.c를 수정했으므로 commit message를 'Fix test.c'로 하였고, test2.c를 추가했으므로 'Add test2.c'로 하였습니다.
이렇게 되면 'Fix test.c'의 상태로 돌아가도 test.c까지 commit된 것은 남아있고 test2.c가 commit 된 내용만 삭제.
이렇게 각 파일을 따로 add와 commit을 하게되면 좀더 확실히 버전 관리를 할 수 있습니다.
결론 : git add를 통해 commit할 파일을 선택할 수 있다.
'Git' 카테고리의 다른 글
Git을 시작해보자! <5편> (git 명령어들의 option) (0) | 2019.02.20 |
---|---|
Git을 시작해보자! <4편> (git reset,git revert) (0) | 2019.02.19 |
Git을 시작해보자! <3편> (git log, git diff) (0) | 2019.02.18 |
Git을 시작해보자! <1편> (init, add, commit) (0) | 2019.02.13 |
Git이란? (0) | 2019.02.13 |