{ Git with GitHub } #3 - Branch ๊น ๋ธ๋์น
# 1. branch ์์ฑ
git branch < branch-name>
# 2. branch ์ ์ฒด ๋ณด๊ธฐ
git branch
# 3. branch ์ ํ
git checkout < branch-name>
# 4. ์์ค ์์ & add & commit ์ดํ
git push origin < branch-name>
git log
# ๋ค๋ฅธ ๋๋ฃ ํด๋
git clone < git-remote-url>
git pull
# main ๋ธ๋์น๋ก merge
# sub branch์์ ์์ ํ ์์ค ๋ด์ฉ์ main ๋ธ๋์น ๋์ผ ํ์ผ์ ๋ฐ์
# ๋ชฉ์ ์ง์์ ์์ค ๊ฐ์ ธ์ค๊ธฐ! (์์ ์ฒ์์ merge ์ฒ๋ฆฌ)
git checkout main
git merge < branch-name>
git branch
git log
# conflict (non fast-forward)
git status
# local branch ๋ณด๊ธฐ, ์ญ์
local> git branch
local> git branch -d < branch-name>
# remote branch ๋ณด๊ธฐ, ์ญ์
remote> git branch -r
remote> git push --delete origin < branch-name>
# ์์ชฝ branch ๋ชจ๋ ๋ณด๊ธฐ (local branch, remote branch)
git branch -a
# branch ์ฐ์ต
git branch br1
git branch
git checkout br1
# ์์ค ์์ ํ
git add --all
git commit -am " ๋ฉ์ธ์ง"
# git branch -r
git branch -a
git push origin br1
git checkout main
# merge ์ ์ ๋ค๋ฅธ ์ ์ฒดํฌ
git diff br1
# patch
git checkout -p br1 [< ํ์ผ๋ช
> ]
a/y
git add --all
# commitํ ๋ด์ฉ ์ฒดํฌ
git status
git commit -am " patch"
git push origin main
# ์๋ฒ์ ํน์ ๋ธ๋์น๋ง ๊ฐ์ ธ์ค๊ธฐ
# origin(์๋ฒ)
git checkout -t origin/< branch-name>
git checkout br1
git pull origin br1
main ๋ธ๋์น (main ์์ค, ์๋น์ค ๋๋ ์์ค)
์ฌ๋ฌ ๋ธ๋์น (๋ค๋ฅธ ์ฌ๋๋ค์ด ์์
ํ๋ ์์ค, ์๋น์ค ์ํฅ ์ฃผ์ง X, ๊ธฐ๋ฅ ๋ถํ )
git commit -m "๋ฉ์ธ์ง"
(commit ๋ฉ์ธ์ง๋ง ๋ฃ๊ธฐ)
git commit -am "๋ฉ์ธ์ง"
(add/staging๋ ํ๊ณ ๋ฉ์ธ์ง๋ ๋์์ ๋ฃ๊ธฐ)
git add --all
(์ง๋ commit ์ดํ๋ก ์ ๊ท๋ก ์์ฑ๋ ๋ชจ๋ ํ์ผ์ add stage์ ์ถ๊ฐ)
git pull
(์๋ฒ์ main -> local)
git checkout -t origin/branch์ด๋ฆ
(์๋ฒ์ ํน์ branch -> local)
git checkout -p ๋ธ๋์น์ด๋ฆ
(local branch ๊ฐ์ ธ์ค๊ธฐ)
remote์ HEAD๊ฐ ์ค์ ๋ก main ๋ธ๋์น์
local์๋ HEAD๊ฐ ๋ฐ๋ก ์๊ณ working directory์ ์๋ ์์ค๊ฐ ์ค์ HEAD์
(main๊ณผ ๊ฐํ๊ฒ ์ฐ๊ฒฐ๋์ด ์๋ ์ํ)
branch ์์ฑ ๋ฐ ๋ณ๊ฒฝ ์ ์ commit ์ ๋๋ก ์์ง ๋ง๊ธฐ!
์ปค๋ฐ ์ํ๊ณ ๋ธ๋์น ์ฎ๊ฒจ๋ค๋๋ฉด ์ปค๋ฐ ์ํ ์์ค ์ ์ค๋ ์ ์์
๋ณดํต Github (Git ์๋ฒ ์ ๊ณต ์๋น์ค)์ ์ปค๋ฐํ๊ณ ๊ทธ ์ปค๋ฐํ ๋ด์ฉ์ ๊ฐ์ง๊ณ ์ค ์๋ฒ๋ก ๋ฐฐํฌํจ
๋ฐ๋ก ๋ฐฐํฌํ๋ฉด ์ํํจ
git pull
์ ๋ฌด์กฐ๊ฑด main ๋ธ๋์น ์์ค ๊ฐ์ ธ์ค๋ ๊ฒ
๋ ํฌ์งํ ๋ฆฌ ํจ๊ป write ํ๊ธฐ ์ํด์ => github collaborator ์ถ๊ฐ
repository fork ํ ๊ฒ์ ์๋ณธ repo๋ ๋ค๋ฆ
ํญ์ git clone์ ์๋ณธ์ผ๋ก ๋ฐ๊ณ fork๋ ๊ฒ์ ๋๋ง์ url์ธ ๊ฒ์ ์ธ์ง