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

๊ธฐํƒ€/์šฐ์•„ํ•œํ…Œํฌ์ฝ”์Šค > ํ”„๋ฆฌ์ฝ”์Šค

[ํ”„๋ฆฌ์ฝ”์Šค ํ”„๋ฆฌ๋ทฐ] ํ”„๋ฆฌ์ฝ”์Šค๋ฅผ ์‹œ์ž‘ํ•˜๋Š” ๋น„์ „๊ณต์ž๋ฅผ ์œ„ํ•œ ๊ฐ€์ด๋“œ

โ—๊ฐ ์šฉ์–ด๋งˆ๋‹ค ๊นŠ์ด ๋“ค์–ด๊ฐ€๋Š” ์ •๋„๋Š” ๋น„์ „๊ณต์ž๊ฐ€ ํ”„๋ฆฌ์ฝ”์Šค๋ฅผ ํ•˜๋Š”๋ฐ์— ์–ด๋ ค์›€์ด ์—†์„ ์ •๋„๊นŒ์ง€๋งŒ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค.

โ— ๊ฐ ์šฉ์–ด๋“ค์€ ํ”„๋ฆฌ์ฝ”์Šค์— ๋งž์ถฐ ์„ค๋ช…๋“œ๋ฆผ์„ ๋ฏธ๋ฆฌ ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค.

๐Ÿ•ถ๏ธ[ํ”„๋ฆฌ์ฝ”์Šค ๊ณผ์ œ ์ œ์ถœ ๋ฌธ์„œ ๊นƒํ—ˆ๋ธŒ ์šฉ์–ด ์ •๋ฆฌ]

โ–ท fork

์šฐ์•„ํ•œ ์ฝ”์Šค ๊นƒํ—ˆ๋ธŒ์— ์žˆ๋Š” Repository๋ฅผ ์ž์‹ ์˜ ๊นƒํ—ˆ๋ธŒ๋กœ ๊ฐ€์ ธ์˜ค๊ธฐ

*์ž์‹ ์˜ ๊นƒํ—ˆ๋ธŒ๋กœ ๊ฐ€์ ธ์˜ค์ง€ ์•Š์œผ๋ฉด Repository์•ˆ์— ์žˆ๋Š” ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์ด ์—†๋‹ค.

โ–ทRepository

์ฝ”๋“œ๊ฐ€ ๋“ค์–ด์žˆ๋Š” ํด๋”(ํŒŒ์ผ)์„ ๋งํ•œ๋‹ค. 5๊ธฐ ํ”„๋ฆฌ์ฝ”์Šค์—์„œ๋Š” java-baseball, java-onboarding ๊ฐ™์€ ๊ฒƒ๋“ค์„ ๋งํ•œ๋‹ค.

 

ex) ํ”ํžˆ ์•Œ๊ณ  ์žˆ๋Š” ๋ฐ”ํƒ•ํ™”๋ฉด์˜ ํด๋”๋ฅผ ์˜ˆ์‹œ๋กœ ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

์ž์†Œ์„œ ํด๋”์— ๋‹ค์–‘ํ•œ ์›Œ๋“œ ๋ฌธ์„œ๋“ค์ด ์žˆ๋‹ค. ์ž์†Œ์„œ ํด๋”๊ฐ€ Repository, ์›Œ๋“œ ๋ฌธ์„œ๋“ค์ด ์ˆ˜์ •ํ•  ์ฝ”๋“œ์ด๋‹ค.

๋‚ด ๋ฐ”ํƒ•ํ™”๋ฉด์˜ ์ž์†Œ์„œ ํด๋”

โ–ท clone

์ž์‹ ์˜ ๊นƒํ—ˆ๋ธŒ์— ์žˆ๋Š” Repository๋ฅผ ์ž์‹ ์˜ IDE๋กœ ์ˆ˜์ •ํ•˜๊ธฐ ์œ„ํ•ด ๋‚ด ์ปดํ“จํ„ฐ(local ์ปดํ“จํ„ฐ)๋กœ ๊ฐ€์ ธ์˜ค๋Š” ์ž‘์—…

 

