[Mac] IntelliJ + Git, Github ์‚ฌ์šฉ

๊ฐ€๋งŒํžˆ์žˆ์œผ์„ธ์š”ยท2022๋…„ 8์›” 14์ผ
3

- [Environment]

๋ชฉ๋ก ๋ณด๊ธฐ
2/2

๐Ÿ“ 0. ์‹œ์ž‘

๐Ÿ“Œ ๋„์ž…

ํšŒ์‚ฌ์—์„œ๋Š” Eclipse๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ๋งˆ์Œ์— ์•ˆ๋“œ๋Š”๊ฒŒ ๋งŽ์•„์„œ ๊ฐœ์ธ ๊ฐœ๋ฐœ์‹œ์—๋Š” IntelliJ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ํ™˜๊ฒฝ์„ค์ •์— ๊ด€ํ•œ ๊ธ€์€ ๋งค์šฐ ๋งŽ์ง€๋งŒ ์ •ํ™•ํ•˜์ง€ ์•Š์•„์„œ ์—ฌ๋Ÿฌ๊ธ€์„ ์ผœ๋†“๊ณ  ๋น„๊ตํ•˜๋ฉด์„œ ํ™˜๊ฒฝ์„ค์ •์„ ํ•˜๊ณค ํ•˜๋Š”๋ฐ, ๋งค๋ฒˆ ์‹œ๊ฐ„์ด ๋งŽ์ด ๋“ค์–ด ์ •๋ฆฌํ•ด๋†“์œผ๋ ค๊ณ  ํ•œ๋‹ค.

๐Ÿ“Œ ๋‘๊ฐ€์ง€๊ฐ€ ๋จผ์ € ์„ค์น˜๋˜์–ด ์žˆ์–ด์•ผํ•œ๋‹ค.

(1) IntelliJ : IntelliJ๊ฐ€ ์„ค์น˜๋˜์ง€ ์•Š์•˜๋‹ค๋ฉด ๐Ÿ‘‰ IntelliJ ์„ค์น˜ํ•˜๊ธฐ

(2) Git : Git์ด ์„ค์น˜๋˜์ง€ ์•Š์•˜๋‹ค๋ฉด ๐Ÿ‘‰ Git ์„ค์น˜ํ•˜๊ธฐ

์„ค์น˜๋˜์–ด์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ
git --version

๐Ÿ“Œ Git๊ณผ Github

์™œ ๋‘๊ฐœ ๋‹ค ์—ฐ๋™ํ•ด์•ผ ํ•˜๋Š”๊ฑธ๊นŒ.
Git๊ณผ Github๋Š” ๋น„์Šทํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ๊ฐœ๋…์ด๋‹ค.

  • Git : ๋ฒ„์ „๊ด€๋ฆฌ์‹œ์Šคํ…œ(VCS : Version Control System)์œผ๋กœ ๋กœ์ปฌ์ €์žฅ์†Œ(Local Repository)์—์„œ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ถ”์ , ๊ฐ์ง€ํ•˜์—ฌ ์ˆ˜์ •์— ๋”ฐ๋ฅธ ๋ฒ„์ „์„ ๊ด€๋ฆฌํ•ด์ค€๋‹ค.
  • Github : Git ๊ธฐ๋ฐ˜์˜ ์›น ํ˜ธ์ŠคํŒ… ์„œ๋น„์Šค์ด๋‹ค. ํด๋ผ์šฐ๋“œ์™€ ๊ฐ™์€ ์›๊ฒฉ ์ €์žฅ์†Œ(Remote Repository)๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค. ๋กœ์นผ์ €์žฅ์†Œ์—์„œ ๊ด€๋ฆฌํ•˜๋˜ ๊ฒƒ์„ ์›๊ฒฉ์ €์žฅ์†Œ์—์„œ ๊ด€๋ฆฌํ•˜์—ฌ ์–ธ์ œ ์–ด๋””์„œ๋‚˜ ์ธํ„ฐ๋„ท๋งŒ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋‹ค๋ฉด ์—ฐ๊ฒฐํ•ด์„œ ์‚ฌ์šฉํ•˜๊ณ , ๋‹ค๋ฅธ์‚ฌ๋žŒ๊ณผ ๊ณต์œ ํ•˜์—ฌ ๋ฒ„์ „๊ด€๋ฆฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋Š”๊ฒƒ์ด๋‹ค.

Git์œผ๋กœ ๋ฒ„์ „๊ด€๋ฆฌ๋ฅผ ํ•˜๋ฉด์„œ ,
Github๋กœ ์›๊ฒฉ์ €์žฅ์†Œ์— ์ €์žฅํ•˜์—ฌ ๊ณต์œ ํ•˜๋ฉฐ ์‚ฌ์šฉํ•˜๋Š”๊ฒƒ.
๋กœ์ปฌ์ €์žฅ์†Œ์—์„œ๋งŒ ๋ฒ„์ „๊ด€๋ฆฌ๋ฅผ ํ•˜๋ ค๋ฉด Git๋งŒ ์‚ฌ์šฉํ•ด๋„ ์ƒ๊ด€์—†๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ์›๊ฒฉ์ €์žฅ์†Œ์—์„œ ๋ฒ„์ „๊ด€๋ฆฌ๋ฅผ ํ•˜๋ ค๋ฉด Git๋„, Github๋„ ์—ฐ๋™ํ•ด์•ผํ•œ๋‹ค.

