์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- ์๋งจํฑ์์
- ๋ฒ์ง ๋ชจํ
- Study
- Cmarket
- ์คํ ์ด์ธ ์ฝ๋
- ์คํ ์ด์ธ ์ฝ๋42๊ธฐ
- prototype
- ํผํฐ ๋ชจ๋น
- ํ๋ก๊ทธ๋๋จธ์ค
- wai-aria
- React
- jsx
- ํผํฐ ๋ชจ๋น์ ๋ฒ์ง ๋ชจํ
- Effect Hook
- html
- fetch api
- css
- css animation
- BFS์ DFS
- State
- WEB
- ์ปดํจํฐ ๊ณตํ
- ์ ์ด์ฝฅ ๋์จ
- props drilling
- ํ ์คํธ ์์
- Lifting state
- ๋ฒ๋ค๋ง
- ๊ณ ์ฐจํจ์
- JavaScript
- git
- Today
- Total
roqkf
Git branch ๋ณธ๋ฌธ

๐ Git branch
๋ธ๋์นญ(branching)์ ๊ธฐ์กด ๊ฐ๋ฐ์ค์ธ ๋ฉ์ธ ๊ฐ๋ฐ ์ฝ๋๋ฅผ ๊ทธ๋๋ก ๋ณต์ฌํ์ฌ ์๋ก์ด ๊ธฐ๋ฅ ๊ฐ๋ฐ์ ๋ฉ์ธ ๊ฐ๋ฐ ์ฝ๋๋ฅผ ๊ฑด๋๋ฆฌ์ง ์๊ณ ํ ์ ์๋ ๋ฒ์ ๊ด๋ฆฌ ๊ธฐ๋ฒ์ด๋ค. ์ฒ์์ Git ๋ฆฌํฌ์งํ ๋ฆฌ๋ฅผ ์์ฑํ๋ฉด ๋์ค๋ main ๋ธ๋์น์์๋ง ์์ ์ ํ๋ค๊ฐ ์๋ก์ด ๊ธฐ๋ฅ ๊ฐ๋ฐ์ ์ํด feature ๋ธ๋์น๋ฅผ ์๋ก ์์ฑํ๋ ๊ฒฝ์ฐ, ๊ธฐ์กด main ๋ธ๋์น์์์ ์์ ์ ์ ์งํ๊ณ ์๋ก์ด feature ๋ธ๋์น์์ ์์ ๋กญ๊ฒ ์ฝ๋๋ฅผ ์ถ๊ฐ ๋ฐ ์ญ์ ํ ์ ์๋ค.

๐ ๋ธ๋์น ์์ฑํ๊ธฐ / ๋ณ๊ฒฝํ๊ธฐ (git switch)
์ด ๋, ์๋ก์ด ๋ธ๋์น๋ก Git์ด ๋ฐ๋ผ๋ณด๋ ๊ณณ, HEAD๋ฅผ ๋ณ๊ฒฝํ๋ ์์ ์ switch๋ผ๊ณ ๋ถ๋ฅธ๋ค. ๋ธ๋์น๋ฅผ ์์ฑํ ๋๋ ์์ฑ(create)์ ์๋ฏธ๋ก -c ๋ฅผ ๋ถ์ฌ์ค์ผ ํ๊ณ , ๊ธฐ์กด์ ์๋ ๋ธ๋์น๋ก ์ฎ๊ธธ ๋๋ ๋ถ์ด์ง ์์๋ ๋๋ค.
# feature๋ผ๋ ๋ธ๋์น๋ฅผ ์๋ก ์์ฑํ๋ ๊ฒฝ์ฐ, -c๋ฅผ ๋ถ์ธ๋ค.
git switch -c feature
# checkout์ด๋ผ๋ ๋ช
๋ น์ด๋ ์ฌ์ฉํ ์ ์๋ค.
git checkout -b feature
# ๊ธฐ์กด์ ์๋ main ๋ธ๋์น๋ก HEAD๋ฅผ ๋ณ๊ฒฝํ๋ ค๋ฉด, -c๋ฅผ ๋ถ์ด์ง ์๋๋ค.
git switch main
git checkout main

๐ ๋ธ๋์น ํฉ์น๊ธฐ (git merge)
๊ธฐ๋ฅ ๊ฐ๋ฐ์ด ๋๋๋ฉด ๋ธ๋์น๋ฅผ main ๋ธ๋์น์ ํฉ์น ์ ์๋ค.
# ๊ธฐ๋ฅ ๊ฐ๋ฐ์ด ์งํ๋์์ต๋๋ค.
git commit -m "๊ธฐ๋ฅ1์ ์ธ๋ถ ๊ธฐ๋ฅ1"
git commit -m "๊ธฐ๋ฅ1์ ์ธ๋ถ ๊ธฐ๋ฅ2"
git commit -m "๊ธฐ๋ฅ1 ๊ฐ๋ฐ ์๋ฃ"
# ๋จธ์ง๋ฅผ ์ํด main ๋ธ๋์น๋ก ์ ํ
git switch main
# main ๋ธ๋์น๋ก feat/todo ๋ธ๋์น๋ฅผ ๋ณํจ
git merge feat/todo