ํ„ฐ๋ฏธ๋„(๋ช…๋ น ํ”„๋กฌํ”„ํŠธ)์—์„œ ๋‹ค์Œ ๋ช…๋ น์„ ์ž…๋ ฅ

git clone https://github.com/[๋ณธ์ธ ์•„์ด๋””]/[์ €์žฅ์†Œ ์•„์ด๋””].git

 

*์ €๋Š” ๊นƒํ—ˆ๋ธŒ์—์„œ ๊ฐ€์ ธ์˜จ Repository๋“ค์„ ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด์„œ userํด๋” ์•ˆ์— repoํด๋”๋ฅผ ๋งŒ๋“ค๊ณ  ์ด ๊ณณ์— cloneํ•˜์˜€์Šต๋‹ˆ๋‹ค.

repo ํด๋”๋กœ ์ด๋™ํ•˜๊ธฐ ์œ„ํ•ด ํด๋” ์ด๋™๋ช…๋ น์–ด์ธ cd ๋ฅผ ์‚ฌ์šฉํ•œ ๋ชจ์Šต
repoํด๋”์—์„œ java-baseball Repository๋ฅผ cloneํ•˜๋Š” ๋ชจ์Šต

โ–ท branch

  • ๋ณ„๋„์˜ ๊ณต๊ฐ„์„ ํ•˜๋Š” ๋งŒ๋“ค์–ด์ฃผ๋Š” ์ž‘์—…
  • ์‚ฌ๋žŒ์ด ๋™์ผํ•œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์„œ๋กœ ๋‹ค๋ฅธ ์ž‘์—…์„ ํ•  ๋•Œ ๋™์‹œ์— ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ค์–ด์ฃผ๋Š” ๊ธฐ๋Šฅ์ด๋‹ค.
git checkout -b [๋ณธ์ธ ์•„์ด๋””]

์ดํ•ด๋ฅผ ์‰ฝ๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ, ์‹ค๋ฌด์—์„œ์˜ ์˜ˆ๋ฅผ ๋“ค๊ฒ ์Šต๋‹ˆ๋‹ค.

master๋Š” ์„œ๋น„์Šค์— ์ ์šฉ๋˜๋Š” ์ฝ”๋“œ๋“ค์ด ๋ชจ์—ฌ์žˆ๋Š” ๊ณณ์ž…๋‹ˆ๋‹ค. ๋งŒ์•ฝ, ์‹œ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๊ฐ€ ์‹ ์ž…์‚ฌ์›์—๊ฒŒ ์„œ๋น„์Šค์— ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๋ผ๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ๋•Œ, ์‹ ์ž…์‚ฌ์›์ด master๋ฅผ ์ง์ ‘ ๊ฑด๋“œ๋ฆฐ๋‹ค๋ฉด ์—„์ฒญ ํ˜ผ๋‚ฉ๋‹ˆ๋‹ค. ์™œ ์ผ๊นŒ์š”?

์—๋Ÿฌ๊ฐ€ ์žˆ์„์ˆ˜๋„ ์žˆ๋Š” ์‹ ์ž…์‚ฌ์›์˜ ์ฝ”๋“œ๊ฐ€ ์„œ๋น„์Šค์— ์ง๊ฒฐ๋˜์–ด ์„œ๋น„์Šค๊ฐ€ ํ„ฐ์งˆ ์ˆ˜๋„ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‹ˆ, ์‹ ์ž…์‚ฌ์›์ด ์•ˆ์ „ํ•˜๊ฒŒ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ณ„๋„์˜ ๊ณต๊ฐ„์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ branch๋ฅผ ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

โ–ท Gradle

๋นŒ๋“œ ๋„๊ตฌ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

๋นŒ๋“œ๋ž€?

์šฐ๋ฆฌ ์‰ฝ๊ฒŒ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ์ž๋ฐ”์˜ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ปดํ“จํ„ฐ์˜ ์–ธ์–ด์ธ ๋ฐ”์ดํŠธ ์ฝ”๋“œ(0๊ณผ 1)๋กœ ๋ฐ”๊พธ๊ธฐ ์œ„ํ•ด ์ปดํŒŒ์ผํ•˜์—ฌ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ํ˜•ํƒœ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

