๐คgit ์ด๋?
ํ์ ๊ด๋ฆฌ ๋๊ตฌ(Configuration Management Tool) ์ค ํ๋. ๊ทธ ์ค ๋ถ์ฐ ๋ฒ์ ๊ด๋ฆฌ ์์คํ ์ด๋ค. ์ค์ ์ง์ค ๋ฐฉ์์ธ SVN(SubVersion)๊ณผ ์ฐจ์ด๋ SVN์ ์ค์ ์๋ฒ์ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ฉด ๋ชจ๋ ์์ ์ด ์ค๋จ๋๋ค. ๊ฐ๋ฐ PC์ ์ ์ฅ์์ ๋ถ์ฐํ์ฌ ์ ์ฅ๋์ด ์๊ธฐ์ ์ค์ ์๋ฒ์ ์ฅ์ ๊ฐ ์์ด๋ ๋ก์ปฌ ์ ์ฅ์์ ์ปค๋ฐ์ ํ ์ ์๋ค. ํ์ ์ ์ํ ๋์์ ๋ ๋ค์ ์ ๋ก๋๋ฅผ ํ๋ฉด ๋๋ฏ๋ก ์ค์ ์ ์ฅ์์ ๋ณต์์ด ๊ฐ๋ฅํ๋ค.
๐งฉgit ๊ตฌ์กฐ
- working directory : untracked / tracked ํ์ผ, unmodified / modified ํ์ผ๋ก ๋๋จ. modified ํ์ผ๋ง staging area๋ก ์ฎ๊ฒจ๊ฐ ์ ์์. git add๋ฅผ ํตํด ํ์ผ์ tracked ํ์ผ๋ก ๋ง๋ค ์ ์๋ค. ex) ํด๋น ํด๋์ .txt ํ์ผ๋ง ์ถ๊ฐ git add *.txt
- addํ์ฌ ๋ค์ ๋จ๊ณ๋ก
- staging area : ์ด๊ณณ์ ์ฌ๋ผ์จ ํ์ผ์ด๋ผ๋ ์์ ๋๋ค๋ฉด modified ๋ผ๊ณ ๋์จ๋ค. ์ด ์์ ๋ ํ์ผ์ ๋ ์ฌ๋ฆด๋ผ๋ฉด git add (ํ์ผ๋ช ). staging area์์ ๋ด๋ฆด๊บผ๋ฉด git rm --cached (ํ์ผ๋ช )
- commitํ์ฌ ๋ค์ ๋จ๊ณ๋ก.
- local .git directory (history) --push--> <--pull-- remote .git directory (์๋ฒ ์ ์ฅ์์ ์ ์ฅ)
- commit์ staging area์ ์๋ ํ์ผ๋ค์ด local .git directory์ ์ฌ๋ผ๊ฐ๋ค. ๊ทธ๊ฒ์ ์๊ฒฉ git directory์ ์ฎ๊ฒจ ์ ์ฅํ๊ณ ์ถ๋ค๋ฉด push๋ฅผ ์ด์ฉํด ์ ์ฅํ๋ฉด ๋๊ณ , ๋ค๋ฅธ ์ปดํจํฐ์์ ์๊ฒฉ ์ ์ฅ์์ ์ ์ฅ๋ ๋ด ์์ ํ์ผ์ ๋ด๋ ค๋ฐ๊ณ ์ถ์ผ๋ฉด pull ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๋ค.
commit ๊ท๋ชจ๋ ๊ธฐ๋ฅ๋ณ๋ก ํ๋ ๊ฒ์ด ์ข์. ์ปค๋ฐ ๋ฉ์์ง๋ ํ์ฌํ ๋์ฌ๋ก, ๊ผญ ๋ฉ์์ง์ ์ ํ ๊ฒ๋ง ์์ ํด์ commit ํ๊ธฐ!
๐ฎ๋ช ๋ น์ด
๊ธฐ๋ณธ์ ์ผ๋ก git + ๋ช
๋ น์ด + -์ต์
ํ์์ผ๋ก ์ด๋ฃจ์ด์ง ex) git config --global
๋ ์์ธํ ์๊ณ ์ถ๋ค๋ฉด ๊ณต์ ๋ฌธ์ ใฑใฑ! ๐ Git ๊ณต์๋ฌธ์
- git --list : ๊น ์ค์ ํ์ธ๊ฐ๋ฅ
- git --global -e : ํฐ๋ฏธ๋์์ ์ค์ ํ์ธ
- git config --global core.editor "code" : vscode์์ ํ์ธ
- git init : ํด๋์์ ๊น ์ด๊ธฐํ
- git rm -rf .git : ๊น ์ ๊ฑฐ
- git status : ์ํํ์ธ
- git log : ๋ก๊ทธ ํ์ธ
- git diff : working directory์ ๋ณ๊ฒฝ๋ ๋ด์ฉํ์ธ ๊ฐ๋ฅ. staging area๊น์ง ํ์ธ์ git diff -staged or cached
- ๋ช ๋ น์ด ์ค์ด๊ธฐ ex) status๋ฅผ st๋ก ์ค์ด๊ธฐ git config --global alias.st status
- ๋ช ๋ น์ด ํ์ธํด๋ณด๊ธฐ ex) git config --h
๐์ด๊ธฐ ์ค์
--global์ ์ฌ์ฉํ๋ฉด ๋ฑ ํ ๋ฒ๋ง ํ๋ฉด ๋๊ณ , ํ๋ก์ ํธ๋ง๋ค ๋ค๋ฅธ ์ด๋ฆ๊ณผ ์ด๋ฉ์ผ ์ฃผ์๋ฅผ ์ฌ์ฉํ๊ณ ์ถ์ผ๋ฉด --global์ ๋นผ๊ณ ์ฌ์ฉํ๋ฉด ๋๋ค.
- git config --global user.name "์ด๋ฆ" : ์ด๋ฆ ์ค์ (๊นํ์์ด๋)
- git config --global user.email "์ด๋ฉ์ผ" : ์ด๋ฉ์ผ ์ค์ (๊นํ์ด๋ฉ์ผ)
- git remote add origin (๊นํ์ฃผ์) : git init ํ ์๊ฒฉ ์ ์ฅ์์ ์ฐ๊ฒฐ ex) https://github.com/Park-DongHo/WebPractice.git
- git config --global core.autocrlf true (window or mac input) : git ์ ์ฅ์ ์ ์ฅ์ ์ค๋ฐ๊ฟ ๋ฌธ์ ํด๊ฒฐ
reference
'์์' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
PyTorch ์ค์นํ๊ธฐ.(with CUDA, cuDNN) (0) | 2021.02.18 |
---|---|
Python ๊ฐ์ํ๊ฒฝ ๊ฐ์ ๋ฐ ์ฌ์ฉ๋ฒ (0) | 2021.02.15 |
ํ์ด์ฌ ์ค์นํ๊ธฐ! (feat. ์๋์ฝ๋ค) (0) | 2021.01.08 |
์ฒ์ ์์ํ๋ ๊ฐ๋ฐ ๋ธ๋ก๊ทธ... ์ด๋ค ๊ฑธ๋ก ์์ํด์ผ ํ ๊น? (0) | 2020.12.10 |