
Git ์ฌ์ฉ์ ์ ๋ณด ์ค์ ํ๊ธฐ
ํฐ๋ฏธ๋ ์ด๊ณ ์๋ ๋ช ๋ น์ด ์คํํ๊ธฐ
git config --global user.name "GitHub ์ ์ ๋ค์"
git config --global user.email "GitHub ์ด๋ฉ์ผ"
์ค์ ๋ ์ ๋ณด ํ์ธํ๊ธฐ
git config --global --list
๋ธ๋์น ๊ด๋ฆฌ
๋ธ๋์น ๋ชฉ๋ก ํ์ธ
git branch # ๋ก์ปฌ ๋ธ๋์น ๋ชฉ๋ก
git branch -r # ์๊ฒฉ ๋ธ๋์น ๋ชฉ๋ก
git branch -a # ๋ชจ๋ ๋ธ๋์น ๋ชฉ๋ก
์ ๋ธ๋์น ์์ฑ ๋ฐ ์ ํ
git checkout -b <๋ธ๋์น๋ช
> # ๋ธ๋์น ์ ํ + ํ์ผ ๋ณต์ + ์ ๋ธ๋์น ์์ฑ ๋ฑ)
git switch -c <๋ธ๋์น๋ช
> # Git 2.23+
๋ธ๋์น ์ญ์
git branch -d <๋ธ๋์น๋ช
> # ๋ก์ปฌ ๋ธ๋์น ์ญ์
git push origin --delete <๋ธ๋์น๋ช
> # ์๊ฒฉ ๋ธ๋์น ์ญ์
ํด๋ ์ ์ฒด ์ปค๋ฐํ๊ธฐ
๊นํ๋ธ๋ ์๋ ํ์ผ ๋จ์๋ก ์ ๋ก๋ํ ์ ์๋๋ฐ, ์๋์ ์ฝ๋๋ฅผ ํตํด ํด๋ ์ ์ฒด๋ฅผ ํ๊บผ๋ฒ์ ์ปค๋ฐํ ์ ์์
git add ํด๋๋ช
/
git commit -m "~~์ปค๋ฐ ๋ฉ์์ง ์์ฑ~~"
์ปค๋ฐ ์ทจ์ํ๊ธฐ
1. ๊ฐ์ฅ ์ต๊ทผ ์ปค๋ฐ๋ง ์ทจ์ํ๊ณ , ๋ณ๊ฒฝ์ฌํญ์ ๊ทธ๋๋ก ๋ ๋ (= ์ปค๋ฐ๋ง ์์ ๊ณ ํ์ผ ๋ณ๊ฒฝ์ ๋จ๊น)
git reset --soft HEAD~1
* ์ซ์ 1๋ฅผ 2, 3์ผ๋ก ๋ณ๊ฒฝํ๋ฉด ์ทจ์ํ๋ ๊ฐ์ ์กฐ์ ๊ฐ๋ฅ
2. ๊ฐ์ฅ ์ต๊ทผ ์ปค๋ฐ์ ์ทจ์ํ๊ณ , ๋ณ๊ฒฝ์ฌํญ๋ staging์์ ๋ด๋ฆด ๋ (= ์ปค๋ฐ + staging ์ ๊ฑฐ, ํ์ผ์ ๊ทธ๋๋ก ์กด์ฌ)
git reset --mixed HEAD~1
3. ๊ฐ์ฅ ์ต๊ทผ ์ปค๋ฐ์ ์ทจ์ํ๊ณ , ๋ณ๊ฒฝ์ฌํญ๊น์ง ๋ชจ๋ ์ญ์ (= ํ์ผ๊น์ง๋ ์ปค๋ฐ ์ ์ํ๋ก ์์ ํ ๋ณต๊ตฌ)
git reset --hard HEAD~1
์ปค๋ฐ ์ทจ์ํ๊ธฐ
์๊ฒฉ ๋ธ๋์น ์ ๋ณด ๊ฐฑ์
git fetch origin
์๊ฒฉ ๋ธ๋์น(dev)์ ์ต์ ์ฝ๋ ๊ฐ์ ธ์ค๊ธฐ
git pull origin dev
ํ์ฌ ๋ธ๋์น์ dev ๋ธ๋์น ๋ณ๊ฒฝ์ฌํญ ๋ณํฉ
git fetch origin
git merge origin/dev
๋ธ๋์น ๋ณํฉ ๋ฐ PR ์์ฑ
1๏ธโฃ ์์ ๋ธ๋์น ํธ์
git push origin <๋ธ๋์น๋ช
>
2๏ธโฃ GitHub์์ Pull Request ์์ฑ
- base (๋ณํฉ ๋์) ← compare (์์ ๋ธ๋์น)
- ์ฝ๋ ๋ฆฌ๋ทฐ ํ ์น์ธ ์ Merge