λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
Git & GitHub

[Git] - git branch λͺ…λ Ήμ–΄ 정리

by 주발2 2021. 4. 11.
λ°˜μ‘ν˜•

 μ•ˆλ…•ν•˜μ„Έμš”~ 이전에 μš΄μ˜ν•˜λ˜ λΈ”λ‘œκ·Έ 및 GitHub, 곡뢀 λ‚΄μš©μ„ μ •λ¦¬ν•˜λŠ” Study-GitHub κ°€ μžˆμŠ΅λ‹ˆλ‹€!

 λ„€μ΄λ²„ λΈ”λ‘œκ·Έ

 GitHub

Study-GitHub

 πŸ”


 

βœ” Git branch λͺ…λ Ήμ–΄ 정리

λΈŒλžœμΉ˜λž€ ?

  • μ—¬λŸ¬ κ°œλ°œμžλ“€μ΄ λ™μ‹œμ— λ‹€μ–‘ν•œ μž‘μ—…μ„ ν•  수 있게 λ§Œλ“€μ–΄ μ£ΌλŠ” κΈ°λŠ₯
  • λ…λ¦½μ μœΌλ‘œ μ–΄λ– ν•œ μž‘μ—…μ„ μ§„ν–‰ν•˜κΈ° μœ„ν•œ κ°œλ…
  • ν•„μš”μ— μ˜ν•΄ λ§Œλ“€μ–΄μ§€λŠ” 각 λΈŒλžœμΉ˜λŠ” λ‹€λ₯Έ 브랜치의 영ν–₯을 받지 μ•ŠκΈ° λ•Œλ¬Έμ—, κ°œλ°œμžκ°€ μ—¬λŸ¬ μž‘μ—…μ„ λ™μ‹œμ— 진행이 κ°€λŠ₯
  • μ΄λ ‡κ²Œ λ§Œλ“€μ–΄μ§„ 브랜치λ₯Ό λ‹€λ₯Έ λΈŒλžœμΉ˜μ™€ 병합(Merge)ν•¨μœΌλ‘œμ¨, μž‘μ—… λ‚΄μš©μ„ λ‹€μ‹œ μƒˆλ‘œμš΄ 브랜치λ₯΄ λͺ¨μ„ 수 있음
  • 초기 λΈŒλžœμΉ˜λŠ” main(μ΄μ „μ—λŠ” master) λΌλŠ” μ΄λ¦„μ˜ 브랜치λ₯Ό 생성함
  • λ‹€λ₯Έ 브랜치λ₯Ό μƒμ„±ν•˜κ³  checkout(λ³€κ²½) ν•˜μ§€ μ•ŠλŠ” 이상, λͺ¨λ“  μž‘μ—…μ€ 'main' λΈŒλžœμΉ˜μ—μ„œ 이루어짐

backlog.com/git-tutorial/kr/stepup/stepup1_1.html

 

λˆ„κ΅¬λ‚˜ μ‰½κ²Œ 이해할 수 μžˆλŠ” Git μž…λ¬Έ~버전 관리λ₯Ό μ™„λ²½ν•˜κ²Œ μ΄μš©ν•΄λ³΄μž~ | Backlog

λˆ„κ΅¬λ‚˜ μ‰½κ²Œ μ•Œ 수 μžˆλŠ” Git에 μž…λ¬Έν•˜μ‹  것을 ν™˜μ˜ν•©λ‹ˆλ‹€. Git을 μ‚¬μš©ν•΄ 버전 관리λ₯Ό ν•  수 μžˆλ„λ‘ ν•¨κ»˜ κ³΅λΆ€ν•΄λ΄…μ‹œλ‹€!

backlog.com

 

 

 

πŸŽ— branch(브랜치) λͺ…λ Ήμ–΄ 정리

둜컬 branch 정보 확인

$ git branch

 

branch 생성 & λ³€κ²½

// testλΌλŠ” branchλ₯Ό 생성
$ git branch test


// testλΌλŠ” branchλ₯Ό 생성 ν›„ λ°”λ‘œ λ³€κ²½
$ git checkout -b test


// testλΌλŠ” branch둜 λ³€κ²½
$ git checkout test

 

branch 병합

$ git merge <commit>

 

 

branch μ‚­μ œ

// testλΌλŠ” branch μ‚­μ œ
$ git branch -d test


// 둜컬 branch λͺ¨λ‘ μ‚­μ œ
$ git branch | grep -v '^*' | xargs git branch -d

 

 

원격 μ €μž₯μ†Œμ— branch push

// testλΌλŠ” branchλ₯Ό 원격 μ €μž₯μ†Œμ— push
$ git push --set-upstream origin test


// λͺ¨λ“  branch push
$ git push --all origin

 

 

원격 μ €μž₯μ†Œ branch μ‚­μ œ

// 원격 μ €μž₯μ†Œμ˜ test branch μ‚­μ œ
git push origin --delete test

 

 

원격 μ €μž₯μ†Œ branch 리슀트 확인

// 원격 μ €μž₯μ†Œμ˜ branch 리슀트 확인
$ git branch -r


// 원격, 둜컬 μ €μž₯μ†Œμ˜ branch 리슀트 확인
$ git branch -a

 

 

원격 μ €μž₯μ†Œμ˜ branch κ°€μ Έμ˜€κΈ°

// 원격 μ €μž₯μ†Œμ˜ test branch κ°€μ Έμ˜€κΈ°
$ git checkout -t origin/test

 

 

원격 & 둜컬 브랜치 동기화

$ git remote update origin --prune

// fetch & pull ν•  λ•Œ 원격 μ €μž₯μ†Œμ— μ‚­μ œλœ λΈŒλžœμΉ˜λ“€μ΄ 둜컬 μ €μž₯μ†Œμ—λ„ μžλ™μœΌλ‘œ μ‚­μ œ
$ git config --global fetch.prune true

 

 

λ°˜μ‘ν˜•

λŒ“κΈ€