๐ŸŽฏ ํ”„๋กœ์ ํŠธ ํ˜‘์—…๊ณผ ๋ฒ„์ „ ๊ด€๋ฆฌ๋ฅผ ๋•๋Š” Github๋ฅผ ์ตํ˜€ ์ฝ”๋“œ๋ฅผ ์˜ฌ๋ฆฌ๊ณ  ๋‚ด๋ ค๋ฐ›๋Š” git command๋ฅผ ๊ณต๋ถ€ํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ“™ Today I Learned

Github Repository

GitHub Repository๋Š” Git์œผ๋กœ ๊ด€๋ฆฌ๋˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์›๊ฒฉ์œผ๋กœ ์ €์žฅํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค.

  • ์ƒ์„ฑ ๊ณผ์ • : Github ๋กœ๊ทธ์ธ > Create a new repository > ์ด๋ฆ„ ๋ฐ ๊ณต๊ฐœ ์—ฌ๋ถ€ ๋“ฑ์„ ์„ค์ •ํ•˜์—ฌ ์ƒ์„ฑ

git command

Github์— ์ฝ”๋“œ ์˜ฌ๋ฆฌ๊ธฐ

  • git remote add ์›๊ฒฉ์ €์žฅ์†Œurl : ๋กœ์ปฌ ํ™˜๊ฒฝ๊ณผ ์›๊ฒฉ ์ €์žฅ์†Œ๋ฅผ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

  • git remote -v : ํ˜„์žฌ Git ํ”„๋กœ์ ํŠธ์— ์—ฐ๊ฒฐ๋œ ์›๊ฒฉ ์ €์žฅ์†Œ(remote repository)์™€ ํ•ด๋‹น URL ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๊ณ  ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. -v๋Š” verbose์˜ ์•ฝ์ž๋กœ, ์ƒ์„ธํ•œ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

  • git push ์›๊ฒฉ์ €์žฅ์†Œ๋ณ„์นญ ๋ธŒ๋žœ์น˜๋ช… : ์›๊ฒฉ ์ €์žฅ์†Œ์— ๋กœ์ปฌ์˜ ์ž‘์—… ๋‚ด์šฉ์„ ์—…๋กœ๋“œํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
    ex. git push origin main

    โ—๋ช…๋ น์–ด๊ฐ€ ์ž˜ ์ž‘๋™ํ•˜์ง€ ์•Š๊ณ  username, password๋ฅผ ์š”๊ตฌํ•œ๋‹ค๋ฉด?
    ์›ํ•˜๋Š” ํ•ญ๋ชฉ์„ ์„ ํƒํ•˜์—ฌ ๋ฐœํ–‰ํ•œ Token์„ password ๋Œ€์‹  ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    ๋ฐœํ–‰ ๊ฒฝ๋กœ : Github ํ”„๋กœํ•„ ์‚ฌ์ง„ > Settings > Developer settings > Personal access tokens > Tokens (classic)

    • โœ… GUI๋ฅผ ํ†ตํ•ด push ํ•˜๋Š” ๋ฐฉ๋ฒ•
      VSCode์™€ ๊ฐ™์€ ํˆด์—์„œ ์ œ๊ณตํ•˜๋Š” GUI ์˜ต์…˜์„ ํ†ตํ•ด ์‰ฝ๊ฒŒ pushํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    • push๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ์ž‘๋™๋œ Github ํ™”๋ฉด


