μ΄λ²μ μμ±νλ ν¬μ€νΈλ Git λλ리기μ κ΄ν λ΄μ©μ
λλ€
κ³Όκ±°μ μΌμ΄λ μΌμ λλ릴μ μλ€λ©΄ μΌλ§λ μ’μκΉμ?
μν λ°±ν¬λν¨μ²λ λ§ν΄λ°μ¬κ° λ°λͺ
ν νμλ¨Έμ μ΄λΌκ³ λΆλ¦¬λ μλμ°¨λ₯Ό νκ³ κ³Όκ±°μ μκ°μ¬νμ ν μ μμ΅λλ€.
μμ§κΉμ§ νμ€μΈκ³μμλ κ³Όκ±°λ‘ μκ°μ¬νμ λΆκ°λ₯νμ§λ§..
Git μμλ κ³Όκ±°λ‘ λμκ° μ μκ³ κ³Όκ±°μ μΌμ΄λ μΌμ λλ릴 μ μλ λ°©λ²μ μ 곡ν©λλ€.
κ³Όκ±°μ μΌμ΄λ μΌμ λλ리λ λ°©λ²μ΄ λκ°μ§κ° μμ΅λλ€.
λ°λ‘ Reset κ³Ό Revert λͺ
λ Ήμ΄λ₯Ό μ¬μ©νλ κ²μ
λλ€.
Reset μ μκ°μ μμ μΌλ‘ λλ리λ κ²μ΄κ³ Revert λ νΉμ 컀λ°μ μμλ μΌλ‘ λ§λλλ€.
1. Reset
μμμ μ€λͺ νλλ‘ Reset μ μκ°μ λ€μ λ§μΆλ κ²μ λλ€. λμκ°λ €λ μ»€λ° μμ μΌλ‘ λ νμ§ν 리λ μ¬μ€μ λκ³ ν΄λΉ μ»€λ° μ΄νμ μ΄λ ₯μ μ¬λΌμ§λλ€. μλμ κ°μ΄ μ¬μ©ν©λλ€.
$ git reset <μ΅μ
> <λμκ°κ³ μΆμ μ»€λ° ID>
# μ΅μ
μ μ μ§ μμΌλ©΄ mixed λ‘ λμν©λλ€.
μ΅μ
μ 3κ°μ§(hard, mixed, soft)κ° μμ΅λλ€.
1) hard: λμκ°λ €λ μ΄λ ₯ μ΄νμ λͺ¨λ λ³κ²½ μ΄λ ₯μ μμ ν©λλ€.
2) mixed: μ΄λ ₯μ λλλ¦¬κ³ μ΄νμ λ³κ²½λ λ΄μ©μ λν΄μλ λ¨μ μμ§λ§ μΈλ±μ€λ μ΄κΈ°ν λ©λλ€. 컀λ°μ νλ €λ©΄ add λͺ
λ Ήμ΄λ‘ stage μ λ°μνκ³ commit ν΄μΌ ν©λλ€.
3) soft: λμκ°λ €λ μ΄λ ₯μΌλ‘ λλμ κ°μ§λ§, λ³κ²½λ΄μ©μ stage μ λ°μλμ΄ μλ μνμ
λλ€. λ°λ‘ λ€μ μ»€λ° ν μ μλ μνλ‘ λ¨μ μλ κ²μ
λλ€.
μ λͺ
λ Ήμ΄λ₯Ό μ¬μ©νλ€κ³ ν΄μ origin μ λ³κ²½λμ΄ μμ§ μμ΅λλ€.
--force μ΅μ
μ μ£Όμ΄ μ΄λ΄λ κ°μ λ‘ λ°μν΄μΌ νλλ°..
λ€λ₯Έμ¬λλ€κ³Ό λ νμ§ν 리λ₯΄ 곡μ νκ³ μλ€λ©΄ 무쑰건 νλ©΄ μλλ νλμ
λλ€.
$ git push -f origin <λΈλμΉλͺ
>
2. Revert
Rever λ νΉμ 컀λ°μ μμλ μΌλ‘ λ§λλ κ²μ
λλ€. Reset κ³Ό λ€λ₯΄κ² 컀λ°μ μμ νλ κ²μ΄ μλ 컀λ°μ μΆκ°νλ λ°©μμ
λλ€.
μ΄μ μ΄λ ₯μ κ·Έλλ‘ μκ³ , λλλ¦¬λ €λ 컀λ°λ§ λλ리λ λ°©μμ
λλ€. μ΄μ μ μΌμ κΈ°μ΅νκ³ μμ§λ§ κ·Έ λ΄μ©μ μμ§ λͺ»νλ κ²μ²λΌ λ§μ΄μ£ .
μλμ κ°μ΄ μ¬μ©ν©λλ€.
$ git revert <λλ릴 컀λ°>
λλ릴 컀λ°μ΄ μ¬λ¬κ°λΌλ©΄ λ²μλ₯Ό μ£Όμ΄μ μ¬λ¬κ°λ₯Ό μ νν μλ μμ΅λλ€.
μλμ²λΌμ.
$ git revert 26634dd2..78652aa2
'π» νλ‘κ·Έλλ° > π Ά Git' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
μ΄λ―Έ pushλ νμΌ .gitignore μ μ©νκΈ° (0) | 2021.08.09 |
---|