[Git] 브랜치 명령어
브랜치 명령어 모음
새로운 브랜치 생성
$ git branch 새로운 브랜치 이름
새로운 브랜치 생성 후 해당 브랜치로 전환
$ git checkout -b 새로운 브랜치 이름
$ git switch -c 새로운 브랜치 이름
Remote Repository 에도 생성한 브랜치를 반영하려면
$ git push origin 새로운 브랜치 이름
// dev 브랜치를 만들어서 해당 브랜치로 이동해 보자.
$ git checkout -b dev
$ git push origin dev
// 브랜치가 잘 생성되었는지 확인해보자.
$ git branch
브랜치 목록 확인
$ git branch
브랜치 목록과 각 브랜치의 최근 커밋 확인
$ git branch -v
브랜치 삭제
$ git branch -d 삭제할 브랜치 이름
$ git branch -D
: 병합하지 않은 브랜치를 강제 삭제하는 방법.
브랜치 전환
$ git switch 브랜치 이름
$ git checkout 브랜치 이름
브랜치 병합
master
브랜치로dev
브랜치를 병합할 때 (master ← dev)- merge를 하기 위해서는 먼저 병합이 될 브랜치로 이동한다.
dev
의 내용을master
로 병합하기 위해서는 현재 위치가master
인 상태에서 merge 명령어 !dev
브랜치가 머지되기 전master
브랜치에 추가적인 커밋이 없다면, 브랜치가 분기될 필요 없다.
자동적으로 fast-forward 방식으로 병합이 된다.fast-forward
: 별도의 커밋을 생성하지 않고master
브랜치가 가리키는 커밋을dev
가 생성한 커밋으로 바꾸는 작업을 말한다.
$ git checkout master
$ git merge dev
merge ? rebase ?
rebase의 원리가 바로 fast-forward와도 같다.
merge
변경 내용의 이력이 모두 그대로 남아 있기 때문에 이력이 복잡해진다.
rebase
말 그대로 branch base를 이동시킨다는 뜻으로, 머지처럼 브랜치 통합을 목적으로 하지만, 특정 시점으로 브랜치가 가리키는 곳을 변경하는 기능을 합니다.
병합을 취소하고 이전 커밋으로 되돌리기
git reset -- hard 커밋 넘버
로그에 모든 브랜치를 그래프로 표현
$ git log --branches --graph --decorate
아직 commit 하지 않은 작업을 스택에 임시로 저장
$ git stash
git workflow : project
프로젝트를 진행하는 전체 흐름은 다음과 같다.
Local
에서 새로운 브랜치를 생성하고 작업이 끝나면 Remote Repository
로 Push
한다.
그리고 Project Upstream Repository에 반영(merge
)될 수 있도록 Pull Request
한다.
만약 작업하던 중간에 Remote upstream 에 업데이트가 생긴다면 Local 로 pull
받아주어야 한다는 것을 잊지 말자!
$ git init
$ git checkout -b [브랜치 이름]
$ git merge [브랜치 이름]
$ git remote and origin [git repository 주소]
$ git remote -v
Author And Source
이 문제에 관하여([Git] 브랜치 명령어), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@chayezo/Git-브랜치-명령어저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)