์š”์•ฝ


1. ์ดˆ๊ธฐ ์„ค์ •

๋กœ์ปฌ ํ”„๋กœ์ ํŠธ์— ์›๊ฒฉ ์ €์žฅ์†Œ ์—ฐ๊ฒฐ

  • origin : ์›๊ฒฉ ์ €์žฅ์†Œ(remote repository)์˜ ๋ณ„์นญ
    • Git์—์„œ ๊ธฐ๋ณธ ์ด๋ฆ„์œผ๋กœ ์‚ฌ์šฉ
    • ๊ด€๋ก€
git init # ์ดˆ๊ธฐํ™”
git remote add origin <URL>
 
# ํ˜„์žฌ ์›๊ฒฉ ์ €์žฅ์†Œ ์ด๋ฆ„ ํ™•์ธ
git remote -v

1.1. fetch vs push

  • fetch
    • ์›๊ฒฉ โ†’ ๋กœ์ปฌ
    • ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ๊ฐ€์ ธ์˜ค์ง€๋งŒ, ๋ณ‘ํ•ฉํ•˜์ง€๋Š” ์•Š์Œ
    • ๋ณ€๊ฒฝ ์‚ฌํ•ญ ํ™•์ธ ํ›„ ๋ณ‘ํ•ฉ
    • ๋กœ์ปฌ์—๋งŒ ์˜ํ–ฅ์„ ๋ฏธ์นจ
git fetch origin # ์›๊ฒฉ ๋ณ€๊ฒฝ ๋‚ด์šฉ ๊ฐ€์ ธ์˜ค๊ธฐ
 
# 2. ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ ๋ชฉ๋ก ํ™•์ธ
## ๋‚ด ๋ธŒ๋žœ์น˜(main)์™€ ์›๊ฒฉ ๋ธŒ๋žœ์น˜(origin/main)์˜ ๋ณ€๊ฒฝ ๋ชฉ๋ก ํ™•์ธ
git diff --name-only main origin/main
 
# 3. ํŠน์ • ํŒŒ์ผ๋งŒ ๋ณ‘ํ•ฉ (์„ ํƒ์ )
## ๋ฐฉ์•ˆ1
git checkout origin/main -- ๊ฒฝ๋กœ/ํŒŒ์ผ๋ช…
## ์˜ˆ) origin/main ์—์„œ README.md๋งŒ ๋‚ด ๋ธŒ๋žœ์น˜๋กœ ๊ฐ€์ ธ์˜ด
git checkout origin/main -- README.md
## ๋ฐฉ์•ˆ2
git restore --source=origin/main ๊ฒฝ๋กœ/ํŒŒ์ผ๋ช…
## ์˜ˆ. 
git restore --source=origin/main docs/guide.md
 
# 4. ๋ณ‘ํ•ฉ ์™„๋ฃŒ ํ›„ ์ปค๋ฐ‹
 
  • push

2. ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ

2.1. ์‹ ๊ทœ ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ

git checkout -b <new_branch_name>
# ์˜ˆ
git checkout -b feature/generate_unit

์ฐธ๊ณ ์‚ฌ์ดํŠธ