์ด๋Ÿฌํ•œ, ๋นŒ๋“œ๋ฅผ ๋„์™€์ฃผ๋Š” ๋„๊ตฌ๊ฐ€ Gradle๊ณผ Maven ์ž…๋‹ˆ๋‹ค. Maven์˜ ๊ธฐ์กด ๊ตฌ์กฐ๋ฅผ ๋”ฐ๋ฅด๋ฉฐ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•œ ๊ฒƒ์ด Gradle์ด๊ธฐ ๋•Œ๋ฌธ์— Maven์„ ์“ฐ์ง€ ์•Š๊ณ  Gradle์„ ๋นŒ๋“œ ๋„๊ตฌ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

 

โžก๏ธ์—ฌ๊ธฐ์„œ ๋ถ€ํ„ฐ๋Š” ์•ˆ ์ฝ์œผ์…”๋„ ํ”„๋ฆฌ์ฝ”์Šค๋ฅผ ์ง„ํ–‰ํ•˜๋Š”๋ฐ ์–ด๋ ค์›€์ด ์—†์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค!

 

๊ทธ๋ ‡๋‹ค๋ฉด, Gradle์ด ์—†์œผ๋ฉด ๋นŒ๋“œ ๊ณผ์ • ์ค‘ ํ•˜๋‚˜์ธ ์ปดํŒŒ์ผ์ด ์•ˆ๋˜๋Š” ๊ฒƒ์ธ๊ฐ€? ๋ผ๋Š” ์˜๋ฌธ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ, ์šฐ๋ฆฌ๋Š” ์ด๋ฏธ ์ •๋‹ต์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค!!

๊ทธ ๋™์•ˆ Gradle์ด ์—†์ด๋„ ์ธํ…”๋ฆฌ์ œ์ด ์ž์ฒด์—์„œ ์ œ๊ณตํ•˜๋Š” ๋นŒ๋“œ ๋„๊ตฌ์ธ IntelliJ IDEA๋กœ ์ปดํŒŒ์ผ์„ ํ•ด์™”๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

 

Gradle์„ ์•Œ๊ฒŒ ๋˜์—ˆ์œผ๋‹ˆ ์ด์ œ๋Š” ์–ด๋–ค ๋นŒ๋“œ ๋„๊ตฌ๋กœ ๋นŒ๋“œ ํ•ด์•ผํ• ์ง€ ์„ ํƒ์˜ ์ˆœ๊ฐ„์ด ์™”์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์•Œ๋ ค๋ฉด ๋‘˜์˜ ๋นŒ๋“œ ๋ฐฉ์‹์— ๋Œ€ํ•ด ์•Œ์•„์•ผ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๐Ÿ˜ŠIntelliJ IDEA์˜ ๋นŒ๋“œ ๋ฐฉ์‹์€ ์ฆ๋ถ„ ๋นŒ๋“œ์ด์ง€๋งŒ, Gradle์€ ์ฆ๋ถ„ ๋นŒ๋“œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

 

์ฆ๋ถ„ ๋นŒ๋“œ๋ž€ ๋ณ€๊ฒฝ๋œ ๋ถ€๋ถ„๋งŒ ๋นŒ๋“œ๋ฅผ ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์€ ๋ถ€๋ถ„์€ ๊ฑด๋„ˆ๋›ฐ๋Š” ๋ฐฉ์‹์œผ๋กœ IntelliJ IDEA๊ฐ€ Gradle๋ณด๋‹ค ๋นŒ๋“œ๋ฅผ ๋” ๋น ๋ฅด๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

ํ•˜์ง€๋งŒ, ์ฆ๋ถ„ ๋นŒ๋“œ์—๋„ ๋‹จ์ ์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. ์ฆ๋ถ„ ๋นŒ๋“œ๋Š” ๋ณ€๊ฒฝ๋œ ํด๋ž˜์Šค๋งŒ ์ปดํŒŒ์ผ์„ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‚ญ์ œ๋œ ํŒŒ์ผ(ํด๋ž˜์Šค)์— ๋Œ€ํ•ด์„œ๋Š” ์ปดํŒŒ์ผ์„ ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

