GIT

GIT : git checkout vs git switch 개념, 설명

A Thin Idea 2023. 1. 19. 12:00
반응형

https://git-scm.com/docs/git-checkout

 

Git - git-checkout Documentation

When there is only one argument given and it is not -- (e.g. git checkout abc), and when the argument is both a valid (e.g. a branch abc exists) and a valid (e.g. a file or a directory whose name is "abc" exists), Git would usually ask you to disambiguate.

git-scm.com

 

 

GIT : git checkout vs git switch 개념, 설명

 

 

git checkout

‘git checkout 브랜치 이름’ 명령이 있습니다. ‘git switch 브랜치이름’ 명령과 동일한 작업을 할 수 있습니다. 이 브랜치 이름이 무엇이든 그곳으로 이동합니다. 이 git checkout 명령은 오랫동안 사용되었습니다. 여전히 git에 존재하고 브랜치를 이동하는 것보다 훨씬 더 많은 작업을 수행합니다. 깃에서 만능 역할을 합니다.

모든 것을 하지는 않지만 많은 작업을 수행합니다. 많은 사용자들이 혼란스러워하고 너무 많은 작업을 수행한다고 생각해서 깃은 switch 명령을 도입했습니다. 깃에서 사용한 git switch는 브랜치를 이동하는 새롭고 멋진 방법입니다. git checkout은 구식이지만 여전히 작동합니다.

이 명령어를 소개하는 이유는 사방에서 그리고 문서들, 블로그 포스트, 유튜브 영상 등에서 여전히 보여지기 때문이고 동료들도 브랜치 이동을 위해 git checkout 명령을 사용할 수 있습니다. git checkout을 특정한 한가지 방식으로 사용하는 방법입니다. git checkout은 더 많은 작업을 한다는 것을 기억합니다.

여기 첫번째 부분만 알아둡니다. 브랜치를 이동하거나 작업트리를 복원하기 위해 이 명령을 사용할 수 있습니다. 하지만 브랜치를 이동하는 것은 매우 간단합니다. 사용할 수 있는 또 다른 방법은 2단계에 걸쳐 브랜치를 생성하고 이동하는 대신에 한번에 이 작업을 수행할 수도 있습니다. -c 옵션을 사용해서 브랜치 이름을 제공하면 브랜치를 생성하고 그 브랜치로 이동하는 작업을 한번에 실행할 수 있습니다. 꽤 유용한 옵션입니다.

master로 돌아가서 새 브랜치를 만들어 봅니다. master로 이동하기 위해 switch나 checkout 어느 것을 사용해도 상관없습니다. 만약 git checkout를 사용하면 상응하는 명령어가 있습니다. 만약 브랜치를 만들고 한번에 이동하고 싶다면 git checkout -b 또는 git switch -c를 사용합니다.

git switch -c를 선호하지만, checkout이 사용되는 것을 보게 됩니다. 브랜치를 만들고 이동하고, 별도의 브랜치에서 커밋을 실행하고, 그 브랜치 사이를 이동하고 이 모든 것들이 어떻게 돌아가는지 명확하게 이해할 수 있습니다. 브랜치가 파일 단위로 존재하지 않습니다. 파일 하나가 업데이트되는 것을 보고 있지만 이 브랜치에 다른 파일을 만들 수도 있습니다. 깃은 다른 브랜치가 아니라 이 브랜치에 파일이 생기는 것입니다. 아니면 깃은 관련된 모든 파일과 폴더들을 브랜치에 따라 업데이트할 겁니다.

반응형