yebalja.com ํ๋ก์ ํธ๋ฅผ ์์ํ๋ฉด์, 5๋ช ์ ํ์๋ค๊ณผ ํ์ ์ ๊ฒฝํํด๋ณผ ์ ์๋ ์ข์ ๊ธฐํ๊ฐ ์๊ฒผ๋ค. ์ ๋๋ก ๋ ํ์ ํ๋ก์ ํธ๋ฅผ ๊ฒฝํํด๋ณด์๋๋ฐ์ ์๊ฒฌ์ด ๋ชจ์๊ณ , ๊ทธ๋ฌ๊ธฐ ์ํด ๊นํ๋ธ๋ฅผ ์ด์ฉํ ํ์ ํ๋ก์ฐ๋ฅผ ๊ณต๋ถํ๊ณ ์ ๋ฆฌํ ํ์์ฑ์ ๋๊ผ๋ค.
์ฐ๋ฆฌ์ ์์ ๋ชฉํ๋ ์ด๋ ๋ค.
Issue
, Pull requests
, Kanban borad
๋ชจ๋ ์ด์ฉํด ํ๋ก์ ํธ ๊ด๋ฆฌํ๊ธฐ.Wiki
์ ๊ฐ๋ฐ์ผ์ง ๊ธฐ๋กํ๊ธฐ.๋น์ฐํ ๋ชจ๋ ๊นํ๋ธ๋ฅผ ์ด์ฉํ๋ค. Github ํ๋๋ง์ผ๋ก๋ ์ด์ ๊ด๋ฆฌ, ์ผ์ ๊ด๋ฆฌ, ์ฝ๋ ๋ฆฌ๋ทฐ, ๋ฆฌํฌํธ ์์ฑ ๋ฑ ๋ถ์กฑํจ ์์ด ํ๋ก์ ํธ๋ฅผ ๊ด๋ฆฌํ ์ ์๋ค.
์ ์ฒด์ ์ธ ํ์ ํ๋ก์ฐ๋ ์๋์ 5๋จ๊ณ๋ฅผ ๋ฐ๋ฅธ๋ค.
`์ด์ ๋ฐํ` โก `์ด์ ์์
` โก `ํ๋ฆฌํ์คํธ` โก `์ฝ๋๋ฆฌ๋ทฐ` โก `์ด์ ๋ฐ์(Merge)`
์ด ํ๋ก์ธ์ค๋ ๋ชจ๋ ๊นํ๋ธ์ ์นธ๋ฐ ๋ณด๋์์ ๊ด๋ฆฌํ๋ค.
Kanban Borad ๋?
์นธ๋ฐ(Kanban)์ ์ผ๋ณธ๋ง๋ก ์นด๋ , ๋์ ๋ณด์ด๋ ๊ธฐ๋ก ์ด๋ผ๋ ๋ป์ด๋ค. ์นธ๋ฐ ๋ณด๋๋ ๊ฐ์ธ์ ์ธ ์์ค์์๋ ์กฐ์ง์ ์ธ ์์ค์์ ์์ ์ ๊ด๋ฆฌํ๊ธฐ ์ํด ์นด๋ ํ์์ผ๋ก ์ค์ผ์ค๋งํ๋ ๋๊ตฌํ๊ณ ์๊ฐํ๋ฉด ๋๋ค.
๊ฐ ๋จ๊ณ์์ ์ค์ ๋ก ์ด๋ค ์์ ์ ํด์ผํ๋ ์ง๋ 3. ํ๋ฆฌํ์คํธ(pull request) ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด๋ณด์๋ค.
๋ด๊ฐ ์์ฑํ ์ฝ๋๊ฐ ๋ฆฌ๋ทฐ์์ด master branch๋ก push ๋๋ฉด ์๋๊ธฐ ๋๋ฌธ์, branch๋ฅผ ์ด๋ค ๊ธฐ์ค์ผ๋ก ์ผ๋ง๋ ๋ง๋ค์ง ์ ํ๋ ๊ฒ์ด ์ค์ํ๋ค.
์ฐ๋ฆฌ ํ์ branch๋ฅผ ๊ธฐ๋ฅ๋ณ๋ก ํ๊ธฐ๋ก ๊ฒฐ์ ํ๋ค. ๋ชจ๋ ์ด์๋ง๋ค branch๋ฅผ ์์ฑํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ด์์ ์ด์ง๋ง, ๋ธ๋์น ๊ด๋ฆฌ์ ์ต์ํด์ง๊ธฐ ์ ๊น์ง๋ ์ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ ์ด์์๋ง ๋ธ๋์น๋ฅผ ์์ฑํ๊ธฐ๋ก ํ๋ค.
Issue์ ๊ธฐ์ค?
ํ๋ก์ ํธ๋ฅผ ์งํํจ์ ์์ด ์๊ฒฌ์ด ํ์ํ ๋ชจ๋ ๊ฒ์ด ์ด์๋ผ๊ณ ๋ณผ ์ ์๋ค. ์๋ก ์ถ๊ฐ๋ ๊ธฐ๋ฅ, ๊ฐ์ ์ , ๋ฒ๊ทธ ๋ฑ๋ฑ. ๋ชจ๋ ํ๋์ ๋ํด์ ์ด์๋ฅผ ๋ฑ๋กํ๊ณ ๊ทธ ์ด์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ ์ ์งํํ๊ฒ ๋๋ค.
์ด์๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ์ํด ์ฑ๊ฒฉ์ ๋ฐ๋ผ ํ๊ทธ
๋ฅผ ๋ค๋ ๊ฒ์ด ์ข๋ค.
๋ด๊ฐ ๋ด๋นํ ๊ธฐ๋ฅ์ ๊ฐ๋ฐํ๊ธฐ ์ํด ๋ธ๋์น๋ฅผ ๋ง๋ ๋ค.
git checkout -b [๋ธ๋์น๋ช
]
-b [๋ธ๋์น๋ช
]
: ๋ธ๋์น๋ฅผ ์์ฑํ๋ค.checkout [๋ธ๋์น๋ช
]
: ํด๋น ๋ธ๋์น๋ก ์ด๋ํ๋ค.git branch
: ์กด์ฌํ๋ ๋ธ๋์น ํ์ธ.ํด๋น ๋ธ๋์น ๋ด์์ ์์ ์์
์ ์๋ฃํ์ผ๋ฉด, origin
์๊ฒฉ๋ธ๋์น์ ์์ ์ฌํญ์ ๋ฐ์ํ๋ค.
git push -u origin [๋ธ๋์น๋ช
]
-u
์ต์
-u
์ต์
์ ๋ช
์ํ๊ฒ ๋๋ฉด ํด๋น ๋ธ๋์น์์ origin๋ธ๋์น๋ก์ ์
์คํธ๋ฆผ ๊ธธ์ด ํธ์ฌ์, ๊ทธ ๋ค์๋ถํฐ๋ git push
๋ง ์
๋ ฅํด๋ ์์์ origin๋ธ๋์น๋ก ์์ ์ฌํญ์ด ๋ฐ์๋๋ค.
์ฐธ๊ณ ๋ก, ์๋ ์ธ ๊ฐ์ ๋ช ๋ น์ด๊ฐ ๋ชจ๋ ๊ฐ์ ๊ธฐ๋ฅ์ ํ๋ค.
1. git push -u origin [๋ธ๋์น๋ช
]
2. git push --set-upstream origin [๋ธ๋์น๋ช
]
3. git push --set-upsteam-to origin [๋ธ๋์น๋ช
]
๋ฌด์จ ์ฐจ์ด์ ์ด ์๋ ํ๋๋ฐ, Set upstream
์ ์๋ฏธ๊ฐ ๋ช
ํํ์ง ์์์ ๋ํ
์ผํ๊ฒ ์๋ ค์ฃผ๋ ค๊ณ set upstream to
๊ฐ ์๊ฒผ๋ค๊ณ ํ๋ค. 3๋ฒ์ด ๊ถ์ฅ์ฌํญ ์ด์ง๋ง, ๊ฐ๋จํ๊ฒ 1๋ฒ์ ์ฌ์ฉํ์...
origin๋ธ๋์น์ Push ์๋ฃ ํ github ์ ์ฅ์ Pull requests ํญ์ ๋ค์ด๊ฐ๋ณด๋ฉด create pull request
๋ผ๋ ์ด๋ก ๋ฒํผ์ด ํ์ฑํ ๋์ด์๋ค.
๋ฉ์ธ์ง๋ฅผ ์์ฑํ๊ณ PR์ ์์ฑํ๋ค.
PR ์ ๋ชฉ์ ํด๊ฒฐ๋ฐฉ์ ์์ฃผ๋ก ์์ฑํ๋ค.
๋ฉ์ธ์ง๋ ์์ด-์ํ์ -ํ๊ธ ์์ผ๋ก ์์ฑํ๋ค.
์ฝ๋๋ฆฌ๋ทฐ๋ฅผ ๋ช ๋ช ์๊ฒ ๋ฐ์์ง ์ค์ ํ ์ ์๋๋ฐ, ์ฐ๋ฆฌ๋ ํ์ ํ๋ก์ ํธ ์ด๋ฐ์ด๊ธฐ ๋๋ฌธ์ ํ์ ๋ชจ๋์๊ฒ ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ์์ผ PR์ ์๋ฃํ ์ ์๋๋ก ํ๋ค.
๋ฆฌ๋ทฐ์ด๋ PR์ ๋ํด 3๊ฐ์ง ์์ฌํํ์ ํ ์ ์๋ค.
Comment
: ๊ทธ๋ฅ ์ฝ๋ฉํธ๋ง ๋ฌ์์ค. Request changes
: ์ฝ๋์์ ๋ฒ๊ทธ๋ฅผ ๋ฐ๊ฒฌํ๋ฉด ๋ค์ ์์ ํด๋ฌ๋ผ๊ณ ์์ฒญํ ์ ์์.Approve
: ์ด ์ฝ๋๊ฐ merge ๋๋ ๊ฒ์ ๋์ํจ.Approve
๋ฆฌ๋ทฐ๋ฅผ ๋ฐ์ ์ฝ๋์ ๋ํด PR ์์ฑ์๊ฐ ์ง์ merge ํ๋ค.
๐
๋ ! ํ์ค์ 4.์ฝ๋๋ฆฌ๋ทฐ
<-> 2.์ด์ ์์
์ ๋ฌดํ๋ฐ๋ณต์ด๊ฒ ์ง๋ง, ๊ทธ๊ฒ ๋ง์ ๋ ๋ด๊ฐ ๋ฐฐ์ฐ๊ณ ์ฑ์ฅํ ๊ธฐ๋ก์ด ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ๊ธฐ์ ๋ง์์ผ๋ก ํ๋ก์ ํธ๋ฅผ ์์ํด๋ณธ๋ค.
๋ฆฌ๋ทฐ๋ฅผ ์์ฒญ๋ฐ์ ํ๋ฆฌํ์คํธ์ ๋ค์ด๊ฐ์ Add your review
์ ํด๋ฆญํ๋ค.
โ [2021. 8. 14 ๋ง๋ถ์]
Github UI๊ฐ ๋ฐ๋์ด์ PR ๋ ๋ฆฌ๋ ๋ฒํผ์ด ์ ์ฌ์ง์ฒ๋ผ ๋จ์ง ์๋๋ค.
์ด ์ฌ์ง์ฒ๋ผContribute
๋ฒํผ์ ํด๋ฆญํด์ผ Open Pull request ๋ฒํผ์ ์ฐพ์ ์ ์๋ค.
์ฝ๋ฉํธ๋ฅผ ์ ์ ๋ค approve
ํ๋ค.
Comment
๋ง ๋ฌ๊ฑฐ๋, Request change
๋ฅผ ์์ฒญํ ์ ์๋ค. ์ด ๊ฒฝ์ฐ์๋ Merge ์น์ธ์ด ๋์ง ์๋๋ค.
๋์์ด ๋์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.