git branch ๋ธ๋์น์ด๋ฆ : ๋ธ๋์น ์์ฑgit branch : ๋ธ๋์น ํ์ธ ๋ช
๋ น์ด (์๋ ํฐ๋ฏธ๋๋ก ๋น ์ ธ๋์ค๋ ค๋ฉด 'q' ์
๋ ฅ)๋ธ๋์น ์ด๋ ๋ช ๋ น์ด
git switch ๋ธ๋์น์ด๋ฆgit checkout ๋ธ๋์น์ด๋ฆ : '์ฒดํฌ์์'์ด๋ผ๋ ๋ช
๋ น์ด๊ฐ ๋ถ๋ช
ํํ์ฌ ํผ๋๐ฏ ๋ธ๋์น ํ ๋ฒ์ ์์ฑ & ์ด๋
git switch -c ๋ธ๋์น์ด๋ฆgit checkout -b ๋ธ๋์น์ด๋ฆ๐พ ์๋ก์ด ๋ธ๋์น์์ ์์ ํ ์ฝ๋ ์ ์ฅ
login โ main ์ผ๋ก ํฉ์น๊ธฐ
main ์ ํฉ์น๋ ์ด์ : main ๋ธ๋์น = ์ต์ข
๋ธ๋์น
๊ฐ์ ๋ธ๋์น์์ ๊ฐ๋ฐํ ๊ธฐ๋ฅ์ ์ต์ข
์ ์ผ๋ก main ๋ธ๋์น์ ํฉ์น๋ค. (ํ์
)
์ฌ์ค git merge ๋ ํ์ ์์ ์ ์ฌ์ฉํ์ง ์๋๋ค. โ ํฐ๋ฏธ๋ ๋ง๊ณ github(์จ๋ผ์ธ ์ ์ฅ์)์์ ํฉ์น๋ค.
๐ ๋ค์ login ๋ธ๋์น์์ ์์ , ์ ์ฅํ ์ํ์์ main์ ํฉ์น๊ธฐ ์ ์ํ
git push origin ๋ธ๋์น๋ช
base: main โ compare:login : Files changed ๋ณ๊ฒฝ์ฌํญ ํ์ธโจ github์ ๊ถํ ์ค์ ์ผ๋ก Contributors์๊ฒ pull request ์ merge ๊ถํ์ ์ค ์ ์๋ค.
git pull origin main : Github ์ฝ๋ ๋ฐ์1. ๋ธ๋์น ์์ฑ ๋ฐ ์ด๋
2. ๊ธฐ๋ฅ ๊ฐ๋ฐ ๋ฐ ์ฝ๋ ์ ์ฅ
3. ์ฝ๋ ์
๋ก๋ ๋ฐ Pull Request ์์ฑ
4. github์์ merge
5. ๋ด ๋ก์ปฌ์๋ ๋ฐ์ ex) git pull origin main
Main ๋ธ๋์น === ๋ฐฐํฌ์ฉ
Main์ ๋ณดํต ์ค์ ๊ณ ๊ฐ์ด ์ด์ฉํ๋ ์๋น์ค

๊ฐ์ ๋ค๋ฅธ ๋ธ๋์น์์ ๊ฐ๋ฐํ๋๋ฐ ๊ฐ์ ๋ณ์๋ช
(String name)์ ์ฌ์ฉ
โ ํผ์ ๊ฐ๋ฐํ ๋๋ ์๋ฌ๊ฐ ์์์ง๋ง ํฉ์น๊ณ ๋๋ ์ปดํ์ผ ์ค๋ฅ ๋ฐ์

