git commit
์ --ament
์ต์
์ ์ฌ์ฉํ๋ฉด ์ต๊ทผ์ ์ปค๋ฐ์ ์ฌ์์ฑ ํ ์ ์๋ค.
git add <file>
๋ก ๋น ํธ๋ฆฐ ํ์ผ์ staging ํ๊ณ , git commit --amend
๋ฅผ ์
๋ ฅํ๋ค. ๊ฐ์ฅ ์ต๊ทผ์ ์ปค๋ฐ๊ณผ ๋ฐฉ๊ธ ์
๋ ฅํ ์ปค๋ฐ(--amend
์ต์
์ ์ค ์ปค๋ฐ)์ ํ๋์ ์ปค๋ฐ์ผ๋ก ๊ธฐ๋ก๋๋ค.git checkout -- <file>
๋ช
๋ น์ ์์
๋๋ ํ ๋ฆฌ์์์ ๋ณ๊ฒฝ ์ฌํญ์ ์ทจ์ํ๊ธฐ ์ํ ๋ช
๋ น์ด๋ค. ์ฆ modified ํ์ผ์์ unmodified ํ์ผ๋ก ๋ณต๊ตฌํ๋ค.
git reset HEAD <file>
๋ช
๋ น์ Staging Area์ ๋ค์ด์๋ ํ์ผ, staged ํ์ผ์ stage์์ ๋ด๋ ค unstaged ์ํ๋ก ๋ณ๊ฒฝํ๋ค.
git reset HEAD
๊ณผ ๊ฐ์ด ํ์ผ ์ด๋ฆ์ ์ง์ ํ์ง ์์ผ๋ฉด ์คํ
์ด์ง์ ๋ชจ๋ ํ์ผ์ ๋๋๋ฆฐ๋ค.
HEAD
: ํ์ฌ ๋ธ๋์น๋ฅผ ๊ฐ๋ฆฌํค๋ ํฌ์ธํฐgit reset HEAD^
๋ช
๋ น์ ๊ฐ์ฅ ์ต์ ์ปค๋ฐ์ ๋๋๋ฆฐ๋ค. (์ทจ์ํ๋ค.)
HEAD^
: ํ์ฌ HEAD๊ฐ ๊ฐ๋ฆฌํค๋ ๋ธ๋์น์ ๊ฐ์ฅ ์ต์ ์ปค๋ฐ. ๋ถ๋ชจ ์ปค๋ฐ์ ๊ฐ๋ฆฌํจ๋ค.HEAD~(n)
: ํ์ฌ HEAD๊ฐ ๊ฐ๋ฆฌํค๋ n๋ฒ์งธ ์ต์ ์ปค๋ฐ. (HEAD~๊ณผ HEAD^๋ ๊ฐ๋ค.) ์ต๊ทผ 3๊ฐ์ ์ปค๋ฐ์ ์ทจ์ํ๋ ค๋ฉด git reset HEAD~3
์ฌ์ฉ๐ก reset ์ต์
--soft HEAD^
: ์ต๊ทผ ์ปค๋ฐ์ ํ๊ธฐ ์ ์ํ๋ก ์์
ํธ๋ฆฌ ๋๋๋ฆผ--mixed HEAD^
: ์ต๊ทผ ์ปค๋ฐ๊ณผ ์คํ
์ด์ง ์ ์ํ๋ก ์์
ํธ๋ฆฌ ๋๋๋ฆผ. ์ต์
์๋ ๊ฒฝ์ฐ์ default ์๋--hard HEAD^
: ์ต๊ทผ ์ปค๋ฐ๊ณผ ์คํ
์ด์ง, ํ์ผ ์์ ์ ์ผ๋ก ์์
ํธ๋ฆฌ ๋๋๋ฆผ. ๋๋๋ฆฐ ๋ด์ฉ ๋ณต๊ตฌํ ์ ์์.git reset --hard <commit hash>
๋ช
๋ น์ ํด์์ ํด๋นํ๋ ์ปค๋ฐ ์ดํ์ ๋ง๋ค์๋ ์ปค๋ฐ์ ๋ชจ๋ ์ญ์ /์ทจ์ํ๊ณ , ํด๋น ์ปค๋ฐ์ผ๋ก ์ด๋ํ๋ค. (ํด๋น ์ปค๋ฐ์ด ์ต์ ์ปค๋ฐ์ด ๋๋ค.) ๋๋์๊ฐ commit์ hash๋ฅผ ์ง์ ํ๋ค.
git revert <commit hash>
๋ช
๋ น์ ํด์์ ํด๋นํ๋ ์ปค๋ฐ์์ ๋ณ๊ฒฝํ๋ ์ด๋ ฅ์ ์ทจ์ํ ์ํ์, ์๋ก์ด ์ปค๋ฐ์ ๋ง๋ ๋ค. ์ ์ปค๋ฐ์ ๊ธฐ๋กํ์ฌ, ์ด์ ์ปค๋ฐ์ ๋ณ๊ฒฝ ๋ด์ญ์ ์ทจ์ํ๋ ๊ฒ๊ณผ ๊ฐ์ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์. hash์๋ ๋ณ๊ฒฝ ์ด๋ ฅ์ ์ทจ์ํ๋ ค๋ commit์ hash๋ฅผ ์ง์ ํ๋ค.
<hash1>..<hash2>
์ ๊ฐ์ ํํ๋ก ๋ฒ์๋ฅผ ์ค ์ ์๋ค.Git-scm : Git์ ๊ธฐ์ด ๋๋๋ฆฌ๊ธฐ
Git-scm : Reset ๋ช
ํํ ์๊ณ ๊ฐ๊ธฐ
์ฑ
<์ง์ฅ์์ ์จ ๋ฌธ์ ๊ด๋ฆฌ์ ๊น&๊นํ๋ธ ์
๋ฌธ>