Git
κΉ κ²½νλ΄
20λ
λ 2νκΈ° Cνλ‘κ·Έλλ°μμ μ²μμΌλ‘ κΉνλΈλ₯Ό μ¬μ©νμλ€. λΉμμλ gitμ λν΄μ 곡λΆνκ³ νμ
μ μν΄ μ¬μ©ν κ²μ΄ μλ, μ λλ‘ μ¬μ©νκΈ° 보λ€λ κ°μ°μ λλ¬Έμ μ¬μ©ν λλμ΄ κ°νλ€.
볡νμ νκ³ , 23λ
λ 2νκΈ° μλ°νλ‘κ·Έλλ°μμ λ λ²μ¬λ‘ κΉνλΈλ₯Ό μ¬μ©νκ³ , μ΄λλ νλ₯ν νμλΆ λλΆμ λΈλμΉ, PR λ± λ§μ κ²μ κ²½ννλ€.
νμμ΄ μλ €μ€ κΈ°λ₯λ§ μ¬μ©νμκΈ° λλ¬Έμ, μ€μ€λ‘ νμ΅μ΄ νμνλ€κ³ μκ°μ΄ λ€μκ³ , λκ³ λ°©νλμ κ°μλ₯Ό ν΅ν΄ κΉμ λν νμ΅μ μ§ννλ€.
λν, λμ리 κ΅μ‘ κ³Όμ μ ν΅ν΄ κΉμ νμ΅νκ³ μ¬μ©ν΄λ³΄λ κΈ°νλ₯Ό κ°μ‘κ³ , μ΄λ κ² νμ΅ν λ΄μ©μ μ 리νκ³ μ μμ±νκ² λλ€.
GIT
μ μ
- λΆμ° λ²μ κ΄λ¦¬ μμ€ν μΌλ‘, νμΌμ λ²μ μ κ΄λ¦¬ν μ μλ μλ¨μ΄λ€.
- μ΄λ₯Ό ν΅ν΄ νμΌμ λ³κ²½μ¬νμ μΆμ νκ³ μ¬λ¬λͺ μ μ¬μ©μλ€ κ°μ νμΌμ λν μμ μ μ‘°μ©νλλ° μ¬μ©λλ€.
μ₯μ
- Gitμ μ¬μ©νλ©΄ μ μ½κ² λμκ°κ³ μΆμ λ²μ μΌλ‘ λμκ° μ μλ€.
- νμ κ³Όμ μμ λ€λ₯Έ κ°λ°μλ€μ μ½λ μ΄λ ₯μ μ½κ² νμΈν μ μλ€.
- λν, λ³λμ μ μ½ μμ΄ μ¬λ¬ μ¬λμ΄ κ°μ νμΌμ λμμ μμ ν μ μλ€.
μ©μ΄
- 리ν¬μ§ν 리
- μμ€ μ½λ, νμΌ, λλ ν 리 λ±μ λ²μ κ΄λ¦¬λ₯Ό μν΄ μ¬μ©λλ μ μ₯μμ΄λ€.
- λ‘컬
- μ¬μ©μμ νμ¬ μ»΄ν¨ν°μ μ μ₯λ 리ν¬μ§ν 리μ΄λ€.
- 리λͺ¨νΈ
- μ격 μλ²λ ν΄λΌμ°λμ μ μ₯λ 리ν¬μ§ν 리μ΄λ€.
- λ‘컬 리ν¬μ§ν 리μ λκΈ°νν μ μλ€.
- λΈλμΉ
- νλ‘μ νΈμ νΉμ μμ μμ λΆκΈ°λ λ 립μ μΈ μμ 곡κ°μ΄λ€.
- μ¬λ¬ λΈλμΉλ₯Ό λ§λ€μ΄ λ€μν κΈ°λ₯μ΄λ λ²κ·Έ μμ μ λμμ μ§νν μ μλ€.
- 컀λ°
- 컀λ°νκΈ° μ μ λ³κ²½λ νμΌμ μμλ‘ μ μ₯νλ μμμ΄λ€.
- μ€ν μ΄μ§ μμμ μΆκ°λ νμΌλ§ 컀λ°μ ν¬ν¨λλ€.
- μ€ν
μ΄μ§
- μ»€λ° νκΈ° μ νμΌμ 보κ΄νλ μμμ΄λ€.
- νΈμ
- λ‘컬 리ν¬μ§ν 리μ λ³κ²½ μ¬νμ μ격 리ν¬μ§ν 리μ μ λ‘λνλ νμμ΄λ€.
- ν
- μ격 리ν¬μ§ν 리μ λ³κ²½μ¬νμ λ‘컬 리ν¬μ§ν 리μ κ°μ Έμ€κ³ μλμΌλ‘ λ³ν©νλ νμμ΄λ€.
- νμΉ
- μ격 리ν¬μ§ν 리μ λ³κ²½ μ¬νμ νμΈλ§ νλ€.
- λ³ν©μ λ³λλ‘ μνν΄μΌ νλ€.
GitHub
- Gitμ κΈ°λ°μΌλ‘ μμ€ μ½λμ κ΄λ ¨ νμΌμ μ μ₯νκ³ κ΄λ¦¬ν μ μλ μΉ κΈ°λ° νΈμ€ν μλΉμ€λ₯Ό μ 곡νλ νλ«νΌμ΄λ€.
- λ²μ κ΄λ¦¬ κΈ°λ₯ μΈμλ μ΄μ νΈλνΉ, μ½λ 리뷰 λ±μ κΈ°λ₯μ μ 곡νμ¬ κ°λ°μλ€μ΄ ν¨κ³Όμ μΌλ‘ νμ ν μ μκ² νλ€.
μμ£Ό μ¬μ©νλ λͺ λ Ήμ΄
-
git init :
.gitνμΌμ μμ±νλ λͺ λ Ήμ΄μ΄λ€. - git clone : μ격 리ν¬μ§ν 리μ λ΄μ©μ λ‘컬 리ν¬μ§ν 리μ 볡μ νλ λͺ λ Ήμ΄μ΄λ€.
- git checkout : νΉμ λΈλμΉλ‘ μ΄λνλ λͺ λ Ήμ΄μ΄λ€.
- git status : νμ¬ λΈλμΉμμ λ³κ²½ μ¬νμ΄ μλ νμΌλ€μ 보μ¬μ£Όλ λͺ
λ Ήμ΄μ΄λ€.
- Untracked μν : gitμ΄ μΆμ νμ§ μλ μν, Untracked filesμ λΉ¨κ°μμΌλ‘ νμ
- Staged μν : Staging Areaμ μλ μν, Changes to be committedμ μ΄λ‘μμΌλ‘ νμ
- Modified μν : νμΌμ λ³κ²½μ¬νμ΄ μλ μν, Changes not staged for commitμ λΉ¨κ°μμΌλ‘ νμ
- git add : Modified μνμ νμΌμ μ€ν μ΄μ§ μμμ μ¬λ¦¬λ λͺ λ Ήμ΄μ΄λ€.
- git commit : 컀λ°μ μννλ λͺ λ Ήμ΄μ΄λ€.
- git push : νΈμλ₯Ό μννλ λͺ λ Ήμ΄μ΄λ€.
- git fetch : νμΉλ₯Ό μννλ λͺ λ Ήμ΄μ΄λ€.
- git pull : νμ μννλ λͺ λ Ήμ΄μ΄λ€.
λ§λ¬΄λ¦¬
μμ¦μ IDEμμ μ 곡ν΄μ£Όλ GIT GUI(?) κ°μ κ±Έλ‘ νΈνκ² νκΈ° λλ¬Έμ λͺ λ Ήμ΄λ μ μ¬μ©νκ³ μμ§ μμ κ² κ°λ€. νμ§λ§ λͺ¨λ κ²μ΄ κ·Έλ¬λ― κΈ°λ³Έμ΄ μ€μνλ€. IDEμμ μ 곡ν΄μ£Όλ κ²λ§μΌλ‘λ ν΄κ²°μ΄ μλλ κ²μ΄ μ‘΄μ¬ν μ μκΈ° λλ¬Έμ κΈ°νκ° λλ€λ©΄ λͺ λ Ήμ΄λ μμ£Ό μ¬μ©ν΄λ³΄λ κ²μ΄ μ’κ² λ€κ³ μκ°μ΄ λ€μλ€. λν, μ’ μμΌλ©΄ νκ³ νλ‘μ νΈλ₯Ό μ§ννλλ° Git Workflowλ ν λ² νμ΅νκ³ μ μ©ν΄λ³΄λ©΄ μ’κ² λ€λ μκ°μ΄ λ€μλ€.