๐ฃ Github๋ก ํ์ ํ๊ธฐ (VScode) - '๋ด ์์ '์ด ํ์ฅ์ผ ๋
1. Repository ์์ฑ ( ์ฐ์ธก ์๋จ ํ๋กํ ์์ด์ฝ ํด๋ฆญ → Your repositories )
2. New Repositories ํด๋ฆญ
3. Repository name ์ ๋ ฅ → add a README file(์ ํ์ฌํญ) → Create repository ํด๋ฆญ
๐ํ์ ์ ์ด๋ํ๊ธฐ (๊ฑด๋๋ฐ์ด๋๋! ํ์ํ์ ๋ถ๋ง๐)
1. ์ข์ธก ์๋จ์ ํ์ ํ Repository name ํ์ธํ๊ณ Settings → Collaborators → Add people ํด๋ฆญ
2. Github ๊ณ์ ์ ๋ ฅํ์ฌ ํ์ ์ ์ฐพ์์ ์ ํ ํ Select a collaborator above ํด๋ฆญ
3. ์ถ๊ฐ๋ ๋ชจ์ต์ ํ์ธํ ์ ์๋ค. ํ์ ์๊ฐ ์ฌ๋ฌ๋ช ์ผ ๋ Add people ๋ฒํผ์ ํด๋ฆญํด ๋์ผํ๊ฒ ์งํ
4. VScode์ ์์ ์ค์ธ ๋๋ ํ ๋ฆฌ๊ฐ ์์๋ค๋ฉด, Ctrl+Shift+N์ ๋๋ฌ ์ ์ฐฝ์ผ๋ก ์ด์ด์ค๋ค.
5. ์ข์ธก ์์ด์ฝ์ [์์ค์ ์ด] ์ ํ
6. Github๋ก ์์ ์๋จ ๋ฉ๋ด์ [ < > ์ฝ๋ ] → ์ด๋ก์๋ฒํผ < > Code ํด๋ฆญ → HTTPS ์ฃผ์ ๋ณต์ฌ
๐คmain ๋ธ๋์น(branch) ๋ณดํธํ๊ธฐ ! (๊ฑด๋๋ฐ์ด๋๋! ํ์ํ์ ๋ถ๋ง๐)
1. Setting → Branches → Add branch protection rule ํด๋ฆญ
2. Branch name pattern ์์ฑ ํ Require a pull request before merging ์ฒดํฌ → Lock branch ์ฒดํฌ → Create ํด๋ฆญ
[main] branch๋ ๊ฐ์ฅ ์ค์ํ๊ณ ํจ๋ถ๋ก ๋ฐ๊ฟ์๋ ์๋๋ branch์ด๊ณ , ํ๋ก์ ํธ ์์ฑ ํ ์ต์ข ๋ณธ์ ์ ๋ก๋ํ๋ branch์ด๋ค.
๋ฐ๋ผ์, ํ์ ์๋ค ๊ฐ๊ฐ์ธ์ด ํจ๋ถ๋ก [main] branch์ pushํ ์ ์๋๋ก ๋ณดํธ(Lock) ํด์ฃผ๋ ๊ธฐ๋ฅ์ด๋ค.
* default branch ์ด๋ฆ์ ๋ฐ๋ ์ ์์! ์ฌ๊ธฐ์๋ main์ default branch ์๋๋ค.
3. ๋ณดํธ ์๋ฃ
7. [๋ฆฌํ์งํ ๋ฆฌ ๋ณต์ ] ๋๋ ๊ฐ์ด๋ฐ [Git ๋ฆฌํฌ์งํ ๋ฆฌ ๋ณต์ ...] ํด๋ฆญ → ์๋จ ์ฐฝ์ ๋ณต์ฌํด์จ HTTPS ๋ถ์ฌ๋ฃ๊ธฐ
8. ๋๋ ํ ๋ฆฌ๋ฅผ ๋ฐํํ๋ฉด์ผ๋ก ์ง์ ํ → ๋ฆฌํฌ์งํ ๋ฆฌ ๋์์ผ๋ก ์ ํ → ์ด๊ธฐ
๐ณ Branch ์์ฑํ๊ธฐ
์ฌ๊ธฐ์๋ master, sub1, sub2, sub3 ์ด 4๊ฐ์ branch๋ฅผ ์์ฑํ ์์ ์ ๋๋ค.
9. ์ข์ธก ํ๋จ์ main ๋ธ๋์น๋ ์ฌ์ฉํ๋ฉด ์๋๋ฏ๋ก [์ ๋ถ๊ธฐ ๋ง๋ค๊ธฐ...] ํด๋ฆญ
10. Branch ์ด๋ฆ ์ ๊ธฐ
11. ์ข์ธก ํ๋จ์ โ๏ธ ๊ตฌ๋ฆ๋ชจ์ ํด๋ฆญํ์ฌ [์์ฑ ํ ๋ถ๊ธฐ ๊ฒ์] ๋๋ฌ์ฃผ๊ธฐ (github์ Branch ์ ๋ฐ์ดํธ)
[๋ค์์์ ์ ๋ถ๊ธฐ ๋ง๋ค๊ธฐ...] ํด๋ฆญ → master ํด๋ฆญ → Branch ์ด๋ฆ ์ ๊ธฐ
12. [์์ฑ ํ ๋ถ๊ธฐ ๊ฒ์] ๋๋ฌ๊ฐ๋ฉฐ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก master, sub1, sub2, sub3 ์ด 4๊ฐ์ branch ์์ฑ
๐ค Push ํ๊ธฐ (์ฝ๋ ์ฌ๋ฆฌ๊ธฐ)
13. ('๋ ์์ '์ด sub1 branch๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ์ฝ์์ด ๋์ด์์ผ๋ฉด) ์ข์ธก ํ๋จ์ branch name ํด๋ฆญ ํ sub1 ํด๋ฆญ
14. ํ์ผ ์์ฑ (์์ )
15. [์์ค์ ์ด] ํด๋ฆญ → ๋ณ๊ฒฝ ์ฌํญ์ [+] ํด๋ฆญ ํ๋ฉด
16. ๋ณ๊ฒฝ ์ฌํญ์ ์๋ ์์ ๋ด์ฉ์ด ์คํ ์ด์ง๋ ๋ณ๊ฒฝ ์ฌํญ์ผ๋ก ์ด๋.
๋ฉ์ธ์ง ์ฐฝ์ ๊ฐ๋ตํ ๋ฉ์ธ์ง๋ฅผ ๋ฐ๋์ ์์ฑ ํ ์ปค๋ฐ ํด๋ฆญ (๋ฉ์ธ์ง ์์ฑ ์ํ๋ฉด ์๋ฌ๋ธ) → ๊ฒ์
* 16-1. ๋ช ๋ น์ด๋ก๋ ๊ฐ๋ฅ! ํฐ๋ฏธ๋ ์ฐฝ ์ด๊ณ ์์๋๋ก ๋ช ๋ น์ด ์ ๋ ฅ
- git add .
- git commit -m “๋ฉ์ธ์ง ์ ๋ ฅ”
- git push origin sub1(๋ณด๋ด๋ ค๋ branch name)
17. Github์ ์ ๋ฐ์ดํธ๋ ๋ด์ฉ์ด ๋จ๊ณ Compare & pull request ํด๋ฆญ
โ โ โ โ โ 18. ๋ฐ๋์ base๋ฅผ master branch๋ก ๋ณ๊ฒฝ ํด์ผํจ. (default main branch ์ฌ์ฉ ๊ธ์ง)
19. description์ ์์ ํ ๋ด์ฉ, ์์ฑ, ์์ , ์ญ์ ๋ฑ ๊ณต์ ํ ๋ด์ฉ์ ์์ธํ ์ ๊ณ Create pull request ํด๋ฆญ
20. Merge pull request ํด๋ฆญ
21. Confirm merge ํด๋ฆญ
22. master branch์ pull & merge ์๋ฃ
๐ Pull ํ๊ธฐ (์ฝ๋ ๋ด๋ ค๋ฐ๊ธฐ)
23. ์ข์ธก ํ๋จ์ master๋ก branch ๋ณ๊ฒฝ ํ [๋ณ๊ฒฝ ๋ด์ฉ ๋๊ธฐํ] ํด๋ฆญ → ํ์ธ
24. ์ข์ธกํ๋จ์ branch๋ฅผ sub1 ๋ก ๋ณ๊ฒฝํ๋ค [์ํฐ๋ฏธ๋] ์ด๊ณ git pull origin master ์ ์ด์ฃผ๋ฉด ๋