๐Ÿ’ป cs

GIT | GIT ์™„์ „ ์ •๋ณต (1)

c0zi 2023. 6. 15. 22:48

00. GIt, GITHUB


(1) GIT

  • ๋น ๋ฅธ ์†๋„, ๋‹จ์ˆœํ•œ ๊ตฌ์กฐ
  • ๋ถ„์‚ฐํ˜• ์ €์žฅ์†Œ๋ฅผ ์ง€์›ํ•˜๊ณ  ๋น„์„ ํ˜•์  ๊ฐœ๋ฐœ ๊ฐ€๋Šฅ
  • ๋™์‹œ์ž‘์—…์ด ๊ฐ€๋Šฅํ•ด ์ƒ์‚ฐ์„ฑ ์ฆ๊ฐ€
  • ์ˆ˜์ •๋‚ด์šฉ์„ commit ๋‹จ์œ„๋กœ ๊ด€๋ฆฌํ•˜๊ณ  ์›ํ•˜๋Š” ์‹œ์ ์œผ๋กœ checkout ๊ฐ€๋Šฅ
  • ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€๋ฅผ branch๋กœ ๊ฐœ๋ฐœํ•˜์—ฌ ์‹คํ—˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ merge๋ฅผ ํ†ตํ•ด ๋ฐ˜์˜

 

Git Process Flow and Command

 

โญ ๊นƒ ≠ ๊นƒํ—™ โญ

๊นƒ : ๋ฒ„์ „๊ด€๋ฆฌ ์†Œํ”„ํŠธ์›จ์–ด (VCS)
๊นƒํ—™: ๊นƒ์„ ํ† ๋Œ€๋กœ ํ•˜๋Š” ์›๊ฒฉ ์ €์žฅ์†Œ (cf. ๋น—๋ฒ„์ผ“,gitlab ...)

 

  • github repository : ์›๊ฒฉ ์ €์žฅ์†Œ
  • ์ž์‹ ์˜ ํ”„๋กœ์ ํŠธ ํด๋” : ๋กœ์ปฌ ์ €์žฅ์†Œ

 

01. Git ๊ธฐ๋ณธ ๋ช…๋ น์–ด


ํ˜„์žฌ ์ƒํƒœ ํ™•์ธ git status
์ „์ฒด ๋กœ๊ทธ ํ™•์ธ git log
git ์ €์žฅ์†Œ ์ƒ์„ฑํ•˜๊ธฐ git clone
์ €์žฅ์†Œ ๋ณต์ œ ๋ฐ ๋‹ค์šด๋กœ๋“œ git clone [http: ~]
์ €์žฅ์†Œ์— ์ฝ”๋“œ ์ถ”๊ฐ€ git add / git add*
์ปค๋ฐ‹์— ํŒŒ์ผ์˜ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ํ•œ๋ฒˆ์— ๋ชจ๋‘ ํฌํ•จ git add -A
์ปค๋ฐ‹ ์ƒ์„ฑ git commit -m "message"
๋ณ€๊ฒฝ ์‚ฌํ•ญ ์›๊ฒฉ ์„œ๋ฒ„ ์—…๋กœ๋“œ (push) git push origin master
์›๊ฒฉ ์ €์žฅ์†Œ์˜ ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ํ˜„์žฌ ๋””๋ ‰ํ† ๋ฆฌ๋กœ ๊ฐ€์ ธ์˜ค๊ธฐ (pull) git pull
๋ณ€๊ฒฝ ๋‚ด์šฉ์„ merge ํ•˜๊ธฐ ์ „์— ๋ฐ”๋€ ๋‚ด์šฉ ๋น„๊ต git diff [branch1] [branch2]

 

02. Git Branch ๊ด€๋ จ (์ƒ์„ฑ, branch ํ™•์ธ, push etc)


ํ•ด๋‹น ํด๋”์— git ํŒŒ์ผ ์ƒ์„ฑ git init
github ์ฃผ์†Œ์™€ ์—ฐ๊ฒฐ git remote add origin [github url]
๋ธŒ๋žœ์น˜ ์ƒ์„ฑ git branch [branch name]
ํ•ด๋‹น ๋ธŒ๋žœ์น˜๋กœ ์ด๋™ git chechout [branch name]
๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ํ•ด๋‹น ๋ธŒ๋žœ์น˜๋กœ ๋ฐ”๋กœ ์ด๋™ git branch -b [branch name]
์›ํ•˜๋Š” ๋ธŒ๋žœ์น˜๋กœ ์ด๋™ํ–ˆ๋Š”์ง€ ํ™•์ธ git branch
๋ชจ๋“  ๋ธŒ๋žœ์น˜ ํ™•์ธ git branch -a
ํŒŒ์ผ ๋ฐ ํด๋” add git add.
์ปค๋ฐ‹  git commit -m "commit message"
์›ํ•˜๋Š” ๋ธŒ๋žœ์น˜๋กœ pushํ•˜์—ฌ ์›๊ฒฉ ์„œ๋ฒ„์— ์ „์†ก git push origin [branch name]
๋ธŒ๋žœ์น˜ ์‚ญ์ œ git branch -d [branch name]
ํ•ด๋‹น ๋ธŒ๋žœ์น˜์— ๋‹ค๋ฅธ ๋ธŒ๋žœ์น˜ ์ˆ˜์ •์‚ฌํ•ญ ๋ณ‘ํ•ฉ git merge [branch2]

 
 

03. Git Config ์„ค์ • ๊ด€๋ จ


์ „์ฒด config ๋ฆฌ์ŠคํŠธ ํ™•์ธ git config --list
git config ์„ค์ • ๋ฐฉ๋ฒ• git config --global user.name "์ด๋ฆ„"
git config --global user.email "์ด๋ฉ”์ผ@email.com"
git config ์‚ญ์ œ git config --unset user.name
git config --unset user.email
global๋กœ ์„ค์ •๋œ ์‚ฌ์šฉ์ž ์‚ญ์ œ git config --unset --global user.name
git config --unset --global user.email

 

๐Ÿ“‹ ์ฐธ๊ณ ์ž๋ฃŒ


1. git Process Flow and Command - https://dev.to/mollynem/git-github--workflow-fundamentals-5496

2. git ๋ช…๋ น์–ด - https://eehoeskrap.tistory.com/666