Skip to content

WeTube-project/git-tutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

5 Commits
ย 
ย 

Repository files navigation

git ์‹ค์Šตํ•˜๊ธฐ

ํ•œ๋ฒˆํ•˜๋Š” ์ž‘์—…

  1. ๋‹ค์Œ ๊ทธ๋ฆผ์˜ fork ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ์ €์žฅ์†Œ๋ฅผ forkํ•ฉ๋‹ˆ๋‹ค. git-tutorial0

  2. ์›๊ฒฉ ์ €์žฅ์†Œ๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

git clone <fork๋œ ๋‚ด ์ €์žฅ์†Œ ์ฃผ์†Œ>
  1. clone๋ช…๋ น์œผ๋กœ ์ƒ์„ฑ๋œ ํด๋”๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
cd <์ƒ์„ฑ๋œ ํด๋” ์ด๋ฆ„>
  1. upstream ์›๊ฒฉ ์ €์žฅ์†Œ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
git remote add upstream <๊ณต์šฉ ์›๊ฒฉ ์ €์žฅ์†Œ ์ฃผ์†Œ>

์˜ˆ๋ฅผ ๋“ค์–ด, WeTube-project์˜ git-training ์ฃผ์†Œ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

  1. ๋‹ค์Œ์„ ์ž…๋ ฅํ•˜์—ฌ origin๊ณผ upstream ์ •๋ณด๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
git remote -v
  • origin : ๊ณต์šฉ ์ €์žฅ์†Œ๋ฅผ ๊ฐœ์ธ๊ณ„์ •์— forkํ•œ ์ €์žฅ์†Œ
  • upstream : ๊ณต์šฉ ์ €์žฅ์†Œ

๋งค๋ฒˆํ•˜๋Š” ์ž‘์—…

  • ์ž‘์—… ์ƒํƒœ๋ฅผ ์ˆ˜์‹œ๋กœ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
git status
  1. ์ž‘์—… ๋ธŒ๋žœ์น˜๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
git switch -c <๋ธŒ๋žœ์น˜ ์ด๋ฆ„> origin/main

๋ธŒ๋žœ์น˜ ์ด๋ฆ„์€ ์ž‘์—…ํ•œ ๋‚ด์šฉ์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.

  1. upstream ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ์ตœ์‹  ์ƒํƒœ๋ฅผ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค.
git fetch upstream main
git rebase upstream/main

๋„์ค‘์— ํŒ€์›์ด upstream์„ ๋ณ€๊ฒฝํ•˜์˜€์„ ๊ฒฝ์šฐ ์ถฉ๋Œํ•˜๋ฏ€๋กœ
์ž‘์—…์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ์ตœ์‹ ์ƒํƒœ๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

  1. ์ž‘์—…์„ ํ•ฉ๋‹ˆ๋‹ค.
    ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ์›ํ•˜๋Š” ์ž‘์—…์„ ํ•ฉ๋‹ˆ๋‹ค.

  2. commit์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

git add .

๋ณ€๊ฒฝ๋œ ๊ฒƒ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

git commit

์ปค๋ฐ‹๋ฉ”์‹œ์ง€ ์ž‘์„ฑํ›„ esc๋ฅผ ๋ˆ„๋ฅด๊ณ  :wq๋ฅผ ํ•˜์—ฌ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

  1. ์›๊ฒฉ ์ €์žฅ์†Œ์— ์ž‘์—…ํ•œ ๋ธŒ๋žœ์น˜๋ฅผ ์˜ฌ๋ฆฝ๋‹ˆ๋‹ค.
git push origin <branch ์ด๋ฆ„>
  1. pull request ํ•ฉ๋‹ˆ๋‹ค.
    git-tutorial1
    fork๋œ ๋‚ด ์ €์žฅ์†Œ์—์„œ Compare & request๋ฅผ ๋ˆ„๋ฆ…๋‹ˆ๋‹ค.

    git-tutorial2
    ๋‚ด์šฉ์„ ์ž‘์„ฑํ•˜๊ณ  Create pull request๋ฅผ ๋ˆ„๋ฆ…๋‹ˆ๋‹ค.

  2. mergeํ•˜๊ธฐ์ „ ๋‹ค์Œ ๋‘ ๊ฐ€์ง€๋ฅผ ์ฒดํฌํ•ฉ๋‹ˆ๋‹ค.

  • ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋ฅผ ํ•˜๋‚˜๋กœ ํ†ตํ•ฉํ•ฉ๋‹ˆ๋‹ค.
    3๊ฐœ์˜ ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋ฅผ ํ†ตํ•ฉํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์˜ˆ์‹œ๋กœ ๋“ญ๋‹ˆ๋‹ค.
git rebase -i HEAD~3
  • upstream ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ์ตœ์‹ ์ƒํƒœ๋ฅผ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค.
git fetch upstream main
git rebase upstream/main

๋„์ค‘์— ํŒ€์›์ด upstream์„ ๋ณ€๊ฒฝํ•˜์˜€์„ ๊ฒฝ์šฐ ์ถฉ๋Œํ•˜๋ฏ€๋กœ
mergeํ•˜๊ธฐ ์ „์— ํ•œ๋ฒˆ ๋” ์ตœ์‹ ์ƒํƒœ๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

  1. mergeํ•ฉ๋‹ˆ๋‹ค.
    git-tutorial3
    ๊ณต์šฉ ์›๊ฒฉ ์ €์žฅ์†Œ(WeTube-project์˜ git-tutorial)์˜ Pull requestsํƒญ์—์„œ
    Merge pull request๋ฅผ ๋ˆ„๋ฆ…๋‹ˆ๋‹ค.

  2. fork๋œ ๋‚ด ์ €์žฅ์†Œ์˜ ํ˜„์žฌ branch๋ฅผ main์— mergeํ•ฉ๋‹ˆ๋‹ค.

git switch main

main์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

git merge <main์— mergeํ•˜๊ณ ์ž ํ•˜๋Š” branch ์ด๋ฆ„>

mergeํ•ฉ๋‹ˆ๋‹ค.

์ฃผ์˜์‚ฌํ•ญ

  1. fork๋œ ๋‚ด ์ €์žฅ์†Œ์—์„œ ์ž‘์—…ํ•ฉ๋‹ˆ๋‹ค.

  2. ๊ณต์šฉ ์›๊ฒฉ ์ €์žฅ์†Œ์— commit, pushํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

  3. ๋‹ค๋ฅธ ํŒ€์›์˜ ์ฝ”๋“œ๋ฅผ mergeํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

  4. ์ž‘์—…ํ•˜๊ธฐ์ „๊ณผ mergeํ•˜๊ธฐ์ „์— upstream ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ์ตœ์‹  ์ƒํƒœ๋ฅผ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค.

    git fetch upstream main
    git rebase upstream/main
    

์‹ค์Šตํ•ด๋ณด๊ธฐ

์‹ค์Šต์ด ํ•„์š”ํ•˜๋‹ค๋ฉด ๋‹ค์Œ ์ค„์— ์ด๋ฆ„ ํ˜น์€ ๊นƒํ—ˆ๋ธŒ username์„ ์ž‘์„ฑํ•˜์—ฌ
Pull Requset๋ฅผ ๋ณด๋‚ด Mergeํ•ด ๋ด…๋‹ˆ๋‹ค.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published