๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ106

ํ˜‘์—…์„ ์œ„ํ•œ Fork์™€ Pull Request: GitHub๋กœ ํ”„๋กœ์ ํŠธ์— ๊ธฐ์—ฌํ•˜๋Š” ๋ฒ• ๐ŸŒ ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ์— ๊ธฐ์—ฌํ•˜๊ฑฐ๋‚˜, ํŒ€ ํ”„๋กœ์ ํŠธ์—์„œ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด GitHub์˜ Fork์™€ Pull Request ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Fork๋Š” ์›๋ณธ ์ €์žฅ์†Œ์˜ ๋ณต์‚ฌ๋ณธ์„ ์ž์‹ ์˜ ์ €์žฅ์†Œ์— ์ƒ์„ฑํ•˜๋Š” ์ž‘์—… ์ด๋ฉฐ, Pull Request๋Š” ์ˆ˜์ •ํ•œ ์ฝ”๋“œ๋ฅผ ์›๋ณธ ํ”„๋กœ์ ํŠธ์— ๋ฐ˜์˜ํ•ด๋‹ฌ๋ผ๊ณ  ์š”์ฒญํ•˜๋Š” ์ ˆ์ฐจ ์ž…๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” Fork์™€ Pull Request์˜ ๊ฐœ๋…, ํ™œ์šฉ๋ฒ•, ๊ทธ๋ฆฌ๊ณ  ์ฝ”๋“œ ๋ฆฌ๋ทฐ ๊ณผ์ •์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.  1. Fork๋ž€ ๋ฌด์—‡์ธ๊ฐ€? Fork(ํฌํฌ) ๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์ €์žฅ์†Œ๋ฅผ ๋ณต์‚ฌํ•˜์—ฌ ์ž์‹ ์˜ GitHub ๊ณ„์ •์œผ๋กœ ๊ฐ€์ ธ์˜ค๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. Fork๋Š” ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ์— ๊ธฐ์—ฌํ•˜๊ณ ์ž ํ•  ๋•Œ ์ฃผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ํ”„๋กœ์ ํŠธ์˜ ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๊ณ ์ž ํ•  ๋•Œ F.. IT/CI CD ๊ด€๋ จ 2024. 10. 30.
Git ๋ธŒ๋žœ์น˜ ์ดํ•ด์™€ ๊ด€๋ฆฌ: ํ˜‘์—…์˜ ํ•ต์‹ฌ, ๋ธŒ๋žœ์น˜๋กœ ํ”„๋กœ์ ํŠธ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ธฐ ๐ŸŒฟ Git์˜ ๊ฐ€์žฅ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜๋Š” ๋ฐ”๋กœ ๋ธŒ๋žœ์น˜(branch) ์ž…๋‹ˆ๋‹ค. ๋ธŒ๋žœ์น˜๋Š” ํ”„๋กœ์ ํŠธ์˜ ๋…๋ฆฝ์ ์ธ ์ž‘์—… ๊ณต๊ฐ„์„ ์˜๋ฏธํ•˜๋ฉฐ, ์ฝ”๋“œ์˜ ์•ˆ์ •์„ฑ์„ ์œ ์ง€ํ•˜๋ฉด์„œ๋„ ์—ฌ๋Ÿฌ ๊ธฐ๋Šฅ์„ ๋™์‹œ์— ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค . ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋ธŒ๋žœ์น˜์˜ ๊ฐœ๋…๊ณผ ํ•„์š”์„ฑ์„ ์„ค๋ช…ํ•˜๊ณ , Git์—์„œ ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑ, ์ด๋™, ๋ณ‘ํ•ฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.  1. ๋ธŒ๋žœ์น˜๋ž€ ๋ฌด์—‡์ธ๊ฐ€?๋ธŒ๋žœ์น˜๋ž€ ํ•˜๋‚˜์˜ Git ์ €์žฅ์†Œ ์•ˆ์—์„œ ๋…๋ฆฝ์ ์ธ ์ž‘์—… ๊ณต๊ฐ„ ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•  ๋•Œ, ๋ธŒ๋žœ์น˜๋ฅผ ๋‚˜๋ˆ„์–ด ์ž‘์—…ํ•˜๋ฉด ์ฝ”๋“œ๊ฐ€ ์„œ๋กœ ์ถฉ๋Œํ•˜์ง€ ์•Š๊ณ  ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ฐœ๋ฐœ ์ค‘์ธ ๊ธฐ๋Šฅ์„ ์™„๋ฃŒํ•˜๊ธฐ ์ „์—, ์ด๋ฏธ ์™„๋ฃŒ๋œ ์ฝ”๋“œ๋ฅผ ๋‹ค๋ฅธ ์ž‘์—…์— ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ๋ธŒ๋žœ์น˜์˜ ์žฅ์ ์ž…๋‹ˆ๋‹ค.์™œ ๋ธŒ๋žœ์น˜๊ฐ€ ํ•„์š”ํ•œ๊ฐ€?๋ธŒ๋žœ์น˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์ ์ด .. IT/CI CD ๊ด€๋ จ 2024. 10. 30.
Git ๊ธฐ์ดˆ ๋ช…๋ น์–ด ์‚ฌ์šฉ๋ฒ•: ๊นƒ์˜ ๊ธฐ๋ณธ์„ ์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ๋ฐฐ์šฐ๊ธฐ ๐ŸŒฑ ๋ฒ„์ „ ๊ด€๋ฆฌ์˜ ์‹œ์ž‘์€ ๋ฐ”๋กœ Git! ์ดˆ๋ณด ๊ฐœ๋ฐœ์ž๋ถ€ํ„ฐ ์ˆ™๋ จ๋œ ๊ฐœ๋ฐœ์ž๊นŒ์ง€ ํ•„์ˆ˜์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” Git์˜ ๊ธฐ์ดˆ ๋ช…๋ น์–ด ๋ฅผ ๋‹ค๋ฃจ์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. git init ์œผ๋กœ ์ƒˆ๋กœ์šด ์ €์žฅ์†Œ๋ฅผ ์‹œ์ž‘ํ•˜๊ณ , git add ์™€ git commit ์„ ํ†ตํ•ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ €์žฅํ•˜๋ฉฐ, git status ์™€ git log ๋ฅผ ํ†ตํ•ด ํ˜„์žฌ ์ƒํƒœ๋ฅผ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‰ฝ๊ฒŒ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.  1. Git ๊ธฐ์ดˆ ๋ช…๋ น์–ด ์•Œ์•„๋ณด๊ธฐGit์„ ๋ฐฐ์šฐ๋ ค๋ฉด ๊ธฐ๋ณธ ๋ช…๋ น์–ด์˜ ์—ญํ• ๊ณผ ์‚ฌ์šฉ ๋ฐฉ๋ฒ• ์„ ์ž˜ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. Git์˜ ๊ธฐ๋ณธ์ ์ธ ํ๋ฆ„์„ ์•„๋ž˜ ํ‘œ๋ฅผ ํ†ตํ•ด ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.๋ช…๋ น์–ด์—ญํ• ์„ค๋ช… git init ์ƒˆ๋กœ์šด Git ์ €์žฅ์†Œ ์ƒ์„ฑํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ Git์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. git add ๋ณ€๊ฒฝ๋œ ํŒŒ.. IT/CI CD ๊ด€๋ จ 2024. 10. 30.
Git์˜ ๊ธฐ๋ณธ ๊ฐœ๋…๊ณผ ์„ค์น˜ ๋ฐฉ๋ฒ•: ๋ฒ„์ „ ๊ด€๋ฆฌ์˜ ํ•„์ˆ˜ ๊ฐ€์ด๋“œ ๐Ÿš€ ๊ฐœ๋ฐœ์ž๋“ค์ด ๊ผญ ์•Œ์•„์•ผ ํ•  ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ, Git ! ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(VCS)์€ ์ฝ”๋“œ์˜ ๋ณ€๊ฒฝ ์ด๋ ฅ์„ ๊ด€๋ฆฌํ•˜์—ฌ ํ”„๋กœ์ ํŠธ์˜ ์•ˆ์ •์„ฑ์„ ์œ ์ง€ํ•˜๊ณ , ํ˜‘์—…์„ ์›ํ™œํ•˜๊ฒŒ ๋•๋Š” ์ค‘์š”ํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ํŠนํžˆ, Git ์€ ๋ถ„์‚ฐํ˜• ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์œผ๋กœ ์ „ ์„ธ๊ณ„ ๊ฐœ๋ฐœ์ž๋“ค์—๊ฒŒ ๋„๋ฆฌ ์‚ฌ๋ž‘๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” Git์˜ ๊ฐœ๋…๊ณผ ์„ค์น˜ ๋ฐฉ๋ฒ•์„ ํ†ตํ•ด ์—ฌ๋Ÿฌ๋ถ„์ด ์‰ฝ๊ฒŒ Git์„ ์ดํ•ดํ•˜๊ณ  ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋„๋ก ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค.  1. ๋ฒ„์ „ ๊ด€๋ฆฌ์˜ ์ค‘์š”์„ฑ: ์™œ Git์ด ํ•„์š”ํ• ๊นŒ?๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์€ ์ฝ”๋“œ๋‚˜ ํŒŒ์ผ์˜ ๋ณ€๊ฒฝ ์ด๋ ฅ์„ ๊ด€๋ฆฌํ•˜์—ฌ, ๊ฐ ๋ฒ„์ „ ๊ฐ„์˜ ์ฐจ์ด๋ฅผ ํ™•์ธํ•˜๊ณ  ์ด์ „ ๋ฒ„์ „์œผ๋กœ ์‰ฝ๊ฒŒ ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ๋„๋ก ๋•์Šต๋‹ˆ๋‹ค. ์ด ์ค‘์—์„œ๋„ Git ์€ ๋ถ„์‚ฐํ˜• ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์œผ๋กœ, ๋„คํŠธ์›Œํฌ์— ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์•„๋„ ๋กœ์ปฌ์—์„œ ์ž์œ ๋กญ๊ฒŒ ์ž‘์—…ํ•˜๊ณ , ์›๊ฒฉ ์„œ๋ฒ„์— ์•ˆ์ „.. IT/CI CD ๊ด€๋ จ 2024. 10. 30.
์ธ๋ณด์ด์Šค ์ œ๋Œ€๋กœ ์ดํ•ดํ•˜๊ธฐ: ์˜์ˆ˜์ฆ๊ณผ์˜ ์ฐจ์ด๋ถ€ํ„ฐ ํ•„์ˆ˜ ๊ตฌ์„ฑ์š”์†Œ๊นŒ์ง€ ์˜ค๋Š˜๋‚  ๊ตญ์ œ ๋ฌด์—ญ์ด๋‚˜ ํ•ด์™ธ ์ง๊ตฌ๊ฐ€ ์ผ๋ฐ˜ํ™”๋˜๋ฉด์„œ, ๋ˆ„๊ตฌ๋‚˜ ํ•œ ๋ฒˆ์ฏค์€ ์ธ๋ณด์ด์Šค๋ฅผ ์ ‘ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ, ์ธ๋ณด์ด์Šค์™€ ์˜์ˆ˜์ฆ์˜ ์ฐจ์ด์ ์ด๋‚˜ ์ธ๋ณด์ด์Šค ์ฒ˜๋ฆฌ ์ ˆ์ฐจ์— ๋Œ€ํ•ด ์ •ํ™•ํžˆ ์•„๋Š” ์‚ฌ๋žŒ์€ ๋“œ๋ฌธ๋ฐ์š”. ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์ธ๋ณด์ด์Šค์˜ ์ •์˜๋ถ€ํ„ฐ ์˜์ˆ˜์ฆ๊ณผ์˜ ์ฐจ์ด, ๊ทธ๋ฆฌ๊ณ  ์‹ค์ „์—์„œ ๊ผญ ์•Œ์•„์•ผ ํ•  ์ธ๋ณด์ด์Šค ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•๊นŒ์ง€ ์ •๋ฆฌํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.   ์ธ๋ณด์ด์Šค๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”? ์ธ๋ณด์ด์Šค(Invoice) ๋ž€ ํŒ๋งค์ž๊ฐ€ ๊ตฌ๋งค์ž์—๊ฒŒ ๋ฐœํ–‰ํ•˜๋Š” ์ƒ์—… ๋ฌธ์„œ๋กœ, ๊ฑฐ๋ž˜๋œ ์ƒํ’ˆ์ด๋‚˜ ์„œ๋น„์Šค์— ๋Œ€ํ•œ ์ •๋ณด์™€ ์ง€๋ถˆ ๊ธˆ์•ก์ด ๋ช…์‹œ๋œ ์ฒญ๊ตฌ์„œ์ž…๋‹ˆ๋‹ค. ๋‹จ์ˆœํžˆ ๊ฑฐ๋ž˜๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ๋‹ค๋Š” ์ฆ๋น™์ด ์•„๋‹ˆ๋ผ, ๊ตฌ๋งค์ž๊ฐ€ ํŒ๋งค์ž์—๊ฒŒ ๊ฒฐ์ œ๋ฅผ ์š”์ฒญํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ์ค‘์š”ํ•œ ์„œ๋ฅ˜ ์ž…๋‹ˆ๋‹ค.์ธ๋ณด์ด์Šค๊ฐ€ ์ค‘์š”ํ•œ ์ด์œ ๊ตญ์ œ ๊ฑฐ๋ž˜์—์„œ ์ธ๋ณด์ด์Šค๋Š” ์„ธ๊ด€ ์‹ ๊ณ ์™€ ๊ณผ์„ธ ๊ฐ€๊ฒฉ ๊ฒฐ์ •์— ํ•„์š”ํ•œ ๊ธฐ์ดˆ ์ž๋ฃŒ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค... ์ƒํ™œ ์ •๋ณด 2024. 10. 29.