๐Ÿ“ 1. Git repository ์—ฐ๋™

  1. Git ์„ค์น˜.
    Git์ด ์„ค์น˜๋˜์–ด ์žˆ๋‹ค๋ฉด, IntelliJ IDEA๋Š” ์ž๋™์œผ๋กœ ๊ฐ์ง€ํ•˜๋Š”๋ฐ
    ์„ค์น˜๋˜์–ด์žˆ์ง€ ์•Š๋‹ค๋ฉด ๋‹ค์šด๋กœ๋“œ๋ฅผ ํ•ด์•ผํ•œ๋‹ค๊ณ  ํ•œ๋‹ค.
    ๋‚˜๋Š” ์ด๋ฏธ ์„ค์น˜๋˜์–ด ์žˆ์–ด์„œ.. ์„ค์น˜๊ณผ์ •์ธ ๊ธฐํšŒ๊ฐ€ ๋˜๋ฉด ํฌ์ŠคํŠธ..

  2. Git ์„ค์ •
    Command + , โžก๏ธ Version Control โžก๏ธ Git โžก๏ธ Path to Git excutable
    Git์ด ์„ค์น˜๋˜์–ด ์žˆ์–ด IntelliJ๊ฐ€ Auto-detectedํ•œ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
    ๊ทธ๋ ‡์ง€ ์•Š๋‹ค๋ฉด ์„ค์น˜ ํ›„ git์‹คํ–‰ ํŒŒ์ผ์„ ์„ ํƒํ•ด์ฃผ๋„๋ก ํ•œ๋‹ค.


    Test๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด git์˜ version์ด ํ‘œ์‹œ๋˜์–ด ์ž˜ ์—ฐ๋™๋จ์„ ๋ณด์—ฌ์ค€๋‹ค.
    ์œ„ ๊ณผ์ • ๊นŒ์ง€๊ฐ€ Git ์—ฐ๋™์˜ ๋์ด๋‹ค.
    ์ดํ›„ ๋กœ์ปฌ์—์„œ ๋ฒ„์ „๊ด€๋ฆฌ๋ฅผ ํ•˜๋ ค๋ฉด

  3. Local Repository์ƒ์„ฑ ํ›„ ๋ฒ„์ „๊ด€๋ฆฌํ•˜๊ธฐ(Git init)

  4. ๋กœ์ปฌ์ €์žฅ์†Œ์—์„œ ๋ฒ„์ „๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.


๐Ÿ“ 2. Github์—ฐ๋™

  1. Preference ์—ด๊ธฐ (Command + , )

  2. Version Control - Github ์„ ํƒ

  3. Add account ํด๋ฆญ
    Gihub์— ๋กœ๊ทธ์ธ ์—ฐ๋™ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๊ณ ,
    ํ† ํฐ์„ ํ†ตํ•ด ๋กœ๊ทธ์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค.

  4. ๋กœ๊ทธ์ธ ๋ฐฉ์‹ ์„ ํƒ
    ๊ฐœ์ธ์ด ํŽธํ•œ ๋ฐฉ๋ฒ•๋Œ€๋กœ ๋กœ๊ทธ์ธํ•˜๋ฉด ๋œ๋‹ค.
    ์—ฌ๊ธฐ์„œ๋Š” Log In via Github๋ฅผ ์„ ํƒํ•˜์—ฌ ์ง„ํ–‰ํ•˜์˜€๋‹ค.

  5. ์™„๋ฃŒ

์—ฌ๊ธฐ๊นŒ์ง€๊ฐ€ GitHub์™€์˜ ์—ฐ๋™์˜ ๋์ด๋‹ค.

  1. ์›๊ฒฉ์ €์žฅ์†Œ์™€ ์—ฐ๊ฒฐ
  • Git init๋œ Local Repository๋ฅผ Remote Repository๋กœ ๊ณต์œ ํ•˜์—ฌ ์ƒ์„ฑ
    Git -> GitHub -> Share Project on GitHub ์„ ํƒ.

    initial commit ํ•˜๋ฉด

    GitHub์— ์ƒ์„ฑ๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ํ˜น์€ ํ•ด๋‹น Proejct๋ฅผ ๋ฐ”๋กœ ์›๊ฒฉ์ €์žฅ์†Œ์— ์ƒ์„ฑํ•  ์ˆ˜๋„ ์žˆ๋‹ค.
    VCS -> Import into Version Control -> Share Project on Github ์„ ํƒ ํ›„ ์œ„์™€ ๊ฐ™์€ ๊ณผ์ •.

  • ์ด๋ฏธ ์กด์žฌํ•˜๋Š”(์ƒ์„ฑ๋˜์–ด์žˆ๋Š”) Remote Repository๋กœ๋ถ€ํ„ฐ Project๋ฅผ Check out (clone)๋ฐ›์•„ ์‚ฌ์šฉํ•˜๊ธฐ.
    VCS -> Get from Version Control ํ˜น์€ File -> New -> Project from Version Control ์„ ํƒ

    • Repository URL์„ ๋ฐ›์•„์„œ ์—ฐ๊ฒฐ.
    • ํ˜น์€ GitHub์—์„œ ์›ํ•˜๋Š” repository ์„ ํƒํ•˜์—ฌ ์—ฐ๊ฒฐ.

๐Ÿ“ 3. ๋

๊ทธ๋ƒฅ terminal์—์„œ ๋ช…๋ น์–ด๋กœ ์ปจํŠธ๋กคํ•˜๋Š”๊ฒŒ ๋” ์ต์ˆ™ํ•˜๊ณ  ์‰ฝ๋‹ค...

0๊ฐœ์˜ ๋Œ“๊ธ€