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

github

(6)
๊นƒ ์„ค์น˜ ๋ฐ ๊ธฐ๋ณธ์„ค์ • Git 2005๋…„ ๋ฆฌ๋ˆ„์Šค ํ† ๋ฅด๋ฐœ์Šค์— ์˜ํ•ด ๊ฐœ๋ฐœ๋œ ๋ถ„์‚ฐ ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(DVCS)์œผ๋กœ, ๊ณผ๊ฑฐ๋ถ€ํ„ฐ ํ˜„์žฌ๊นŒ์ง€์˜ ์ž‘์—…๊ณผ ๋ณ€๊ฒฝ์ ์„ ๊ธฐ๋กํ•˜๊ณ  ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. ์ปดํ“จํ„ฐ ํŒŒ์ผ์˜ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ถ”์ ํ•˜๊ฑฐ๋‚˜ ํŠน์ • ์‹œ์ ์˜ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์œผ๋กœ ๋˜๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ๋‹ค.  1. mac์—์„œ ์„ค์น˜ git์˜ ๊ณต์‹ ํ™ˆํŽ˜์ด์ง€์—์„œ download for Mac์„ ๋ˆ„๋ฅด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ํŽ˜์ด์ง€๋กœ ์ด๋™๋œ๋‹ค  git์„ ์„ค์น˜ํ•˜๋Š”๋ฐ์—๋Š” ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ•์ด ์žˆ์ง€๋งŒ homebrew๋กœ ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ–ˆ๋‹ค.๋ฌผ๋ก  ๊ทธ๋Ÿฌ๋ ค๋ฉด homebrew๋ฅผ ๋˜ ์„ค์น˜ํ•ด์•ผํ•œ๋‹ค... (์ด๋ฏธ ์„ค์น˜ํ–ˆ๋‹ค๋ฉด ํŒจ์Šคํ•ด๋„ ์ข‹๋‹ค)  + homebrew ์„ค์น˜homebrew ๊ณต์‹ ์‚ฌ์ดํŠธ์— ๊ฐ€๋ฉด ๋˜ ๋‹ค์–‘ํ•œ... ๊ฒŒ ๋งŽ์ด์žˆ์–ด์„œ ๋‹นํ™ฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ๋งจ ์œ„์— Install Homebrew ๋ฐ”๋กœ ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ๋ณต์‚ฌํ•ด์ฃผ๊ณ  ํ„ฐ๋ฏธ..
3-2. ๊ธฐ๋ณธ ๋ช…๋ น์–ด * ์†Œ์ŠคํŠธ๋ฆฌ๋กœ ์ปค๋ฐ‹ํ•˜๊ธฐ https://academy.dream-coding.com/courses/take/git/lessons/17954796-3-8 ์•„์ง์€ ์†Œ์ŠคํŠธ๋ฆฌ๋ฅผ ์“ฐ์ง€ ์•Š์•„์„œ,,, ์ผ๋‹จ์€ ํŒจ์Šค * ํŒŒ์ผ ๋ณ€๊ฒฝ ์‹œ ์œ ์šฉํŒ - ํŒŒ์ผ ์‚ญ์ œ rm ์„ ์ด์šฉํ•ด ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๋ฉด, c.txt๋Š” staging area์— ํฌํ•จ์ด ๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฅผ commit ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” c.txt๋ฅผ git add -> commit ํ•˜๊ฑฐ๋‚˜ git commit -a ๋กœ ํ•ด์ค˜์•ผ ํ•œ๋‹ค. ํ•˜์ง€๋งŒ git์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ช…๋ น์–ด๋กœ ๊ฐ„ํŽธํ•˜๊ฒŒ staging area์— ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค. git์—์„œ ์ œ๊ณตํ•˜๋Š” rm์„ ์‚ฌ์šฉํ•˜๋ฉด ์ž๋™์œผ๋กœ Staging area์— ํฌํ•จ์ด ๋˜์–ด์žˆ๋‹ค. git rm ํŒŒ์ผ - ํŒŒ์ผ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ํŒŒ์ผ์˜ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•  ๋•Œ๋„ ..
3-1. ๊ธฐ๋ณธ ๋ช…๋ น์–ด * Git์˜ Workflow working directory : ํ”„๋กœ์ ํŠธ์˜ ํŒŒ์ผ์„ ์ˆ˜์ •, ์ž‘์—…ํ•˜๋Š” ๊ณณ (tracked/untracked) Git์ด ํŠธ๋ž˜ํ‚นํ•˜๊ณ  ์žˆ๋Š” ํŒŒ์ผ(์ด๋ฏธ ์•Œ๋˜ ํŒŒ์ผ)์ด๋ฉด tracked ์ง€๊ธˆ ์‹œ์ ์—์„œ ์ˆ˜์ •ํ•จ : modified => modified๋งŒ staging area๋กœ ์ด๋™ ์ด์ „ ๋ฒ„์ „๊ณผ ๋น„๊ตํ•ด์„œ ์ˆ˜์ •์ด ๋˜์ง€ ์•Š์•˜์Œ : unmodified ์ƒˆ ํŒŒ์ผ์ด๊ฑฐ๋‚˜ ๊ธฐ์กด ํ”„๋กœ์ ํŠธ์—์„œ Git์„ ์ดˆ๊ธฐํ™”ํ•˜๋ฉด GIt์ด ํŒŒ์ผ์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์•„์˜ˆ ์—†์Œ -> ํŠธ๋ž˜ํ‚น๋˜์ง€ ์•Š์•˜์œผ๋ฏ€๋กœ untracked staging area : ์–ด๋А ์ •๋„ ์ž‘์—…ํ•˜๋ฉด ๋ฒ„์ „ ํžˆ์Šคํ† ๋ฆฌ์— ์ €์žฅํ•  ์ค€๋น„๊ฐ€ ๋œ ํŒŒ์ผ์„ ์˜ฎ๊ฒจ๋†“๋Š” ๊ณณ .git directory : staging area์—์„œ commit์„ ํ•˜๋ฉด Git ๋ฒ„์ „์˜ ํžˆ์Šคํ† ๋ฆฌ๋ฅผ ์ €์žฅํ•˜๊ณ  ์žˆ..
2. ์…‹์—…ํ•˜๊ธฐ ๋”๋ณด๊ธฐ ๋…ธ์…˜ ๋ณด๋ฉด์„œ ์ฐธ๊ณ ํ•˜๊ธฐ https://www.notion.so/Git-Cheat-Sheet-54ac9c437bd94185af8171d785c225f9 ๋‚˜๋Š” ์œˆ๋„์šฐ์ด๋ฏ€๋กœ cmder์„ ์„ค์น˜ํ–ˆ๋‹ค. (https://cmder.net/ ์—์„œ Download Full๋กœ) ๊ทผ๋ฐ git์ด ์„ค์น˜๋˜์–ด์žˆ๋‚˜ ๋ดค๋Š”๋ฐ ์•ˆ๋˜์–ด์žˆ๊ธธ๋ž˜ git์„ ์„ค์น˜ํ–ˆ๋‹ค.. (https://copycoding.tistory.com/65 ์ฐธ๊ณ ) * git์˜ ๋ช…๋ น์–ด๋“ค ๊ฐ„๋‹จํ•˜๊ฒŒ git ๋ช…๋ น์–ด -์˜ต์…˜์˜ ํ˜•์‹์œผ๋กœ ๋˜์–ด ์žˆ์Œ ๊ฐ™์€ ๋ช…๋ น์–ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋”๋ผ๋„ ์–ด๋–ค -option ์ด๋ƒ์— ๋”ฐ๋ผ ๋‹ค๋ฆ„ ex) git config : git์—์„œ configuration์— ๊ด€๋ จ๋œ ๋ช…๋ น์–ด๋ฅผ ์ˆ˜ํ–‰ ๊ฐ€๋Šฅ https://git-scm.com/docs git์˜ ๋ชจ๋“  ๋ช…๋ น์–ด๋ฅผ ํ™•์ธ ๊ฐ€..
1-2 ๋ฆฌ๋ˆ…์Šค ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด https://www.youtube.com/watch?v=EL6AQl-e3AQ ์œ„ ๊ฐ•์˜๋ฅผ ๋“ค์œผ๋ฉฐ ๋ถ€์กฑํ•œ ๋ถ€๋ถ„์€ ๊ตฌ๊ธ€๋ง์„ ํ†ตํ•ด ๋Œ€์ถฉ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•œ ํฌ์ŠคํŒ… - ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด์˜ ํ•„์š”์„ฑ ์›น๊ฐœ๋ฐœ : npm init, npm install, yarn run ๋“ฑ์˜ ์ปค๋งจ๋“œ๋ฅผ ์ž์ฃผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ ๋ฐฑ์—”๋“œ : ํ„ฐ๋ฏธ๋„ ์œˆ๋„์šฐ๋ฅผ ์ด์šฉํ•ด ๋‹ค๋ฅธ ์›๊ฒฉ ์„œ๋ฒ„ ์ ‘์†, ๋ฌธ์ œ ์žˆ๋Š” ๋ฒ„๊ทธ๋ฅผ ๋””๋ฒ„๊น…, ์ž๋™ํ™”๋ฅผ ์œ„ํ•œ ์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ Git ์‚ฌ์šฉ : ํ„ฐ๋ฏธ๋„์„ ์ด์šฉํ•ด ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ - Shell(์‰˜) ์ปค๋„(Kernel)๊ณผ user์‚ฌ์ด์˜ ๋ช…๋ น์„ ํ•ด์„ํ•ด ์ „๋‹ฌํ•˜๋Š” ๋‹ค๋ฆฌ ์—ญํ•  ์ž์ฒด ๋‚ด์— ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ๋Šฅ์ด ์žˆ์–ด ์—ฌ๋Ÿฌ ๋ช…๋ น์„ ์ด์šฉํ•ด ์‰˜ ํ”„๋กœ๊ทธ๋žจ(์‰˜ ์Šคํฌ๋ฆฝํŠธ)๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ ์ดˆ๊ธฐํ™” ํŒŒ์ผ ๊ธฐ๋Šฅ์„ ์ด์šฉํ•ด ์‚ฌ์šฉ์ž ํ™˜๊ฒฝ ์„ค์ • ๊ฐ€๋Šฅ ์‰˜์˜ ํ™˜๊ฒฝ๋ณ€์ˆ˜๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š” (..
1-1. Git https://academy.dream-coding.com/enrollments# - Git VCS(Version Control System) ์ค‘ ํ•˜๋‚˜ ํŒŒ์ผ์˜ ๋ฒ„์ „์„ ํŽธ๋ฆฌํ•˜๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ๋„๊ตฌ๋กœ. ์ž‘์—…ํ•˜๊ณ  ์žˆ๋Š” ํŒŒ์ผ๋“ค์„ ๊ฑฐ๋“ญํ•ด์„œ ๊ณ„์† ์ˆ˜์ •ํ•  ํ…๋ฐ, ์ด๋ฅผ ์›ํ•˜๋Š” ์ˆœ๊ฐ„์œผ๋กœ ๋‹ค์‹œ ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์คŒ ์ฝ”๋“œ ๋ฟ๋งŒ์ด ์•„๋‹ˆ๋ผ ๋…ธํŠธ txt ํŒŒ์ผ, ๊ทธ๋ž˜ํ”ฝ ํŒŒ์ผ, ๋ ˆ์ด์•„์›ƒ ํŒŒ์ผ ๋“ฑ๋„ ์ด์šฉํ•  ์ˆ˜ ์žˆ์Œ VSC์ค‘์—์„œ Distributed Version Control์—๋Š” git, mercurial, darcs ๋“ฑ์ด ํ•ด๋‹นํ•˜๋Š”๋ฐ ์„œ๋ฒ„์—๋„ ํžˆ์Šคํ† ๋ฆฌ์˜ ์ •๋ณด๊ฐ€ ์žˆ์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ชจ๋“  ๊ฐœ๋ฐœ์ž๋“ค์ด ๋™์ผํ•œ ํžˆ์Šคํ† ๋ฆฌ ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Œ => ์„œ๋ฒ„์— ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๊ฑฐ๋‚˜, ๋‹ค์šด์ด ๋˜๊ฑฐ๋‚˜, ์˜คํ”„๋ผ์ธ์ด ๋˜์–ด๋„ ์„œ๋กœ์˜ ์ •๋ณด๋ฅผ ์ด์šฉํ•ด ์„œ๋ฒ„๋ฅผ ..