1. ํ์ฅ: ์ด๊ธฐ์ฝ๋ ์์ฑ ๋ฐ github ์ ๋ก๋
a. ํด๋ ์์ฑ b. ์ด๊ธฐ ์ฝ๋ ์์ฑ c. git init, add, commit d. github ๋ ํฌ์งํ ๋ฆฌ ์์ฑ e. github ์ ๋ก๋ (git push)2. ํ์ฅ: dev(ํน์ develop) ๋ธ๋์น ์์ฑ
a. git swtich -c dev (๋ก์ปฌ์์ dev ๋ธ๋์น ์์ฑ) b. git push origin dev (github์๋ ๋ฐ์)3. Github ์์ dev ๋ธ๋์น๋ฅผ default๋ก ์ค์
- Settings > General > Default branch
โdev[Update]: main์ผ๋ก ๋จธ์งํ๋ ์ค์๋ฅผ ์ค์ผ ์ ์๋ค4. ํ์๋ค์ Collaborator๋ก ๋ฑ๋ก
5. ํ์ : git clone ํ๊ธฐ
- ์์ ํด๋ ์์น์์ ํฐ๋ฏธ๋ ์ด๊ธฐ
git clone ์ฃผ์ .
1. ๊ธฐ๋ฅ ๋ธ๋์น ์์ฑ ๋ฐ ๊ธฐ๋ฅ ๊ฐ๋ฐ
git switch -c feature/signup2. Pull Request ์์ฑ
์ฝ๋ ์ ์ฅ ๋ฐ ์ ๋ก๋
git add.git commit -m ""git push origin ๋ธ๋์น๋ช3. ์ฝ๋ ์์ฑ์: ๋ฆฌ๋ทฐ ์์ฒญํ๊ธฐ
- [Reviewers] : Collaborator ์ ํํ์ฌ ์์ฒญ โ ๐ ํ์์๊ฒ ๋ณ๋๋ก ์์ฒญ ์๋ ค์ฃผ๊ธฐ
- [Start your review]
Comment: ๋ฆฌ๋ทฐ ์์ฑ โ ์์ญ๋ง๋ค ์ง์ ํ์ฌ ๋ฆฌ๋ทฐ ์์ฑ ๊ฐ๋ฅApprove: ์น์ธRequest changes: ๋ณ๊ฒฝ ์์ฒญ- [Finish your review]
4. ์ฝ๋ ๋ฆฌ๋ทฐ์ด: ๋ฆฌ๋ทฐํ๊ธฐ
PR ๊ถํ :
Confirm merge5. ํฉ์น๊ธฐ ์ ๋ด ๋ก์ปฌ ๋ธ๋์น์์ ์ถฉ๋ ํ์ธ
- ๊ธฐ๋ฅ ๋ธ๋์น์์
git pull origin devํ์ฌ ํ ์คํธ ์งํ
์ถฉ๋์ด ๋๋ฉด github์์ ํด๊ฒฐํ์ง ๋ง๊ณ ์ถฉ๋๋ ๋ธ๋์น๋ฅผ ํ๋ฒ pull ๋ฐ์์์ ์์ ํ ๋ค์ push ํ๊ธฐ
1. ๋ด ๋ก์ปฌ์ dev ์๋ ๋ณ๊ฒฝ ์ฌํญ ๋ฐ์
a. dev ๋ธ๋์น๋ก ์ด๋ (git checkout dev ํน์ git switch dev) b. git pull origin dev2. ๋ค์ ๊ธฐ๋ฅ ๊ฐ๋ฐ
a. ๊ธฐ๋ฅ ๋ธ๋์น ์์ฑ ๋ฐ ์ฝ๋ ์์ฑ b. git add, commit, push c. Pull request ์์ฑ ๋ฐ ์ฝ๋ ๋ฆฌ๋ทฐ d. ๋ด ๋ก์ปฌ์์ ์ถฉ๋ ํด๊ฒฐ ๋ฐ ํ ์คํธ e. ์ฝ๋ ์ ๋ก๋ ๋ฐ merge
1์ฃผ์ฐจ๊ฐ ๋๋๊ณ 2์ฃผ์ฐจ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ์ด ์ฃผ์ฐจ๊ฐ ์์๋์๋ค. ๊ฐ์ธ ํ์ต ์์ฃผ๋ก ์งํ๋ ์์ ์ด์ง๋ง ์ง์ค ๋์ง ์๊ณ ์ด์ฌํ ๊ณต๋ถํด์ผ๊ฒ ๋ค. ํ๋ฃจ์ ๋ชจ๋ ๊ฐ์๋ฅผ ๋ชจ๋ ๋ค์ผ๋ ค๋ ์๋ฐ ๊ฐ์ ์ด๋ฐ ๋ถ๋ถ์ ์ง์ค์ด ์ด๋ ต๋ค. ๊ณต๋ถ์ ๋ฐ๋๋ฅผ ๋์ฌ์ผ ํ๋๋ฐ ์ ์ ๋ฐ์ง ์ฐจ๋ฆฌ์ ๐ฅฒ
๊ทธ๋ฆฌ๊ณ ํน๊ฐ์ผ๋ก git ๊ธฐ์ด 2์ฐจ ํน๊ฐ์์ git์ ํ์ ์์ ์ด๋ป๊ฒ ํ์ฉํ๋์ง ๋ค๋ฅธ ์ฌ๋๋ค๊ณผ ํ์ ํ ๋ ๋ฒ์ ๊ด๋ฆฌ์ ์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ ์ด๋ค ์์ผ๋ก ์งํํ๋์ง ์ ์ ์์๋ค. 1์ฃผ์ฐจ์์ ๋ฏธ๋ ํ๋ก์ ํธ๋ฅผ ์งํํ๊ธฐ ์ ์ ์ ์๊ณ ์์๋๋ผ๋ฉด ํ์๋ค์๊ฒ Merge ๊ถํ์ ์ฃผ์ด ๋ค ๊ฐ์ด ์ค์ตํด ๋ณผ ์ ์์์ ํ ๋ฐ ๊ทธ ์ ์ด ์กฐ๊ธ ์์ฌ์ ๋ค. ๋ค์๋ฒ์๋ Dev ๋ธ๋์น๋ฅผ ๋ฐ๋ก ๋๊ณ ํํ์ ์งํํ๋ฉด์ ์ข ๋ ํ์ ์์ ์ฌ์ฉํ๋ ๊ฒ์ฒ๋ผ ์ค์ตํด ๋ณผ ์ ์์์ผ๋ฉด ์ข๊ฒ ๋ค.โจ