[Git] #2 Branch Create / Checkout / Delete

Yeon·2023년 7월 20일
0

Git

목록 보기
2/6
post-thumbnail

지난번에 Git 특강 이후, VS Code로 코딩할 때는 Git Desktop을 사용해서 Git bash를 쓸 일이 없을 줄 알았는데....
안드로이드 스튜디오를 사용하면서 Git Bash를 다시 만났다😭

특강 듣고 명령어를 정리해서 올리긴 했었지만 다시 공부하면서 기록해보려고 한다.




⚙️ Create/Checkout Branch

새로운 브랜치를 만들고 원격 저장소에 푸시할때 바로 할 수 없고, 해당 브랜치로 전환을 시켜줘야 한다.

step1. 새로운 branch 생성

git branch 브랜치명

step2. 새로운 branch로 전환

새로 만든 브랜치를 사용하여 어떤 작업을 수행하려면 이 브랜치를 사용하겠다고 명시적으로 지정해주어야 한다.
git checkout 브랜치명 또는 git switch 브랜치명 명령어로 브랜치 전환을 할 수 있다.

➕checkout / switch / restore

Git은 2019년 8월 16일 2.23.0 업데이트 하면서 checkout의 기능을 switchrestore로 분리했다.

  • checkout 브랜치를 전환하거나 변경사항을 원래대로 복원
  • switch 브랜치 전환
  • restore 변경사항을 원래 상태로 복원

➕ 브랜치 생성과 전환을 한번에?

git checkout -b 브랜치명
checkout 명령어에 -b 옵션을 넣으면 브랜치 작성과 체크아웃을 한번에 실행 할 수 있다.

step3. 원격저장소에 branch 푸시

git push origin 브랜치명


📌 Q. 브랜치 전환을 하지 않고 push를 실행한다면?

git branch test

git push origin test

위와 같이 진행을 하면,
현재 작업 중인 브랜치가 test 브랜치가 아닐 수 있고, 현재 작업중인 브랜치를 원격 저장소의 test 브랜치로 푸시하려고 할거에요.
그러니까 새로운 브랜치를 생성하면 꼭 해당 브랜치로 전환한 후 푸시를 해야 합니다.




🗑️ Delete Branch

이후에 master 브랜치를 로컬과 원격에서 모두 삭제하려면??

먼저 git branch -a 명령어로 생성되어 있는 브랜치 목록을 확인 해보겠습니다!

branch-delete1

로컬 브랜치로 main, master가 있고, 현재 main 브랜치에 checkout 되어있는 상태입니다.
그리고 원격 브랜치에도 main, master가 올라가 있는 상태에요.
여기에서 로컬과 원격에 있는 master 브랜치를 모두 삭제해볼게요!

Local Repository에 있는 branch 삭제

git branch -d 브랜치명 명령어를 통해 로컬 저장소에 있는 브랜치를 삭제할 수 있습니다.
로컬 저장소에 있는 master이니까 git branch -d master라고 입력하면 되겠죠?
이후에 브랜치 목록을 확인해보면 로컬 저장소의 master 브랜치가 잘 삭제되었습니다.
branch-delete2

Remote Repository에 있는 branch 삭제

git push origin --delete 브랜치명 명령어를 통해 원격 저장소에 있는 브랜치를 삭제할 수 있습니다.
저는 master를 삭제하기 때문에 git push origin --delete master를 입력했습니다.
브랜치 목록을 확인해보면 원격 저장소에 있는 master 브랜치가 잘 삭제되었습니다.
branch-delete3

1개의 댓글

comment-user-thumbnail
2023년 7월 20일

가치 있는 정보 공유해주셔서 감사합니다.

답글 달기