git cheat sheet3
이 포스트는 여러 절로 구성되어 있습니다.
git에 대한 자세한 내용은 다음 책을 참고 바란다.
본 절에서는 브랜치 작업과 관련된 명령어를 정리하였다.

1. Setup
- git branch: 브랜치 목록 표시
- git branch [브랜치명]: 해당 브랜치 명으로 브랜치 생성
- git checkout [브랜치명]: 해당 브랜치로 전환
- git checkout –b [브랜치명]: 브랜치 생성과 동시에 전환
- git branch -m [브랜치명] [새로운 브랜치명]: 브랜치명 변경
- git branch –d [브랜치명]: 해당 브랜치 삭제
2. Merge, rewrite
2.1 merge
- git merge [브랜치명]: 현 브랜치에 해당 브랜치의 내용 병합

- git merge --ff [브랜치명]: fast-forward 관계에 있으면 commit을 생성하지 않고 현재 브랜치의 참조 값 만 변경(default)

- git merge --no-ff [브랜치명]: fast-forward 관계에 있어도 merged commit 생성

- git merge --squash [브랜치명]: fast-forward 관계에 있어도 merged commit 생성, merging 브랜치 정보 생략
2.2 rebase

- git rebase [브랜치명]: 현재 브랜치가 해당 브랜치(브랜치명)에부터 분기하도록 재배치
- git rebase --continue: 충돌 수정 후 재배치 진행(commit 대신)
- git rebase --abort: rebase 취소
2.3 cherry-pick

- git cherry-pick [commit hash]: 해당 commit의 내용을 현재 브랜치에 추가. 뒤에 commit hash 를 연속 입력하면 복수 추가 가능
- git cherry-pick [commit hash start].. [commit hash end]: 해당 구간의 commit을 한번에 추가
- git cherry-pick –-abort: 충돌과 같은 상황이 발생했을 때 cherry-pick 취소
- git cherry-pick –-continue: 충돌 상황 해결 후 cherry-pick 진행
- git cherry-pick –m [parent number] [merge commit ID]: merge commit을 추가. merge commit의 경우 어떤 부분의 merge를 가져올지 알 수 없다. 그래서 parent number를 추가해야 한다.(1부터 시작하며 main line이 1)