Branch
Software개발시 개발자들은 동일한 소스코드 위에서 신규 개발, 버그 수정 등의 업무를 협업한다. 이 경우, 여러 개발자들이 동시에 다양한 작업을 할 수 있게 만들어 주는 기능이 Branch이다. 브랜치를 통해 하나의 프로젝트를 여러 갈래로 나누어서 관리할 수 있다. 또한, 각각의 독립된 Branch에서 마음대로 소스코드를 변경하여 작업 한 후 원래 버전과 비교하여 또 하나의 새로운 버전을 만들어 낼 수 있다.
브랜치 확인
git branch
git branch명령어를 통해 브랜치가 무엇이 있는지 확인할 수 있고, *가 붙어있는 브랜치가 지금 활성화된 브랜치이다. 또한 확인하고 나갈려면 :q명령어를 통해 나갈 수 있다.
git status
위 명령어를 통해 어디 브랜치에 위에 있는지 확인이 가능하다.
원격 저장소의 브랜치 확인
- 원격 저장소(Remote Repository): 파일이 원격 저장소 전용 서버에서 관리되며 여러 사람이 함께 공유하기 위한 저장소
- 로컬 저장소(Local Repository): 내 PC에 파일이 저장되는 개인 전용 저장소
git branch -r
원격 저장소에 내 브랜치가 두개 있음을 확인할 수 있다.
브랜치의 마지막 커밋 확인
git branch -v
위에서 확인했듯 브랜치별로 마지막 커밋들을 확인할 수 있다.
- 여기서 commit id는 SHA1 알고리즘으로 만들어진 해시값이며, 중복 없는 임의의 문자열이다.
git log
이는 커밋들을 언제 했는지 볼 수 있다.
git 브랜치 생성
git branch <생성할려는 브랜치네임>
브랜치네임을 넣어서 생성할 수 있다.
브랜치로 이동
git switch <브랜치네임>
원래는 checkout을 많이 썼는데, git 2.23버전부터 이를 switch와 restore로 분리하였다. checkout이 대체된 이유는 하나의 명령어가 가진 기능이 너무 많기 때문이다. 문서에 나온 정의도 다음과 같이 명확히 분리하였다.
- [checkout]: Switch branches or restore working tree files
- [switch]: Switch branches
- [restore]: Restore working tree files
checkout버튼을 눌러 링크를 타고 확인해보면 더 명확할 것이다. checkout의 기능은 그대로지만 분리해서 사용하면 더 좋을 것 같다.
삭제
git branch -d <브랜치네임>
이렇게 작성하면 삭제가 된다.
👇🏻 참고 사이트
https://da-nyee.github.io/posts/git-git-reset-git-reflog/
https://developer0809.tistory.com/50
https://goddaehee.tistory.com/274
https://mylko72.gitbooks.io/git/content/branch/checkout.html