์ฆ‰, src์—์„œ ์ˆ˜์ •ํ•œ ์ฝ”๋“œ๋ฅผ ์ปดํŒŒ์ผ ํ–ˆ์„ ๋•Œ, ๋นŒ๋“œ ๊ฒฐ๊ณผ๋ฌผ์ด ์žˆ๋Š” out ํด๋”์— ๋ฐ˜์˜์ด ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. 

*IntelliJ IDEA๋กœ ๋นŒ๋“œํ–ˆ๋‹ค๋ฉด ๋นŒ๋“œ ๊ฒฐ๊ณผ๋ฌผ์€ out ํด๋”์—, Gradle๋กœ ๋นŒ๋“œํ–ˆ๋‹ค๋ฉด ๋นŒ๋“œ ๊ฒฐ๊ณผ๋ฌผ์€ build ํด๋”์— ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

 

์ด๋Ÿฐ ๋‹จ์ ์€ ์ •ํ™•ํ•œ ๋นŒ๋“œ๋ฅผ ์›ํ•  ๋•Œ, ๋ฌธ์ œ๊ฐ€ ์ƒ๊น๋‹ˆ๋‹ค. ์ฝ”๋“œ๋ฅผ ์ž‘์—…ํ•˜๋Š” src ํด๋”์—์„œ ํŒŒ์ผ๋ฅผ ์ง€์› ๋‹ค ์ƒ๊ฐํ•ด๋„ IDEA๋กœ ๋นŒ๋“œํ•œ๋‹ค๋ฉด IDEA์ž…์žฅ์—์„œ๋Š” ์šฐ๋ฆฌ๊ฐ€ ์‚ญ์ œํ•œ ํŒŒ์ผ์„ ๋นŒ๋“œ์— ๋ฐ˜์˜ํ•˜์ง€ ์•Š๊ณ , ์—ฌ์ „ํžˆ ๋‚จ์•„์žˆ๋‹ค๊ณ  ํŒ๋‹จํ•ด์„œ ์˜ค๋ฅ˜๋ฅผ ์ผ์œผํ‚ฌ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๋•Œ ์ƒ๊ธฐ๋Š” ์˜ค๋ฅ˜๋Š”, src์—์„œ ์‚ญ์ œํ•œ ํŒŒ์ผ์„ out ํด๋”์—์„œ๋„ ๋˜‘๊ฐ™์ด ์‚ญ์ œํ•ด์ฃผ๋ฉด ํ•ด๊ฒฐ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

build ํด๋”, out ํด๋”, src ํด๋”๊ฐ€ ์žˆ๋Š” ๋ชจ์Šต

โœ… ๊ฒฐ๋ก 

์ •ํ™•ํ•˜๊ฒŒ ๋นŒ๋“œ๋ฅผ ํ•ด์•ผํ•˜๊ณ  ์‹ค์ œ๋กœ ์‹คํ–‰ํ•˜๊ฑฐ๋‚˜, ํ”„๋กœ์ ํŠธ ํฌ๊ธฐ๊ฐ€ ํฌ๋‹ค๋ฉด Gradle์„ ์„ ํƒํ•˜๊ณ , ํ…Œ์ŠคํŠธ ํ˜น์€ ํ”„๋กœ์ ํŠธ ํฌ๊ธฐ๊ฐ€ ์ž‘๊ฑฐ๋‚˜, ์‚ญ์ œ ํŒŒ์ผ์ด ์—†์–ด์„œ ReBuild๋ฅผ ํ•ด๋„ ๋œ๋‹ค๋ฉด ์†๋„๊ฐ€ ๋” ๋น ๋ฅธ IntelliJ IDEA๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

