Search

Git reset

Git Reset

Git Reset์€ ์ปค๋ฐ‹ ํžˆ์Šคํ† ๋ฆฌ๋ฅผ ๋˜๋Œ๋ฆฌ๊ณ  ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ์˜ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๋ช…๋ น์–ด๋กœ, HEAD ํฌ์ธํ„ฐ๋ฅผ ์ด์ „ ์ปค๋ฐ‹์œผ๋กœ ์ด๋™์‹œ์ผœ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
HEAD ํฌ์ธํ„ฐ๋ž€?
HEAD๋Š” ํ˜„์žฌ ์ž‘์—… ์ค‘์ธ ๋ธŒ๋žœ์น˜์˜ ์ตœ์‹  ์ปค๋ฐ‹์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ํฌ์ธํ„ฐ์ž…๋‹ˆ๋‹ค. Git์—์„œ HEAD๋ฅผ ์ด๋™์‹œํ‚ค๋ฉด ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ์˜ ์ƒํƒœ๊ฐ€ ํ•ด๋‹น ์ปค๋ฐ‹ ์‹œ์ ์œผ๋กœ ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค.
โ€ข
HEAD๋Š” ํ˜„์žฌ ์ฒดํฌ์•„์›ƒ๋œ ๋ธŒ๋žœ์น˜์˜ ์ตœ์‹  ์ปค๋ฐ‹์„ ์ฐธ์กฐํ•˜๋ฉฐ, ์ƒˆ๋กœ์šด ์ปค๋ฐ‹์ด ์ƒ์„ฑ๋  ๋•Œ๋งˆ๋‹ค ์ž๋™์œผ๋กœ ์—…๋ฐ์ดํŠธ๋ฉ๋‹ˆ๋‹ค.
โ€ข
HEAD๋ฅผ ์ด๋™์‹œํ‚ค๋ฉด ํ”„๋กœ์ ํŠธ์˜ ์ƒํƒœ๋ฅผ ๊ณผ๊ฑฐ์˜ ํŠน์ • ์‹œ์ ์œผ๋กœ ๋˜๋Œ๋ฆด ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋Š” ์‹ค์ˆ˜๋ฅผ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ์ด์ „ ๋ฒ„์ „์„ ๊ฒ€ํ† ํ•  ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€ข
Git Reset์€ HEAD๋ฅผ ์ด๋™์‹œํ‚ค๋Š” ๋Œ€ํ‘œ์ ์ธ ๋ช…๋ น์–ด์ด๋ฉฐ, reset์˜ ์˜ต์…˜์— ๋”ฐ๋ผ ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ์™€ ์Šคํ…Œ์ด์ง• ์˜์—ญ์˜ ์ƒํƒœ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

Git Reset ๋ช…๋ น์–ด

๊ธฐ๋ณธ ๋ช…๋ น์–ด

git reset [์˜ต์…˜] [์ปค๋ฐ‹]
Bash
๋ณต์‚ฌ
HEAD๋ฅผ ์ง€์ •ํ•œ ์ปค๋ฐ‹์œผ๋กœ ์ด๋™์‹œํ‚ค๊ณ , ์˜ต์…˜์— ๋”ฐ๋ผ ์Šคํ…Œ์ด์ง• ์˜์—ญ๊ณผ ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.
์˜ต์…˜์„ ์ƒ๋žตํ•˜๋ฉด ๊ธฐ๋ณธ์ ์œผ๋กœ --mixed ๋ชจ๋“œ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.

Reset ์˜ต์…˜

์˜ต์…˜
์„ค๋ช…
--soft
HEAD๋งŒ ์ด๋™์‹œํ‚ค๊ณ , ์Šคํ…Œ์ด์ง• ์˜์—ญ๊ณผ ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ๋Š” ๊ทธ๋Œ€๋กœ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.
--mixed
HEAD๋ฅผ ์ด๋™์‹œํ‚ค๊ณ  ์Šคํ…Œ์ด์ง• ์˜์—ญ์„ ์ดˆ๊ธฐํ™”ํ•˜์ง€๋งŒ, ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ๋Š” ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. (๊ธฐ๋ณธ๊ฐ’)
--hard
HEAD๋ฅผ ์ด๋™์‹œํ‚ค๊ณ  ์Šคํ…Œ์ด์ง• ์˜์—ญ๊ณผ ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๋ชจ๋‘ ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค. (๋ณ€๊ฒฝ์‚ฌํ•ญ ์‚ญ์ œ)
--merge
๋ณ‘ํ•ฉ ์ค‘์ธ ์ƒํƒœ๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ณ  HEAD๋ฅผ ์ด๋™์‹œํ‚ต๋‹ˆ๋‹ค.
--keep
์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ์˜ ๋กœ์ปฌ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์œ ์ง€ํ•˜๋ฉด์„œ HEAD๋ฅผ ์ด๋™์‹œํ‚ต๋‹ˆ๋‹ค.