init
$ git init โถ๏ธ๊น ์์
reset - ์กฐํ, ๋๋๋ฆฌ๊ธฐ
$ git reset -- hard HEAD^ โถ๏ธ commit ์ ํ๋จ๊ณ ์์ผ๋ก ๋๋๋ฆฐ๋ค (๋ชจ๋ ์ด๊ธฐํ)
์ ๋ถ ๋ฆฌ์
(๋ง์ง๋ง commit ์ดํ)
$ git reset -- mixed HEAD^ โถ๏ธ commit ์ ํ๋จ๊ณ ์์ผ๋ก ๋๋๋ฆฐ๋ค (working directory ๋ ์ ์ง)
์์ ๋ด์ฉ๋ฌผ ๋๊ณ ๋ฆฌ์
$ git reset -- soft HEAD^ โถ๏ธ commit ์ ํ๋จ๊ณ ์์ผ๋ก ๋๋๋ฆฐ๋ค (working derectory, staging area ์ ์ง)
commit ์ด๋ ฅ๋ง ์ง์ฐ๊ณ ๋ชจ๋ ๋จ๊น
status
$ git status โถ๏ธํ์ฌ ๊น์ ์ํ ํ์ธ
add - ์ถ๊ฐ
$ git add ํ์ผ๋ช โถ๏ธ ํด๋น ํ์ผ์ staging area ์ ์ถ๊ฐ
$ git add . โถ๏ธ ํ์ผ ์ ๋ถ๋ค staging area ์ ์ถ๊ฐ
rm - ์ญ์
$ git rm --cached ํ์ผ๋ช โถ๏ธ ํด๋น ํ์ผ์ statging area ์ ์ญ์
commit
$ git commit -m "๋ฉ์ธ์ง" โถ๏ธ ๊น์ ๋ ํ์งํ ๋ฆฌ์ ์ ์ฅ
$ git commit -am "๋ฉ์ธ์ง" โถ๏ธ ์ถ๊ฐ์ ์ปค๋ฐ์ ๋์์ ํจ
log
$ git log โถ๏ธ ์ปค๋ฐ ์ดํ ๋ณ๊ฒฝ ๋ก๊ทธ ํ์ธ
remote
$ git remote add <๋จ์ถ์ด๋ฆ(origin)> ์ฃผ์ โถ๏ธ ์๊ฒฉ ์ ์ฅ์์ ์กฐํ(์ถ๊ฐ)
$ git remote -v โถ๏ธ ๊น์ ํ์ฌ ์๊ฒฉ ์ ์ฅ์ ํ์ธ
$ git remote remove ๋จ์ถ์ด๋ฆ โถ๏ธ ๊น์ ํ์ฌ ์๊ฒฉ ์ ์ฅ์๋ฅผ ์ญ์
push
$ git push origin master โถ๏ธ ์๊ฒฉ ์ ์ฅ์์ ์กฐํ(์ถ๊ฐ)ํ๊ธฐ (๋์ ๋ ํ์งํ ๋ฆฌ์master๋ธ๋ ์น๋ฅผorigin์master๋ธ๋ ์น๋กpushํด๋ผ)
pull - (full & merge)
$ git pull (origin master) โถ๏ธ ์๊ฒฉ์ ์ฅ์์์ ์ป์ด์์ ํฉ์น๊ธฐ (origin์ ๋์ ๋ ํ์งํ ๋ฆฌmaster๋ธ๋ ์น๋ฅผ๊ฐ๊ณ ์๋ผ)
fetch
$ git fetch (origin master) โถ๏ธ ์๊ฒฉ ์ ์ฅ์์์ ์ป๊ธฐ
clone - ๋ณต์ฌ
$ git clone โถ๏ธ ์๊ฒฉ ์ ์ฅ์์์ ๋ณต์ฌํ๊ธฐ -
checkout
$ git checkout master // branch ํ์ธ
full > full merger
fetch > full -> FETCH_HEAD
fetch > ์์
git checkout FETCH_HEAD (์์branch