ํ”„๋ฆฌ์ฝ”์Šค์—์„œ๋Š” ์š”๊ตฌ์‚ฌํ•ญ๊ณผ ๊ตฌํ˜„์—๋งŒ ์ง‘์ค‘ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๊ณผ ๊ฐ™์ด ์›ํ™œํ•œ ์ง„ํ–‰์„ ํ•˜๊ธฐ ์œ„ํ•ด ์ •ํ™•ํ•œ ๋นŒ๋“œ์— ๋„์›€์„ ์ฃผ๋Š” Gradle์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹๊นŒ ์ƒ๊ฐํ•ด ๋ด…๋‹ˆ๋‹ค.

 

์ถ”๊ฐ€๋กœ, Gradle์˜ ์žฅ์ ์ž…๋‹ˆ๋‹ค.

  • ์ •ํ™•ํ•œ ๋นŒ๋“œ๋ฅผ ์ง€์›ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ์˜ ์‚ฌ์šฉ๋˜์–ด ๋ฒˆ๊ฑฐ๋กœ์›€๊ณผ ์‹ค์ˆ˜๋ฅผ ์ค„์—ฌ ์‰ฝ๊ฒŒ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ผ์ดํ”„์‚ฌ์ดํด์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (ํ”„๋กœ์ ํŠธ๋ฅผ ๋นŒ๋“œํ•˜๊ฑฐ๋‚˜ ๋ฐฐํฌํ•  ๋•Œ ์–ด๋–ค ๋‹จ๊ณ„๋ฅผ ๊ฑฐ์น ์ง€ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค) 

โ–ท gradlew.bat clean test

  • gradlew.bat clean test : Gradle ๋นŒ๋“œ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ๋ฅผ ์ •๋ฆฌ(clean)ํ•˜๊ณ  ํ…Œ์ŠคํŠธ(test)๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ช…๋ น์–ด

gradlew.bat : Gradle Wrapper ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ช…๋ น์–ด

*Wrapper : Gradle์„ ๋กœ์ปฌ์— ์„ค์น˜ํ•˜์ง€ ์•Š๊ณ , Gradle ๋ฒ„์ „์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š๊ณ , Gradle ๋นŒ๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์—ญํ• .

*์Šคํฌ๋ฆฝํŠธ : ์—ฐ๊ทน์—์„œ ๋ฐฐ์šฐ๊ฐ€ ์–ด๋–ป๊ฒŒ ํ–‰๋™ํ•  ์ง€๋ฅผ ์ง€์‹œํ•˜๋Š” ๊ฒƒ์„ ์Šคํฌ๋ฆฝํŠธ๋ผ ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ, ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์–ด๋–ป๊ฒŒ ์‹คํ–‰ํ•  ์ง€ ์ง€์‹œํ•˜๊ณ  ์ œ์–ดํ•˜๋Š” ๊ฒƒ

 

clean : ์ด์ „ ๋นŒ๋“œ์—์„œ ์ƒ์„ฑ๋œ ํŒŒ์ผ ๋ฐ ๋นŒ๋“œ ๊ฒฐ๊ณผ๋ฌผ์„ ์ œ๊ฑฐํ•˜๊ณ  ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์ดˆ๊ธฐ ์ƒํƒœ๋กœ ๋˜๋Œ๋ฆผ. ์ด๋ฅผ ํ†ตํ•ด ๋นŒ๋“œ์—์„œ ์ด์ „ ๊ฒฐ๊ณผ์˜ ์˜ํ–ฅ์„ ์ œ๊ฑฐํ•˜๊ณ  ๊นจ๋—ํ•œ ์ƒํƒœ์—์„œ ์ƒˆ๋กœ์šด ๋นŒ๋“œ๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Œ.

 

test : ํ”„๋กœ์ ํŠธ์˜ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ปดํŒŒ์ผํ•˜๊ณ  ์‹คํ–‰ํ•˜์—ฌ ์ฝ”๋“œ์˜ ๋™์ž‘์„ ํ™•์ธํ•˜๊ณ  ์œ ์ง€ ๊ด€๋ฆฌ๋ฅผ ์ˆ˜ํ–‰

โ–ท add . (add -A)

