Git - gksrlfw/study GitHub Wiki
Git
μ΄λ λ μ μ₯μμ λν κ΄κ³λ₯Ό νννλ μ©μ΄μ λλ€. push μ pull μ κΈ°μ€μΌλ‘ A μμ B λ‘ push νλ€λ©΄ B κ° upstream μ΄ λ©λλ€.
μλ₯Ό λ€μ΄ B μ μ μ₯μλ₯Ό fork νλ€λ©΄, B μ μ μ₯μκ° upstream μ΄ λ©λλ€. (νμΈνμ) λ§μΌ μ격μ μ₯μμ λ‘컬μ μ₯μμ κ΄κ³μμλ μ격μ μ₯μκ° upstream μ λλ€.
λ³΄ν΅ λ‘컬μ μ₯μμμ branch λ₯Ό μμ±νκ³ μ¬κΈ°μ μμ ν 컀λ°μ μ격μ μ₯μμ push ν λ, μ΄λ μ μ₯μλ‘ push ν΄μΌλ μ§ λͺ¨λ₯΄λ―λ‘ μλμ κ°μ΄ μμ±ν΄μΌ ν©λλ€.
git push origin feature/-
νμ§λ§ upstream μ 미리 μ μ©ν΄μ£Όλ©΄ μλμ²λΌ push λͺ λ Ήλ§ ν΄μ£Όλ©΄ λ©λλ€.
git push
μ€μ νλ λ°©λ²μ μλμ κ°μ΅λλ€.
- default λ‘ νμ¬ λΈλμΉ μ΄λ¦μ upstream μΌλ‘ μ§μ ν©λλ€.
git config --global push.default current
current μ΄μΈμ μ¬λ¬ μ€μ μ΄ μμ΅λλ€. νμνλ©΄ νμΈν©μλ€.
- μ§μ μ€μ ν μ μμ΅λλ€.
git branch --set-upstream-to=origin/<branch> <local branch>
git flow λ λΈλμΉλ₯Ό ν¨μ¨μ μΌλ‘ κ΄λ¦¬νκΈ° μν΄ μ¬μ©νλ κ·μΉμ λλ€. μ¬κΈ°μλ git flow μ κ°λ μ΄ μλ, git μμ μ 곡νλ git flow κΈ°λ₯ μ€ release μ λμμ λν΄ μμ±ν©λλ€.
- git flow release start dev λΈλμΉμμ release λΈλμΉλ₯Ό λ§λ€λ‘ checkout ν©λλ€.
- κ°λ°μλ release λΈλμΉμμ μνλ μμ μ μ§νν©λλ€. (ex. version update)
- git flow release finish release λΈλμΉλ₯Ό main μ merge ν©λλ€. κ·Έλ¦¬κ³ tag release- μ λ§λ€κ³ dev μ merge ν©λλ€. release λΈλμΉλ μμ λκ³ dev λ‘ checkout ν©λλ€.
μ΄νμλ main, dev λ ν¬μ§ν 리μ push νκ³ , tag λ₯Ό push νμ¬ production μ λ°°ν¬ν μ μμ΅λλ€.
git μμ tag λ νΉμ 컀λ°μ λν λ λ€λ₯Έ μ΄λ¦μ λλ€. 컀λ°μ checkout νμ¬ λ΄μ©μ μμ ν μ μμ§λ§ tag λ μμ λΆκ°λ₯ν©λλ€. λͺ©μ μ΄ μ ν΄μ Έμμ§λ μμ§λ§ λ³΄ν΅ λ²μ μ release ν λ μ¬μ©ν©λλ€. μ ν 1.0 μ΄ λ¦΄λ¦¬μ¦ λ λ νκΉ μ ν©λλ€. μ΄ν, 1.1 λ²μ μ κ°λ°ν λλ 컀λ°μΌλ‘λ§ κ΄λ¦¬νλ€κ° 1.1 μ΄ μμ±λλ©΄ λ€μ νκΉ νκ³ λ¦΄λ¦¬μ¦ν©λλ€.