Appia의 IT세상

[깃, Git] Git에서 HEAD~를 사용하는 방법 본문

Development/GIT

[깃, Git] Git에서 HEAD~를 사용하는 방법

Appia 2023. 12. 10. 07:06
반응형

[깃, Git] Git에서 HEAD~를 사용하는 방법

[깃, Git] Git에서 HEAD~를 사용하는 방법

 

이전 포스팅에서, git에서 commit한 이전 내용에 대해서 확인하고, 원래대로 돌아오는 방법에 대해서 포스팅을 봤습니다.이 부분을 통해서, 이전 commit 내용을 확인할 수 있었고, 이를 통해서 다양하게 활용할 수 있습니다. 이 부분은 실제로 많이 사용이 될 것입니다. 그 과정에서 저는  commit hash를 이용하였습니다. 물론, 이전까지 대부분의 포스팅에서 commit hash를 사용하였습니다. 하지만, commit hash를 사용하다보면, 은근 귀찮은 일이 많습니다. 그래서 git log를 통해서 commit hash를 확인하여 사용하지 않더라도 이전 commit을 찾아갈 수 있는 방법이 있습니다. 그 방법에 대해서 오늘 포스팅에서 다루어보고자 합니다. 

 

[깃, Git] Git 이전 commit 확인 및 되돌아가기: 쉽고 빠른 방법 안내

 

[깃, Git] Git 이전 commit 확인 및 되돌아가기: 쉽고 빠른 방법 안내

[깃, Git] Git 이전 commit 확인 및 되돌아가기: 쉽고 빠른 방법 안내 이전 포스팅에서는 git의 변경사항들에 대해서 임시저장을 할 수 있는 기능인 git stash에 대해서 사용하는 방법에 대해서 이야기했

appia.tistory.com

 

먼저, 다음과 같은 부분을 많이 봐오셨을 것입니다. 

$ git checkout HEAD~1

 

이와 같은 부분에서 ~ 부분을 가장 쉽게 생각하면 -라고 생각하시면 됩니다. 즉, HEAD~1은 현재 HEAD 기준에서 -1 번째 commit으로 생각하고, HEAD~2는 HEAD 기준에서 -2번째 commit을 지칭한다고 생각하시면 됩니다. 

HEAD~ 의 의미

 

그러면 이 부분을 토대로, 한번 git에서 직접 실행을 해보도록 하겠습니다. 먼저, 현재 repository에서의 다음 명령어를 통해서, 'git log --oneline'을 통해서 현재의 git commit의 상태를 검토해보겠습니다. 

git log --oneline의 결과를 통한 commit  상태 확인

 

그리고 이전 포스팅에서 봈던 git checkout을 통해서 commit hash가 아니라, HEAD~를 통해서 이전 commit 의 내용을 확인해보도록 하겠습니다.  다음 명령어를 통해서, 다음 부분을 진행해보도록 하겠습니다. 

$ git checkout HEAD~2

위의 명령어를 실행하면, 이전 포스팅에서 했던 부분과 같이 git checkout이 실행된 것을 알 수 있습니다. 

git checkout HEAD~2 실행결과

이 부분을 토대로, 다시한번 "git log --oneline"명령어를 실행해보도록 하겠습니다. 이전에서 본것와 같이 2개 전의 commit에 HEAD가 있음을 알 수 있습니다. 

git checkout HEAD~2 실행 후 git log --oneline 화면

 

이와 같은 방법으로 commit hash를 사용하지 않고, HEAD~를 이용하여 이전 commit을 찾아갈 수 있었습니다. 

이번 포스팅에서는 [깃, Git] Git에서 HEAD~를 사용하는 방법에 대해 다뤘습니다. commit hash를 사용하는 것과 비교하여 더 간편한 방법으로 이전 commit을 참조할 수 있습니다. 물론, 어떤 방법을 선택하든 원하는 방식으로 사용하면 됩니다. 물론, 이러한 약간의 디테일이 외부에 보여지기에, 파워유저로 보일수 있을 수 있는 매력적인 기능이라고 생각합니다. Git은 유연한 사용법을 허용하므로 사용자의 편의에 맞게 선택하면 됩니다. 작업하시다가 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 

반응형
Comments