ํ”„๋ฆฌ์ฝ”์Šค์—์„œ๋Š” ๊ธฐ๋Šฅ ๋‹จ์œ„๋กœ ์ปค๋ฐ‹์„ ํ•˜๋ผ๋Š” ์š”๊ตฌ์‚ฌํ•ญ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋ณ€๊ฒฝ๋œ ์ฝ”๋“œ๋“ค์„ ํ•œ ๋ฒˆ์— ์ปค๋ฐ‹ํ•˜๋Š” 'add .' ์™€ add -A๋Š” ์ž˜ ์“ฐ์ด์ง€ ์•Š์„ ๊ฒƒ์ด๋ผ ์ƒ๊ฐ๋“ญ๋‹ˆ๋‹ค.

 

๊ฐœ์ธ์ ์œผ๋กœ ์ธํ…”๋ฆฌ์ œ์ด์˜ ์ปค๋ฐ‹ ๊ธฐ๋Šฅ์„ ์ด์šฉํ•˜์‹œ๋Š” ๊ฒƒ์„ ์ถ”์ฒœ๋“œ๋ฆฝ๋‹ˆ๋‹ค!!

โ–ท commit

[commit ์„ค๋ช…]

commit์€ '๋˜์ง€๋‹ค, ๋ณด๋‚ด๋ฒ„๋ฆฌ๋‹ค' ๋ž€ ๋œป์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•  ๋•Œ์™€ ๊ฐ™์ด ์ž‘์—…ํ•œ ๋‚ด์šฉ์„ ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ๊ธฐ๋ก์œผ๋กœ ๋‚จ๊ธฐ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

โžก๏ธ์ปค๋ฐ‹ ๋ฐฉ๋ฒ•์œผ๋กœ ํ„ฐ๋ฏธ๋„์„ ์ด์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ์ธํ…”๋ฆฌ์ œ์ด๋ฅผ ์ด์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค. 

1. ํ„ฐ๋ฏธ๋„์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฉ”์‹œ์ง€์™€ ๋ช…๋ น์–ด๋กœ ์ปค๋ฐ‹์„ ํ•ฉ๋‹ˆ๋‹ค.

git commit -m "ํฐ ๋”ฐ์˜ดํ‘œ ์•ˆ์—๋Š” ์ปค๋ฐ‹๋ฉ”์‹œ์ง€๊ฐ€ ๋“ค์–ด๊ฐˆ ๊ณต๊ฐ„"

 

2. ์ธํ…”๋ฆฌ์ œ์ด์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ปค๋ฐ‹์„ ํ•ฉ๋‹ˆ๋‹ค.

(๋‹จ, ํ”„๋กœ์ ํŠธ๊ฐ€ ๊นƒ๊ณผ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๊ณ , ์ธํ…”๋ฆฌ์ œ์ด๋„ ๊นƒ๊ณผ ์—ฐ๋™๋˜์–ด์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์—ฐ๋™ ๋ฐฉ๋ฒ•์€ ์ด ๋งํฌ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”~)

์ธํ…”๋ฆฌ์ œ์ด์—์„œ ์ปค๋ฐ‹ํ•˜๋Š” ๋ชจ์Šต

๋ณ€๊ฒฝ๋œ ํŒŒ์ผ๋“ค ์ค‘ ์ปค๋ฐ‹ํ•˜๊ณ  ์‹ถ์€ ํŒŒ์ผ์„ Changes์—์„œ ์ฒดํฌํ•˜๊ณ , Amend์— ๋ฉ”์‹œ์ง€๋ฅผ ๋‚จ๊ฒจ์„œ commit ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๋˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

[commit ๋ฉ”์‹œ์ง€ ์„ค๋ช…]

์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋Š” docs, feat, refactor์™€ ๊ฐ™์€ <type>๊ณผ์— ์ž‘์—…ํ•œ ๋‚ด์šฉ์— ํ•ด๋‹นํ•˜๋Š” <body>๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋จผ์ € <type> ์€ ํ•ด๋‹น ์ปค๋ฐ‹์˜ ํŠน์ง•์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

- feat : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ ํ–ˆ์„ ๋•Œ์˜ ์ปค๋ฐ‹

