+
Git의 기본 브랜치는 Master이지만 GitHub에서의 기본 브랜치는 Main
+
Github 브랜치는 'Master'에서 'main'으로 이름이 변경되었다!
why?
'Black Lives Matter' 운동에 발맞춰 주종(주인과 노예)관계를 뜻하는 'master', 'slave'를 다른 단어로 대체하기 위해서 라고 한다.
+
또한 Github의 기본 브랜치 이름을 다른 이름으로 설정도 가능하다!
+
master보다 main을 지향하자!
git Checkout의 기능
- Branch 혹은 Commit 전환(switch)
- 내용 되돌리기(restore)
[특정 Branch로 이동하기]
git checkout {Branch Name}
[특정 Branch를 생성하고 해당 Branch로 이동하기]
git checkout -b {New Branch Name}
[특정 Branch에서 파생 Branch로 만들어서 해당 Branch로 이동하기]
git checkout -b {Branch Name} {Base Branch Name}
[모든 변경사항 취소하기]
git checkout.
+
checkout으로 지운 내용은 commit하지 않고 지운 내용이기 때문에 다시 복구할 수 없다.
[특정 파일에서 작업한 내용을 삭제하기]
git checkout-- {File Name}
+
대상: 아직 add / commit 되지 않은 소스 (Working Directory에 있는 변경 내용)
[특정 Commit 버전으로 전환하기]
git checkout {Commit Hash}
+
Commit 하지 않은 내용이 있으면 전환되지 않음.
+
참고 사이트: https://zoosso.tistory.com/729
Q. feat/signup 브랜치를 만들었습니다. 생성한 브랜치 목록과 내가 현재 어떤 브랜치에 있는지 확인해 봅시다.
A. git checkout -b feat/signup
Q. feat/signup 브랜치를 만들었습니다. 생성한 브랜치 목록과 내가 현재 어떤 브랜치에 있는지 확인해 봅시다.
A. git branch
Q. 기본 회원가입 기능 구현을 완료했습니다! 여기에 추가로 페이스북으로 가입하기 기능을 만들고 싶어요. 구현해놓은 기본 회원가입 기능이 망가질 수도 있으니 feat/signup-oauth 브랜치를 하나 더 만들어서 작업해 볼까요?
A. git checkout -b feat/signup-oauth
Q. 소셜 회원가입 기능까지 구현을 완료했습니다! 구현한 기능을 feat/signup 브랜치에 병합하려고 합니다. 먼저 feat/signup 브랜치로 이동하세요.
A. git checkout feat/signup
Q. feat/signup-oauth 브랜치의 내용을 feat/signup 브랜치로 병합하는 명령어를 입력하세요.
A. git merge feat/signup-oauth
Q. 회원가입 기능 구현이 완료된 feat/signup 브랜치를 Remote Repository로 업로드하세요.
A. git push origin feat/signup
Q. 구글 로그인 기능도 추가를 해 보려고 시도하다가 어려워서 그만두었습니다. 작업하던 코드를 잠시 다른 공간에 저장해 둘 방법이 있을까요?
A. git stash