์ค์ ํ๋ก์ ํธ ๊ฐ๋ฐ ์์๋ ๋ธ๋์น๋ฅผ ๋ก์ปฌ์์ ํฉ์น๊ธฐ ๋ณด๋ค๋ Github์ pull request ๊ธฐ๋ฅ์ ์ด์ฉํ์ฌ ๋ณ๊ฒฝ ๋ด์ญ์ ์ถฉ๋ถํ ํ์ธํ๊ณ ๋ ๋ค์์ ๋จธ์งํ๋ ๊ฒฝ์ฐ๊ฐ ๋ ๋ง๊ธฐ ๋๋ฌธ์, ๋ก์ปฌ์์ ๋จธ์งํ์ง ์๊ณ feature ๋ธ๋์น๋ฅผ pushํ์ฌ pull request๋ฅผ ์์ฒญํ๋ ๊ฒ์ ๊ถ์ฅํ๋ค.
๊ธฐ๋ฅ ๊ฐ๋ฐ์ด ์งํ๋์์ต๋๋ค.
git commit -m "๊ธฐ๋ฅ1์ ์ธ๋ถ ๊ธฐ๋ฅ1"
git commit -m "๊ธฐ๋ฅ1์ ์ธ๋ถ ๊ธฐ๋ฅ2"
git commit -m "๊ธฐ๋ฅ1 ๊ฐ๋ฐ ์๋ฃ"
# Github ๋ฆฌํฌ์งํ ๋ฆฌ๋ก ํธ์
git push origin feat/todo
# Github์์ Pull Request
์๋ ์คํฌ๋ฆฐ์ท์์ ์ ๋ช ํ ์คํ์์ค toast UI์ pull request์ ์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ ์ฐธ๊ณ ํ ์ ์๋ค.

๐ ๋ธ๋์น ์ญ์ ํ๊ธฐ (git branch -d)
๋จธ์ง๋ feature ๋ธ๋์น๋ ์ด๋ฏธ dev ๋ธ๋์น์ ๊ธฐ๋ก์ด ์๋ฒฝํ๊ฒ ๋จ์์๊ธฐ ๋๋ฌธ์ ๊ตณ์ด ๋จ๊ฒจ๋ ์ด์ ๊ฐ ์์ด ์ญ์ ๋ฅผ ๊ถ์ฅํ๋ค. ์๊ฒฉ ๋ฆฌํฌ์งํ ๋ฆฌ์์ pull request๊ฐ ์ฑ๊ณต์ ์ผ๋ก ๋ง๋ฌด๋ฆฌ๋๋ฉด, ์๋ ์คํฌ๋ฆฐ์ท์ฒ๋ผ ๋ธ๋์น๋ฅผ ์ญ์ ํ๋ ๋ฒํผ์ ๋๋ฌ ์ฝ๊ฒ ์ญ์ ํ ์ ์๋ค.

๋ก์ปฌ ๋ฆฌํฌ์งํ ๋ฆฌ์์ ๋ธ๋์น ์ญ์ ๋ git branch -d <๋ธ๋์น๋ช > ์ผ๋ก ํ ์ ์๋ค.
git branch -d feat/todo
Git์ ์ํํ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ์ํด์, ๋ธ๋์น๊ฐ ํฉ์ณ์ง์ง ์์ผ๋ฉด ์ญ์ ํ์ง ๋ชปํ๋๋ก ์ค์ ์ด ๋์ด์๋ค. ํ์ง๋ง ์ข ์ข ๋ค ๋ง๋ค์ง ๋ชปํ ๊ธฐ๋ฅ์ ๊ธฐ๋ก์ ์ญ์ ํ๊ณ ์ถ์ ์ ์๋ค. ์ด๋ -D ์ต์ ์ ์ฐ๋ฉด ์ญ์ ํ ์ ์๋ค.
git branch -D feat/todo
๋ค๋ง, ๋จธ์ง๋์ง ์์ ๋ธ๋์น ์ญ์ ๋ ๋ฒ์ ๊ธฐ๋ก ์์คํ ์ ์ฌ์ฉ ๋ชฉ์ ๊ณผ๋ ์ ๋ง์ง๋ ์๋๋ค. ์ ๋ชป ๋ง๋ค์๋ ๊ธฐ๋ฅ์ด์ง๋ง, ํด๋น ๊ธฐ๋ฅ์ผ๋ก ๋์๊ฐ๊ณ ์ถ์ ์๋ ์๊ธฐ ๋๋ฌธ์ ๋์๊ฐ ์ฌ์ง๋ฅผ ๋ง๋ค์ด๋๋๊ฒ ์ข์ ์๋ ์๋ค. ์ด๋ฐ ๊ฒฝ์ฐ๋ ํ ๋ฐ ํ์ฌ ์ ์ฑ ์ ๋ฐ๋ฅด๋ ๊ฒ์ ๊ถ์ฅํ๋ค.
'๐ป Development > Git' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Github Milestone (0) | 2023.04.18 |
---|---|
Github Issues (0) | 2023.04.18 |
Github Project ์นธ๋ฐ (0) | 2023.04.18 |
์๋ก์ด Github repository ๋ง๋ค๊ธฐ (0) | 2023.04.18 |
Github ๋ฆฌํฌ์งํ ๋ฆฌ (1) | 2023.04.18 |