์์ ์์ ์ ์ ํ๋์ด์ผ ํ ์์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
<aside> ๐ 1. issue๋ฅผ ์์ฑํฉ๋๋ค. 2. feature branch๋ฅผ ์์ฑํฉ๋๋ค. 3. add โ commit โ push โ pull request ๋ฅผ ์งํํฉ๋๋ค. 4. pull request๋ฅผ develop branch๋ก merge ํฉ๋๋ค. 5. ์ด์ ์ merge๋ ์์ ์ด ์์ ๊ฒฝ์ฐ ๋ค๋ฅธ branch์์ ์งํํ๋ ์์ ์ merge๋ ์์ ์ pull ๋ฐ์์ต๋๋ค. 6. ์ข ๋ฃ๋ issue์ pull request์ label์ ๊ด๋ฆฌํฉ๋๋ค.
</aside>
IntelliJ๋ก ์์ ์ ์งํํ๋ ๊ฒฝ์ฐ, ์์ ์์ ์ ์ ํ๋์ด์ผ ํ ์์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
<aside> ๐ 1. ๊นํ๋ธ ํ๋ก์ ํธ ์ ์ฅ์์์ issue๋ฅผ ์์ฑํฉ๋๋ค. 2. IntelliJ์ git ํญ โ local develop branch ์ฐํด๋ฆญ โ update๋ฅผ ์งํํฉ๋๋ค. 3. IntelliJ์ git ํญ โ local develop branch ์ฐํด๋ฆญ โ new branch from โdevelopโ์ ์งํํฉ๋๋ค. 4. ์์ฑํ issue ๋ฒํธ์ ๋ง๋ feature branch๋ฅผ ์์ฑํจ๊ณผ ๋์์ feature branch๋ก checkout ํฉ๋๋ค. 5. feature branch์์ issue ๋จ์ ์์ ์ ์งํํฉ๋๋ค. 6. ์์ ์๋ฃ ํ, add โ commit์ ์งํํฉ๋๋ค. 7. push ํ๊ธฐ ์ , remote develop branch์ ๋ณ๊ฒฝ ์ฌํญ์ ํ์ธํ๊ธฐ ์ํด 2๋ฒ ๊ณผ์ ์ ๋ค์ ์ํํฉ๋๋ค. 8. IntelliJ์ git ํญ โ local develop branch ์ฐํด๋ฆญ โ merge โdevelopโ into โ4๋ฒ ๊ณผ์ ์์ ์์ฑํ feature branchโ๋ฅผ ์งํํฉ๋๋ค. 9. ๋ง์ฝ ์ฝ๋ ์ถฉ๋์ด ๋ฐ์ํ์๋ค๋ฉด, IntelliJ์์ ์ฝ๋ ์ถฉ๋์ ํด๊ฒฐํ๊ณ add โ commit์ ์งํํฉ๋๋ค. 10. push โ pull request(feature branch โ develop branch)๋ฅผ ์งํํฉ๋๋ค. 11. pull request๊ฐ ์์ฑ๋๋ฉด ์์ฑ์ ์ด์ธ์ ๋ค๋ฅธ ํ์์ด code review๋ฅผ ์งํํฉ๋๋ค. 12. ์ต์ ํ ๋ช ์ด์์ ํ์์๊ฒ code review์ approval์ ๋ฐ์ ๊ฒฝ์ฐ pull request ์์ฑ์๊ฐ merge๋ฅผ ์งํํฉ๋๋ค. 13. ์ข ๋ฃ๋ issue์ pull request์ label๊ณผ milestone์ ๊ด๋ฆฌํฉ๋๋ค.
</aside>
์ค์ํด์ผ ํ ๊ท์น์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
<aside> ๐ 1. develop branch์์์ ์์ ์ ์์น์ ์ผ๋ก ๊ธ์งํฉ๋๋ค. ๋จ, README ์์ฑ์ develop branch์์ ์ํํฉ๋๋ค. 2. commit, push, merge, pull request ๋ฑ ๋ชจ๋ ์์ ์ ์ค๋ฅ ์์ด ์ ์์ ์ผ๋ก ์คํ๋๋ ์ง ํ์ธ ํ ์ํํฉ๋๋ค.
</aside>
branch์ naming rule์ 1.2.1์ ์ค์ํฉ๋๋ค. branch๋ ์์ ๋จ์ & ๊ธฐ๋ฅ ๋จ์๋ก ์์ฑํ๋ฉฐ ์ด๋ issue๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค.
branch๋ฅผ ์์ฑํ๊ธฐ ์ issue๋ฅผ ๋จผ์ ์์ฑํฉ๋๋ค. issue ์์ฑ ํ ์์ฑ๋๋ ๋ฒํธ๋ก branch์ ์ด๋ฆ์ ๊ฒฐ์ ํฉ๋๋ค.ย <Prefix>/<Issue_Number>
ย ์ ์์์ ์ค์ํฉ๋๋ค.
main
ย : ํ๋ก๋ํธ๋ฅผ ๋ฐฐํฌํ๋ ๋ธ๋์น์
๋๋ค.develop
: ํ๋ก๋ํธ ๋ฐฐํฌ ์ ๊ธฐ๋ฅ์ ๊ฐ๋ฐํ๋ ๋ธ๋์น์
๋๋ค.