- docs : ๋ฌธ์„œ ์ˆ˜์ •์— ๋Œ€ํ•œ ์ปค๋ฐ‹

- test : ํ…Œ์ŠคํŠธ ์ฝ”๋“œ์— ๋Œ€ํ•œ ์ปค๋ฐ‹

- refactor : ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง์— ๋Œ€ํ•œ ์ปค๋ฐ‹

 

<body>๋Š” ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€์˜ ๋ณธ๋ฌธ์œผ๋กœ <type>์— ๋Œ€ํ•œ ํŠน์ง•์„ ์ข€ ๋” ์ƒ์„ธํžˆ ์ ์Šต๋‹ˆ๋‹ค.

[์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋ฅผ ์ž˜ํ•œ ์˜ˆ์‹œ] ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๊ฐ€ ๊นƒํ—ˆ๋ธŒ์— ๋ฐ˜์˜๋œ ์‚ฌ์ง„

โ—๋กœ์ปฌ(IDE๋‚˜ ํ„ฐ๋ฏธ๋„)์—์„œ commit ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๋ฉด ์›๊ฒฉ ์ €์žฅ์†Œ์ธ ๊นƒํ—ˆ๋ธŒ์—๋Š” ๋ฐ˜์˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์œ„ ์‚ฌ์ง„์ฒ˜๋Ÿผ ๊นƒํ—ˆ๋ธŒ์— ๋ฐ˜์˜์ด ๋˜๋ ค๋ฉด push๋ฅผ ์ถ”๊ฐ€์ ์œผ๋กœ ํ•ด์ค˜์•ผ ํ•ฉ๋‹ˆ๋‹ค.

โ–ท push

์›๊ฒฉ ์ €์žฅ์†Œ์ธ ๊นƒํ—ˆ๋ธŒ์— ์ปค๋ฐ‹ํ•œ ๋‚ด์šฉ๋“ค์„ ๋ฐ˜์˜ํ•˜๊ธฐ ์œ„ํ•œ ๋ช…๋ น์–ด ์ž…๋‹ˆ๋‹ค.

git push origin [๋ธŒ๋žœ์น˜์ด๋ฆ„]

โ–ท Pull Request

์ž์‹ ์˜ ๋ธŒ๋žœ์น˜์—์„œ ์ž‘์—…ํ•œ ์ฝ”๋“œ๋ฅผ ์šฐ์•„ํ•œ ์ฝ”์Šค ๊นƒํ—ˆ๋ธŒ์— ๋ฐ˜์˜ํ•˜๊ธฐ ์œ„ํ•œ ์ž‘์—…์ž…๋‹ˆ๋‹ค.

 

โœ…์ง€๊ธˆ๊นŒ์ง€์˜ ๋‚ด์šฉ์„ ์ง์ ‘ ์—ฐ์Šตํ•˜๊ณ  ์‹ถ์œผ์‹œ๋ฉด ์ด ์˜์ƒ ์ฐธ๊ณ ํ•˜์…”์„œ ์ง„ํ–‰ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค!

๐Ÿ•ถ๏ธ[ReadMe.md ๋ฌธ์„œ]

โ–ท ์ธํ…”๋ฆฌ์ œ์ด์—์„œ README.md ์ƒ์„ฑํ•˜๊ธฐ

[README.md๋Š” ํ”„๋ฆฌ์ฝ”์Šค์—์„œ ์š”๊ตฌํ•˜๋Š” ๊ธฐ๋Šฅ ๋ชฉ๋ก์„ ์ž‘์„ฑํ•  ๋•Œ ์“ฐ์ž…๋‹ˆ๋‹ค]

 

1. ํ”„๋กœ์ ํŠธ ์ฐฝ์—์„œ ๋งˆํฌ๋‹ค์šด ํŒŒ์ผ์„ ๋งŒ๋“œ๋ ค๋Š” ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์„ ํƒํ•ด์„œ ๋งˆ์šฐ์Šค ์šฐํด๋ฆญํ•˜๊ธฐ

2. New์˜ File์„ ํด๋ฆญ

docsํด๋”์— README.md๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ชจ์Šต

