기존의 git log
명령은 단순히 git으로 작업했던 내용들을 보는 정도였습니다. 커밋 메세지나, 변경 시간, 수정한 사람 등에 대한 정보를 확인할 수 있었습니다. 이런 git log
명령에 옵션을 더하면 브랜치에 대한 정보를 쉽게 얻을 수 있습니다.
우리가 사용하는 git bash는 터미널은 텍스트로 이루어져있기 때문에, 파일 구조가 여러 갈래로 나뉘게 되는 브랜치 특성상 그 구조를 확인하기가 어렵다는 점이 있습니다. 그래서 이러한 구조를 쉽게 보고자 git log에서 옵션을 지원하고 있습니다.
--oneline
옵션은 커밋 정보를 한 줄로 표시해줍니다. 기존의 git log를 통한 커밋 정보 확인은 커밋 해시, 브랜치, 작성자(Author), 작성일(Date), 그리고 커밋 메세지로 표기되었습니다. 그래서 커밋기록이 많은 경우 긴 스크롤을 만들게 되며 커밋 메세지만 확인하고 싶을 경우 번거로움을 주게 됩니다.
그래서 git log명령과 함께 --oneline 옵션을 이용할 경우에 짧은 커밋 해시, 브랜치, 커밋 메세지만을 한 줄로 나타내어 좀 더 간결하게 확인이 가능합니다.
--branches
옵션은 현재 존재하는 각 브랜치별로 최신 커밋을 확인할 수 있는 옵션입니다.
위의 상황에서 master에서 한 번 커밋작업을, automn브랜치에서 또 한 번 커밋작업을 해둔 상태입니다. 그러면 --branches
옵션으로 내용을 확인해보겠습니다.
앞에 브랜치를 나타내는 괄호가 보이는데, 이는 해당 브랜치의 최신 커밋을 의미합니다. summer와 spring 커밋은 "commit a1"이라는 메세지를 가진 커밋이 최신인 브랜치이고, master브랜치는 "add msg a1 by bam"이라는 커밋 메세지를 가진 커밋을 최신으로, automn은 "add msg a1 by otherStudent"라는 메세지를 가진 커밋이 최신임을 가리키고 있는 것 입니다.
--graph
옵션은 현재 브랜치들의 상태를 막대로 나타냅니다. 반드시 --branches
옵션과 함께 사용하여야 작동이 되며, 이 옵션을 통해 좀 더 직관적으로 브랜치가 언제 나뉘었는지, 병합되었는지를 확인할 수 있는 옵션입니다.결과 화면을 해석해보자면 37fc3bd 커밋 이후에 master와 automn브랜치로 나뉘었다고 해석할 수 있습니다.