[Git] pull VS fetch VS clone
๊ฐ๋
1. pull : ์๊ฒฉ ์ ์ฅ์์ ๋ณ๊ฒฝ์ฌํญ๊ณผ merge๊น์ง ๋์์ ํ๋ ๊ฒ
2. fetch : ์๊ฒฉ ์ ์ฅ์์ ๋ณ๊ฒฝ์ฌํญ๋ง ํ์ธํ๊ณ ์ถ์ ๋, ์๊ฒฉ ์ ์ฅ์(๊นํ๋ธ)์ ๋ณ๊ฒฝ์ฌํญ๋ง ๋ก์ปฌ ์ ์ฅ์(๋ด ์ปดํจํฐ)๋ก ๊ฐ์ ธ์ค์ง๋ง merge๋ฅผ ํ์ง ์๋ ๊ฒ
3. clone : git init + git remote origin ์ฃผ์ + git pull
์๊ฒฉ์ ์ฅ์ : origin/master(repository)
์ฝ๋
1. pull
1) git ์์
git init
2) remote repository ํ์ธ
git remote -v
3) repository ์ฐ๊ฒฐ
git remote origin ์ฃผ์
4) git pull
git pull
or git pull origin master
2. fetch
1) ๋ณ๊ฒฝ์ฌํญ ๊ฐ์ ธ์ค๊ธฐ
git fetch [์๊ฒฉ์ ์ฅ์ ์ด๋ฆ] // ๋ชจ๋ ๋ธ๋์น
git fetch [์๊ฒฉ์ ์ฅ์ ์ด๋ฆ] [๋ธ๋์น ์ด๋ฆ] // ํน์ ๋ธ๋์น
2) ์๊ฒฉ ์ ์ฅ์์ ์ต์ ์ด๋ ฅ (๋ก๊ทธ) ํ์ธ
git log --decorate --all --oneline
(origin/master) // ์๊ฒฉ ์ ์ฅ์
(HEAD -> master)6 // ๋ก์ปฌ ์ ์ฅ์
5
4
3
2
1
3) ๋ณํฉ
๋ก์ปฌ ์ ์ฅ์์ ์๋ ํ์ผ์ ์๊ฒฉ ์ ์ฅ์ ๋ด์ฉ merge
git merge origin/master
3. clone
git clone ์ฃผ์
์ต๊ทผ๋๊ธ