전 강의에서 버전 생성을 배웠다. 이번에는 버전을 어떻게 활용할지에 대해 알아보자.
[Log/Diff]
기존 것들과의 차이점 확인
git log
git log를 통해 지금까지의 commit 메세지를 확인할 수 있다.
git log with Additional Option
git log 뒤에 다양한 추가 옵션들을 작성해서 여러 기능을 구현할 수 있다.
git log -p
commit과 commit 사이의 souce 차이를 확인할 수 있다.

diff --git a/f1.txt b/f1.txt index 28d1445..9462317 100644 --- a/f1.txt +++ b/f1.txt @@ -1 +1 @@ -123456789 // 버전 2의 내용 +f1.txt : 2 // 버전 3의 내용
diff --git a/f2.txt b/f2.txt new file mode 100644 index 0000000..28d1445 --- /dev/null // 버전 1에서 f2.txt가 없었다 +++ b/f2.txt @@ -0,0 +1 @@ // 버전 1의 내용 +123456789 // 버전 2의 내용
git log id
commit message는 고유한 아이디를 가지고 있다.
ex.
e13249dc0fdfc50bdf286507d657ad20dfcaa13f이걸 입력하면 입력된 아이디 까지의 로그를 출력한다.
git diff id..id
해당 id를 가진 commit과 commit 사이의 souce 차이를 확인할 수 있다. (즉 내가 원하는 commit 사이의 차이점을 확인할 수 있다)
git diff
f1.txt 파일을 수정한 후
diff 명령을 수행해보자.
이 전 commit 과의 차이점을 확인할 수 있다. commit 하기 전 현재까지의 자신의 수정 사항이 맞는지 마지막으로 확인할 수 있는 작업이다.
[Reset/Revert]
Commit 취소 (함부로 수행하면 안된다. 안전하게 하려면 기존 것을 copy한 후 이 작업을 수행하도록 하자)
git reset
git reset id—hard명령어를 통해 원하는 commit으로 돌아갈 수 있다.
id는 돌아가고 싶은 commit id이다. 예를 들어 commit 1,2,3,4,5가 있고, commit 3으로 돌아가고 싶다고 해보자. 이 때는
git reset commit3’s id—hard 명령어를 입력하면 된다. commit 4,5는 지워지게 되고, 1,2,3만 남게 된다. (hard 외에도 soft 등의 더 좋은 여러 옵션이 있다. 하지만 이는 추가적인 이해가 필요하므로 우선 hard를 쓰도록 하자)(복구가 가능하다. 하지만 복구 작업은 git의 원리를 이해하고 수행해야하기 때문에 매우 어렵다. reset은 꼭 필요한 상황이 아니라면 함부로 쓰지 말자)
(이미 git hub 등의 원격 저장소에 공유한 자료에 대해서 reset을 절대 쓰면 안된다)
git revert
git revert 명령어를 통해 원하는 commit으로 돌아갈 수 있다.