- git ์ด๊ธฐ ์ค์ ๋ฐ ํ์ธ
- git ์๊ฒฉ ์ ์ฅ์๋ฅผ ๋ก์ปฌ ๋ธ๋์น์ ๋ณํฉํ์ฌ ์ฐ๊ฒฐ
- git ์๋ฒ์ ์ฌ๋ ค์ง ์๊ฒฉ ์ ์ฅ์ ๊ฐ์ ธ์ค๊ธฐ
- git ๋ณ๊ฒฝ๋ ์ฝ๋ ์ ๋ฐ์ดํธ
git ๋ช ๋ น์ด ํ๋ฒ์ ๋ณด๊ธฐ: git ๋ช ๋ น์ด ํ๋ฒ์ ๋ณด๊ธฐ
- git ๋๋ค์ ์ค์
git config --global user.name "(๋ณธ์ธ์ด ์ค์ ํ ๋๋ค์)"
- git ์ด๋ฉ์ผ ์ค์
git config --global user.email "(๋ณธ์ธ ์ด๋ฉ์ผ)"
- git ์ค์ ๋ ๋๋ค์ ํ์ธ
git config --global user.name
- git ์ค์ ๋ ์ด๋ฉ์ผ ํ์ธ
git config --global user.email
- git ๋ธ๋์น ๋ช ์ค์
git config --global init.defaultBranch main
- git์ ์ค์ ๋ ๋ชฉ๋ก ๋ณด๊ธฐ
- vi ์๋ํฐ์์ ๋๊ฐ๊ธฐ : Control + z
git config --listOR
git config -l
- ๋ด github์ ์ ์ ํ ๋งจ ์๋จ์ repositories ํด๋ฆญ
- ์๋จ ๋งจ ์ค๋ฅธ์ชฝ์ ์ด๋ก์ New ๋ฒํผ ํด๋ฆญ
- (์ ํ ์ฌํญ)README.md๋ฅผ ์์ฑ
- vscode or intellij๋ก ํด๋น ์์ค์ฝ๋ ํด๋๋ฅผ ์ด์๋ค๋ฉด
ํฐ๋ฏธ๋์ ์ด๋ฏธ ํด๋น ํด๋์ ์์นํด ์์ต๋๋ค.- iTerm2 OR Terminal OR gitbash๋ฅผ ์ด์ฉํ๋ค๋ฉด ํด๋น ํด๋๋ก ์ด๋ ํด์ผ ํฉ๋๋ค.
์๋ ๋ช ๋ น๋ก ํด๋น ํด๋๋ก ์ด๋ ํฉ๋๋ค.cd ~/desktop/...
git init
- ๋ก์ปฌ ์๋ฒ์์ ๋ณ๊ฒฝ๋๊ฑฐ๋ ์ถ๊ฐ๋ ๋ชจ๋ ํ์ผ์ ์คํ ์ด์ง์ ์ถ๊ฐ
git add .git add *
- ๋ก์ปฌ ์๋ฒ์์ ๋ณ๊ฒฝ๋๊ฑฐ๋ ์ถ๊ฐ๋ ์ผ๋ถ ํ์ผ ์ ํํด์ ์คํ ์ด์ง์ ์ถ๊ฐ
git add <ํ์ผ ์ด๋ฆ or ํด๋ ์ด๋ฆ>
- ๊ฐ๊ฒฐํ ๋ฉ์ธ์ง๋ฅผ ์ ๋ ฅํ๋ ๊ฒฝ์ฐ
git commit -m "๋ฉ์ธ์ง ์ ๋ ฅ"
- ๋ํ ์ผํ ๋ฉ์ธ์ง๋ฅผ ์ ๋ ฅํ๋ ๊ฒฝ์ฐ
- commit ํ ์์ฑ ์ฐฝ์์ ์์ธํ ์ ๋ ฅ
git commit
- ์คํ ์ด์ง ์ถ๊ฐ ๊ณผ์ ๊ณผ ์ปค๋ฐ์ ๋์์ ํ๋ ๊ฒฝ์ฐ
git commit -am "๋ฉ์ธ์ง ์ ๋ ฅ"
- ๋ณดํต ๊ธฐ๋ณธ ๋ธ๋์น๋ช ์ main ๊ถ์ฅ
- tmi๋ก ์๋๋ ๊ธฐ๋ณธ ๋ธ๋์น๋ช ์ผ๋ก master๋ผ๋ ์ฉ์ด๋ฅผ ๋ง์ด ์ฌ์ฉ ๋์ด ์๊ณ
๋ธ๋์น๋ฅผ ์ถ๊ฐํ ๋ slave๋ผ๋ ์ฉ์ด๊ฐ ๋ณดํธ์ ์ผ๋ก ๋ง์ด ์ฌ์ฉ๋์ด ์์ง๋ง
์ด๋ ์ธ์ข ์ฐจ๋ณ์ ์๋ฏธ๊ฐ ์์ด ์ฌ์ฉ์ ์ง์ํ๊ณ ์์ต๋๋ค.git branch -M main
- ์๊ฒฉ ์ ์ฅ์ ์กฐํ
- ์ถ๊ฐ๋ ์๊ฒฉ ์ ์ฅ์๊ฐ ์์ผ๋ฉด ์๋ฌด๊ฒ๋ ์์
- ์ถ๊ฐ๋ ์๊ฒฉ ์ ์ฅ์๊ฐ ์์ผ๋ฉด ์ถ๊ฐ๋ ์๊ฒฉ ์ ์ฅ์ URL ์์
git remote -v
- ์๊ฒฉ ์ ์ฅ์ ์ถ๊ฐ
- ์๊ฒฉ ์ ์ฅ์์ ๋ก์ปฌ ๋ธ๋์น ๋ณํฉ
git remote add origin https://github.com/....
- ์๊ฒฉ ์ ์ฅ์ ์์
git remote set-url origin https://github.com/....
- ์๊ฒฉ ์ ์ฅ์ ์ญ์
git remote remove origin
- ์๊ฒฉ ์ ์ฅ์์ ์ด๋ฏธ ํ์ผ์ด ์๋ ๊ฒฝ์ฐ == ์ฒ์ repository์์ฑ ํ ๋ ๋ฆฌ๋๋ฏธํ์ผ์ ์ถ๊ฐํ ๊ฒฝ์ฐ
- ์ด ๊ฒฝ์ฐ๋ ๋ฐ๋์ pullํ๊ณ push์งํ
git pull <๋ฆฌ๋ชจํธ ๋ช > <๋ธ๋์น ๋ช >
- ์์
git pull origin main
- ์๊ฒฉ ์ ์ฅ์์ ํ์ผ์ด ์์ ์๋ ๊ฒฝ์ฐ == ์ฒ์ repository์์ฑ ํ ๋ ๋ฆฌ๋๋ฏธํ์ผ ์ถ๊ฐ ์ํ ๊ฒฝ์ฐ
git push -u origin mainOR
git push --set-upstream origin main
- ์ํ๋ ํด๋๋ก ์ด๋ ํ ๊ทธ ํด๋์ ํด๋ก ํ๋ฉด ๋ฉ๋๋ค.git clone <์๊ฒฉ ์ ์ฅ์ URL>
- ์์
git clone https://github.com/Caramel1004/git-cli.git
-
- git add . ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ ํ์ผ์ ์ฌ๋ ค ์ปค๋ฐํ๋๊ฒ์ ์ง์ ํฉ๋๋ค.
git add <ํ์ผ๋ช or ํด๋๋ช >
-
- ํ์ผ ํ๋ํ๋ ๋ณ๊ฒฝ๋ ๋ด์ฉ์ ์ ํํ๊ฒ ๊ธฐ๋กํ๋๊ฑธ ์งํฅํฉ๋๋ค.
git commit -m "์ฝ๋ ๋ฆฌํฉํ ๋ง"
-
- ๋ง์ฝ ๋ค๋ฅธ ํ์๊ณผ ํ์
์ ์งํ ํ๊ณ ์๋ค๋ฉด pull๋จผ์ ์งํํ๋ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค.
pull์์ด pushํ๋ค๊ฐ ๋ณ๊ฒฝ๋ด์ฉ์ด ๋ค์์ผ ์ ์์ต๋๋ค
- ๋ง์ฝ ๋ค๋ฅธ ํ์๊ณผ ํ์
์ ์งํ ํ๊ณ ์๋ค๋ฉด pull๋จผ์ ์งํํ๋ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค.
git pullgit push
-
- pull push๊ฐ ์ ๋์๋์ง ํ์ธ ํฉ๋๋ค.
git log
git clone <https:.. URL>git clone /๋ก์ปฌ/์ ์ฅ์/๊ฒฝ๋กgit clone ์ฌ์ฉ์๋ช @ํธ์คํธ:/์๊ฒฉ/์ ์ฅ์/๊ฒฝ๋ก
- ๋ชจ๋ ํ์ผ or ํด๋
git add *
- ์ ํ ํ์ผ
git add <ํ์ผ๋ช > or ํด๋
git status
- ๊ฐ๊ฒฐํ ๋ฉ์ธ์ง๋ฅผ ์ ๋ ฅํ๋ ๊ฒฝ์ฐ
git commit -m "๋ฉ์ธ์ง ์ ๋ ฅ"
- ๋ํ ์ผํ ๋ฉ์ธ์ง๋ฅผ ์ ๋ ฅํ๋ ๊ฒฝ์ฐ
- commit ํ ์์ฑ ์ฐฝ์์ ์์ธํ ์ ๋ ฅ
git commit
- ์คํ ์ด์ง ์ถ๊ฐ ๊ณผ์ ๊ณผ ์ปค๋ฐ์ ๋์์ ํ๋ ๊ฒฝ์ฐ
git commit -am "๋ฉ์ธ์ง ์ ๋ ฅ"
- ๋ธ๋์น ๋ชฉ๋ก ์กฐํ
git branch
- ์ ๋ธ๋์น ์์ฑ
git branch <๋ธ๋์น๋ช >
- ๋ธ๋์น ์์ฑ ํ ์์ฑ๋ ๋ธ๋์น๋ก ์ด๋
git checkout -b <๋ธ๋์น๋ช >
- ํด๋น ๋ธ๋์น๋ก ์ด๋
git checkout <๋ธ๋์น๋ช >
- ์ฝ๋๊ฐ ๋ณ๊ฒฝ๋์ง ์์ ์ํ์ ๋ธ๋์น๋ก ์ด๋
git checkout -f <๋ธ๋์น๋ช >
- ๋ธ๋์น๋ช ์์
git branch -m <๊ธฐ์กด ๋ธ๋์น๋ช > <์ ๋ธ๋์น๋ช >
- ๋ธ๋์น ์ญ์
git branch -d <๋ธ๋์น๋ช >
- ์๊ฒฉ ์ ์ฅ์ ์กฐํ
- ์ถ๊ฐ๋ ์๊ฒฉ ์ ์ฅ์๊ฐ ์์ผ๋ฉด ์๋ฌด๊ฒ๋ ์์
- ์ถ๊ฐ๋ ์๊ฒฉ ์ ์ฅ์๊ฐ ์์ผ๋ฉด ์ถ๊ฐ๋ ์๊ฒฉ ์ ์ฅ์ URL ์์
git remote -v
- ์๊ฒฉ ์ ์ฅ์ ์ถ๊ฐ
- ์๊ฒฉ ์ ์ฅ์์ ๋ก์ปฌ ๋ธ๋์น ๋ณํฉ
git remote add origin https://github.com/....
- ์๊ฒฉ ์ ์ฅ์ ์์
git remote set-url origin https://github.com/....
- ์๊ฒฉ ์ ์ฅ์ ์ญ์
git remote remove origin
- ์๊ฒฉ ์ ์ฅ์ ์์
git remote set-url origin https://github.com/....
- ์๊ฒฉ์ ์ ์ฅ๋ git ํ๋ก์ ํธ์ ํ์ฌ ์ํ๋ฅผ ๋ค์ด๋ฐ๊ณ + ํ์ฌ ์์นํ ๋ธ๋์น๋ก ๋ณํฉ
git pull <๋ฆฌ๋ชจํธ๋ช > <๋ธ๋์น๋ช >
- ๋ณดํธ์ ์ผ๋ก ๋ฆฌ๋ชจํธ๋ช ์ origin์ผ๋ก ๋ช ๋ช ํฉ๋๋ค.
๋ค๋ฅธ ๋ฆฌ๋ชจํธ๋ช ์ผ๋ก ๋ฐ๊ฟ๋ ์๊ด์ ์์ต๋๋ค.git pull origin main
- ๋ง๋ ๋ธ๋์น๋ฅผ ์๊ฒฉ ์๋ฒ์ ์ ์ก or ์ ๋ธ๋์น๋ฅผ ์๊ฒฉ ์ ์ฅ์๋ก push
git push -u <remote๋ช > <๋ธ๋์น์ด๋ฆ>
- ๋ณดํธ์ ์ผ๋ก ๋ฆฌ๋ชจํธ๋ช ์ origin์ผ๋ก ๋ช ๋ช ํฉ๋๋ค.
๋ค๋ฅธ ๋ฆฌ๋ชจํธ๋ช ์ผ๋ก ๋ฐ๊ฟ๋ ์๊ด์ ์์ต๋๋ค.git push -u origin mainOR
git push --set-upstream origin main
- ํ์ฌ ๋ธ๋์น์ ๋ค๋ฅธ ๋ธ๋์น์ ์์ ์ฌํญ ๋ณํฉ
git merge <๋ค๋ฅธ ๋ธ๋์น๋ช >
- ๋ณ๊ฒฝ ๋ด์ฉ merge ์ ์ ๋ฐ๋ ๋ด์ฉ์ ๋น๊ตํ ์ ์์
git diff <๋ธ๋์น๋ช > <๋ค๋ฅธ ๋ธ๋์น๋ช >
- ํ์ฌ ์์นํ ๋ธ๋์น ์ปค๋ฐ ๋ด์ฉ ํ์ธ ๋ฐ ์๋ณ์ ๋ถ์ฌ๋จ
git log