Skip to content

Latest commit

 

History

History
146 lines (114 loc) · 4.22 KB

branch.md

File metadata and controls

146 lines (114 loc) · 4.22 KB

Branch

여러명이 동일 프로젝트를 협업하기 위해서 각각의 브랜치를 만들어 작업한다.
각각의 브랜치들은 서로의 작업영역에 영향을 주지 않는다.

git-branch

Table of Contents

Commands

  1. Create

    Create New branch

    새 브랜치 만들기
    git branch <newBranchName>

    Create New Branch & Checkout

    새 브랜치 만듬과 동시에 체크아웃 하기
    git checkout -b <newBranchName>

    Create Tracking Branch

    원격 브랜치를 트래킹하는 새 브랜치 만들기
    git checkout --track <remote/branchName>

    • branchName 을 가진 트래킹 브랜치가 생성된다.

    Return to TOC

  2. Show

    Show All Branch (Remote + Local)

    원격저장소와 로컬 저장소의 브랜치 보기
    git branch -a

    develop
    feature/channel
    * feature/user
    master
    remotes/origin/HEAD -> origin/master
    remotes/origin/develop
    remotes/origin/master
    

    Show Local Branches Only

    로컬 저장소의 브랜치 보기
    git branch

    develop
    feature/channel
    * feature/user
    master
    

    Show Remote Branches Only

    원격 저장소의 브랜치 보기
    git branch -r

    origin/HEAD -> origin/master
    origin/develop
    origin/master
    

    Show Branch w/ Last Commit Info

    로컬 브랜치의 마지막 커밋 정보 보기
    git branch -v

    develop          322bd34 Service
    feature/channel  d7631d3 WIP : Channel
    * feature/user   15dcbce WIP : Restart
    main             8356e72 Initial commit
    

    Show both Local & Remote Branch w/ Last Commit Info

    로컬 브랜치의 마지막 커밋 정보 및 연결된 원격 브랜치 보기
    git branch -vv

    develop           322bd34 [origin/develop: ahead 1] Service
    feature/channel   d7631d3 [origin/feature/channel] WIP : Channel
    * feature/user    15dcbce [origin/feature/user: gone] WIP : Restart
    main              8356e72 [origin/main] Initial commit
    

    Return to TOC

  3. Merge

    둘 이상의 브랜치를 하나로 합치는 명령어

    Merge Branch

    머지 시키는 명령어는 merge 외에도 두 가지 방법이 더 존재한다.

    1. Straight Merge
      git merge <branchName>

      • 한 브랜치의 모든 변경 히스토리가 다른 브랜치에 머지 된다.
    2. Squashed Commit
      git merge --squash <branchName>

      • 한 브랜치의 최종 커밋 히스토리만이 머지 된다.
    3. Cherry-picking 🍒
      git cherry-pick <commitName>

      • 다른 브랜치의 특정 커밋만이 현재의 브랜치에 머지 된다.

    Merge Branch w/o Commit

    커밋 없이 브랜치 머지 시키기
    git merge --no-commit <branchName>

    Return to TOC

  4. Pull

    Pull origin branch to a local branch

    원격 브랜치를 새로 생성한 로컬 브랜치에 풀받기
    git checkout -b <localBranchName> origin/<remoteBranchName>
    <remoteBranchName> 이름을 가진 원격 브랜치를 <localBranchName> 을 가진 브랜치에 담는다.

  5. Name

    Move or Change Branch Name

    브랜치명을 변경하기 혹은 브랜치 옮기기
    git checkout -m <selectedBranch> <newBranch>

  6. Delete

    Delete Local Branch

    브랜치 삭제
    git branch -d <branchName>

    브랜치 강제 삭제
    git branch -D <branchName>

    • 대문자 D를 사용

    Delete All Local Branches Except Master and Develop

    Master와 Develop 브랜치를 제외한 모든 브랜치 삭제
    git branch | grep -v "master|develop" | xargs git branch -D

    Delete Remote Branch

    원격 저장소의 브랜치 삭제
    git push <remoteName> --delete <branchName>

    Return to TOC