Github์—์„œ ์ฝ”๋“œ ๋‚ด๋ ค๋ฐ›๊ธฐ

  • git clone ์›๊ฒฉ์ €์žฅ์†Œurl : Github์— ์˜ฌ๋ ค์ง„ ํ”„๋กœ์ ํŠธ๋ฅผ ๋กœ์ปฌ ํ™˜๊ฒฝ์— ๋‚ด๋ ค๋ฐ›์„ ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

    1. ๐Ÿ“ ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ํด๋” ์•ˆ์—์„œ git clone ํ•˜๋Š” ๊ฒฝ์šฐ
      ํ˜„์žฌ ์œ„์น˜ํ•œ ํด๋” ์•ˆ์— git clone์„ ํ•˜๋ฉด, ํ•ด๋‹น ์ €์žฅ์†Œ๊ฐ€ ํ•˜์œ„ ํด๋”๋กœ ๋ณต์‚ฌ๋ฉ๋‹ˆ๋‹ค.
      ๋”ฐ๋ผ์„œ ๋ณต์ œํ•œ ํ”„๋กœ์ ํŠธ ์•ˆ์—์„œ ์ž‘์—…ํ•˜๋ ค๋ฉด cd ํ”„๋กœ์ ํŠธ๋ช…์œผ๋กœ ํด๋”๋ฅผ ์ด๋™ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.


    2. ๐Ÿ†• ์ฒ˜์Œ๋ถ€ํ„ฐ git clone์œผ๋กœ ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒฝ์šฐ (VSCode์—์„œ ํด๋” ์—ด๊ธฐ)
      VSCode๋‚˜ ํ„ฐ๋ฏธ๋„์—์„œ git clone ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•ด ๋ฐ”๋กœ ํ”„๋กœ์ ํŠธ ํด๋” ์ž์ฒด๋ฅผ ๋งŒ๋“  ๊ฒฝ์šฐ์—๋Š”, ํด๋ก  ํ›„ ๋ณ„๋„๋กœ ์ด๋™ํ•  ํ•„์š” ์—†์ด ํ•ด๋‹น ํด๋”๊ฐ€ ํ”„๋กœ์ ํŠธ ๋ฃจํŠธ์ž…๋‹ˆ๋‹ค.

  • git pull ์›๊ฒฉ์ €์žฅ์†Œ๋ณ„์นญ ๋ธŒ๋žœ์น˜๋ช… : ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ๋กœ์ปฌ๋กœ ๊ฐ€์ ธ์˜ฌ ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
    ex. git pull origin main

  • git branch ๋ธŒ๋žœ์น˜๋ช… : ์ƒˆ ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

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


  • git checkout ๋ธŒ๋žœ์น˜๋ช… : ์ž‘์—…ํ•˜๊ณ  ์‹ถ์€ ๋ธŒ๋žœ์น˜๋กœ ์ด๋™ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

  • git branch : ํ˜„์žฌ ์ƒ์„ฑ๋œ ๋ธŒ๋žœ์น˜ ๋ชฉ๋ก์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ํ˜„์žฌ ์ž‘์—… ์ค‘์ธ ๋ธŒ๋žœ์น˜๋Š” *๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

  • git checkout - : ์ด์ „ ๋ธŒ๋žœ์น˜๋กœ ์ด๋™ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๐Ÿง ์˜ค๋Š˜์˜ ๋ฐœ๊ฒฌ

Personal Access Token์„ ํ™œ์šฉํ•˜์—ฌ Git ๋ช…๋ น์–ด ์‚ฌ์šฉ ์‹œ password ์ž…๋ ฅ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์•˜๋‹ค.


๐Ÿ–‹๏ธ ํ•œ ์ค„ ํšŒ๊ณ 

git ๋ช…๋ น์–ด๋ฅผ ๋‹จ์ˆœํžˆ ์•”๊ธฐ๋ฅผ ํ•ด์„œ ์‚ฌ์šฉํ–ˆ๋‹ค๋ฉด ์ด์ œ๋Š” ์–ด๋–ค ์˜๋ฏธ์ธ์ง€ ์•Œ๊ณ  ์‚ฌ์šฉํ•˜๋‹ˆ ๋” ์ดํ•ดํ•ด์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฌ์›Œ์ง„ ๋А๋‚Œ์ด๋‹ค.

profile
๐ŸŒฑ๊ฐœ๋ฐœ ๊ธฐ๋ก์žฅ

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