3. ํŒŒ์ผ ์ด๋ฆ„์— .md ๋˜๋Š” .markdown ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฆ„ ์„ค์ •

.md ํ™•์žฅ์ž๋ฅผ ๋ถ™์—ฌ ์ž‘์„ฑํ•˜๋Š” ๋ชจ์Šต

4. docsํด๋”์— ReadMe.md๊ฐ€ ์ƒ์„ฑ๋œ ๋ชจ์Šต

docs์— ๊ธฐ๋Šฅ ๋ชฉ๋ก์„ ์ž‘์„ฑํ•  ReadMe๊ฐ€ ์ƒ์„ฑ๋œ ๋ชจ์Šต

โ–ท README.md ์ž‘์„ฑํ•˜๊ธฐ

[์ž‘์„ฑ๋ฒ•]

# : ์ œ๋ชฉ, ๋ถ€์ œ๋ชฉ ์ž‘์„ฑ ( #์ด ๋งŽ์•„์งˆ์ˆ˜๋ก ๊ธ€์”จ ํฌ๊ธฐ๊ฐ€ ์ค„์–ด๋“ฌ)

** : ๊ตต์€ ๊ธ€์”จ๋กœ ๊ฐ•์กฐ

- : ๊ธ€๋จธ๋ฆฌ ์ƒ์„ฑ

 

ex 1) ๋ณ€๊ฒฝ ์ „ ๋งˆํฌ๋‹ค์šด์œผ๋กœ ์ž‘์„ฑํ•œ ๋ฌธ์„œ

๋ณ€๊ฒฝ ์ „

ex 2) ๋ณ€๊ฒฝ ํ›„ ์™„์„ฑ๋œ ๋ชจ์Šต

๋ณ€๊ฒฝ ํ›„

โœ…์ธํ…”๋ฆฌ์ œ์ด ํƒญ์นธ์˜ ์˜ค๋ฅธ์ชฝ์— ๋ณด๋ฉด Editor and Preview๋ฅผ ๋ˆ„๋ฅด๋ฉด ๋ณ€๊ฒฝ ์ „๊ณผ ํ›„๋ฅผ ๋™์‹œ์— ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ˜ ๋งˆ์น˜๋ฉฐ

๋น„์ „๊ณต์ž๋ถ„๋“ค์€ ์ €์ฒ˜๋Ÿผ ์ •๋ง ๋ง‰๋ง‰ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๊นƒํ—™ ์‚ฌ์šฉ ์šฉ๋„๋ถ€ํ„ฐ, ์ฑ…์— ์žˆ๋Š” ์˜ˆ์ œ ์ฝ”๋“œ๋“ค์„ ๋”ฐ๋ผ์น˜๋Š” ์šฉ๋„์˜€๋˜ IDE์˜ ๋‹ค์–‘ํ•œ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•๊นŒ์ง€ ํ”„๋ฆฌ์ฝ”์Šค๋ฅผ ์‹œ์ž‘ํ•˜๊ธฐ ์ „๋ถ€ํ„ฐ ์ƒˆ๋กœ ํ•™์Šตํ•  ๋‚ด์šฉ์ด ๋งŽ์„ ๊ฑฐ๋ผ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ด ์–ด๋ ค์›€์„ ์กฐ๊ธˆ ๋œ์–ด๋“œ๋ฆฌ๊ณ ์ž ํ•™์Šตํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•  ๊ฒธ ๊ธ€์„ ํฌ์ŠคํŒ… ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฐœ์ธ์ ์œผ๋กœ๋Š” ์ง์ ‘ ์ฐพ์•„๋ณด์‹œ๋Š” ๊ฒƒ์ด ์ œ๊ฐ€ ์ •๋ฆฌํ•œ ๊ธ€์— ์žˆ๋Š” ๋‚ด์šฉ๋ณด๋‹ค ํ›จ์”ฌ ๋” ๋งŽ์€ ๊ฒƒ์„ ์•Œ๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ์— ์ œ ๊ธ€์€ ๋„์›€์šฉ์œผ๋กœ ์“ฐ์‹œ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค!