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

github

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์˜ ๋ชจ๋“  ๋ช…๋ น์–ด๋ฅผ ํ™•์ธ ๊ฐ€๋Šฅ

 

 

* git --version : ๋‚ด ์ปดํ“จํ„ฐ์— git์ด ์–ด๋–ค ๋ฒ„์ „์œผ๋กœ ์„ค์น˜๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธ

๋œ๊ฑด๊ฐ€?

 

* git config --list : ์„ค์ • ๋ฆฌ์ŠคํŠธ ํ™•์ธํ•˜๊ธฐ

* git config --global -e : git config๋ฅผ global๋กœ ์„ค์ •๋œ edit๋กœ ์—ด๊ธฐ

  • (์ด ๋•Œ edit ์ƒํƒœ์—์„œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ €์žฅํ•˜๊ณ  ๋‚˜๊ฐ€๊ณ  ์‹ถ๋‹ค๋ฉด :wq, ๊ทธ๋”ด๊ฑฐ ๋๊ณ  ์ €์žฅ ์—†์ด ์ข…๋ฃŒํ•˜๋ ค๋ฉด :q ๋ˆ„๋ฅด๊ณ  enter)

* code . : ํ…์ŠคํŠธ์—๋””ํ„ฐ(๋‚˜๋Š” ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค)๋กœ ์—ด์–ด๋ณด๊ธฐ (์•ˆ๋œ๋‹ค๋ฉด ctrl+shift+p๋ฅผ ๋ˆŒ๋Ÿฌ 'Shell Command:Install 'code' command in PATH' ์„ ํƒ

 

* ํŽธ์ง‘๊ธฐ๋ฅผ code๋กœ ์ง€์ •ํ•˜๊ณ  ํŽธ์ง‘๊ธฐ ์—ด๊ธฐ

Waiting for your editor to close the file... ํ„ฐ๋ฏธ๋„์ฟค ํŽธ์ง‘๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ ค์ฃผ๊ณ  ์žˆ์—ˆ๋ƒ๊ณ ... ใ„ทใ„ท

 

git config --global core.editor "code --wait"
git config --global -e

 

ํŽธ์ง‘๊ธฐ๋ฅผ ์ด์šฉํ•  ๋™์•ˆ์—๋Š” terminal์ด ๋‹ค๋ฅธ ๋ช…๋ น์–ด๋ฅผ ๋ฐ›์•„ ๋“ค์ด์ง€ ์•Š๋„๋ก ๊ธฐ๋‹ค๋ ค์ค€๋‹ค. ํŽธ์ง‘๊ธฐ๋ฅผ ์ข…๋ฃŒํ•ด์•ผ ๋‹ค์‹œ ํ™œ์„ฑํ™”

์ด ๋•Œ --wait์„ ๋นผ๋ฒ„๋ฆฌ๋ฉด ์—ด๋˜ ๋ง๋˜ ๊ทธ๋ƒฅ ์•ˆ๊ธฐ๋‹ค๋ ค์ฃผ๊ณ  ๋‹ค๋ฅธ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ณ„์† ํ™œ์„ฑํ™”๋ผ์žˆ์Œ

 

 

* ์‚ฌ์šฉ์ž ์„ค์ •

 

git config --global user.name "Hayeon"
git config --global user.email "idubusomuch@gmail.com"

# ์ •๋ณด ํ™•์ธ
git config user.name
git config user.email

 

* git config --global core.autocrlf true (mac์€ true๊ฐ€ ์•„๋‹ˆ๋ผ input)

  • ์šด์˜์ฒด์ œ๋งˆ๋‹ค editor์—์„œ ์ค„๋ฐ”๊ฟˆ์„ ํ•  ๋•Œ ๋“ค์–ด๊ฐ€๋Š” ๋ฌธ์ž์—ด์ด ๋‹ค๋ฅด๋‹ค.
  • - window : \r\n(carriage-return, line feed)
  • - mac : \n(line feed ๋งŒ)
  • Git respository๋ฅผ ๋‹ค์–‘ํ•œ ์šด์˜์ฒด์ œ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์ค„๋ฐ”๊ฟˆ ๋ฌธ์ž์—ด์ด ๋‹ฌ๋ผ์ ธ์„œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธธ ์ˆ˜ ์žˆ์Œ
  • => ์ด๋ฅผ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์†์„ฑ์ด autocrlf

 

  • + ์ถ”๊ฐ€ ์„ค์ •

 

 

* git init : ๊นƒ ์ดˆ๊ธฐํ™”

git ํด๋” ์•ˆ git ํด๋”๋Š” ์ˆจ๊ฒจ์ ธ ์žˆ์–ด์„œ ๊ทธ๋ƒฅ ls๊ฐ€ ์•„๋‹ˆ๋ผ ls -al๋กœ ๋ด์•ผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

์ดํ›„ explorer .git (๋‚˜๋Š” ์œˆ๋„์šฐ์ด๊ธฐ ๋•Œ๋ฌธ...)์„ ์ž…๋ ฅํ•˜๋ฉด ์ˆจ๊ฒจ์ ธ ์žˆ๋˜ git ํด๋”๊ฐ€ ๋“ฑ์žฅํ•œ๋‹ค.

์›๋ž˜ git ํด๋”์—๋Š” ๋ณด์ด์ง€ ์•Š๊ณ  ์ˆจ๊ฒจ์ ธ ์žˆ์Œ / ์•„๋ฌดํŠผ ์ด๋ ‡๊ฒŒ ๋“ค์–ด๊ฐ„ git ํด๋” ๋‚ด๋ถ€์—๋Š” git repository์— ์žˆ๋Š” ์—ฌ๋Ÿฌ ๋‚ด๋ถ€ ๊ตฌํ˜„์‚ฌํ•ญ๋“ค์ด ์žˆ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  ์œ„์—์„œ๋„ git init์„ ์ž…๋ ฅํ•˜๋‹ˆ๊นŒ ๊ฐ‘์ž๊ธฐ (master)๊ฐ€ ๋ถ™์—ˆ๋‹ค. ์ดˆ๊ธฐํ™”๋ฅผ ํ•˜๋ฉด master branch๊ฐ€ ์ƒ์„ฑ๋˜๋Š”๋ฐ ์ด๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ commitํ•ด์„œ ๋ฒ„์ „์„ ๊ด€๋ฆฌํ•˜๋Š”branch์ด๋‹ค. 

 

 

 

* rm -rf .git : git์„ ์‚ญ์ œ

 

์ด ํ›„ explorer .git์„ ์ž…๋ ฅํ•˜๋ฉด ํ„ฐ๋ฏธ๋„์ด ๊ทธ๊ฒŒ ๋ญ๋ƒ๋ฉด์„œ ๊ทธ๋ƒฅ documents ํด๋”๋ฅผ ์—ด์–ด์ค€๋‹ค.

 

 

* git status : git์˜ ์ƒํƒœ๋ฅผ ํ™•์ธ

git ์‚ญ์ œ ์ดํ›„์™€ ๋‹ค์‹œ git ์ดˆ๊ธฐํ™” ํ›„์˜ ๋ชจ์Šต

 

* git ๊ด€๋ จ ๋ช…๋ น์–ด์˜ ์ค„์ž„๋ง(๋‹จ์ถ•ํ‚ค?) ์ƒ์„ฑํ•˜๋Š” ์ฝ”๋“œ

git config --global alias.st status

์ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด git status๊ฐ€ ์•„๋‹Œ git st ๋ผ๊ณ  ์ณ๋„ ๋˜‘๊ฐ™์€ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜จ๋‹ค.

 

 

* git config --h : ๋ช…๋ น์–ด ํ™•์ธํ•˜๊ธฐ (๋ฌผ๋ก  ๊ณต์‹ ์‚ฌ์ดํŠธ์—์„œ๋„ ํ™•์ธ ๊ฐ€๋Šฅ)