λλλ‘ git νλ¦ μμ λλ μ’ λ£λ₯Ό μνν λ git νλ¦μ λ€μμ λ³΄κ³ ν©λλ€.
μΉλͺ μ : μμ νΈλ¦¬μ λ¨κ³μ λ³κ²½ μ¬νμ΄ ν¬ν¨λμ΄ μμ΅λλ€. μ€λ¨.
κ·Έλ¬λ 컀λ°ν κ²λ μκ³ μ격μΌλ‘ λΉκΈ°κ±°λ νΈμν κ²λ μμ΅λλ€. μμ 볡μ¬λ³Έμ΄ μ΅μ μνμ λλ€.
μ΄ λ¨κ³λ₯Ό μννκΈ° μν΄ "readme.txt" νμΌμ λν λ³κ²½ λ΄μ©μ μλͺ»λ 컀λ°μ μμ±νμ¬ μ΄ λ¬Έμ λ₯Ό ν΄κ²°ν΄μΌ νμ§λ§ μ΄κ²μ μ§λ£¨ν©λλ€. git flow start/finish λͺ λ Ήμ μ°¨λ¨νλ νλͺ©μ νμΈνλ λ° μ¬μ©ν μ μλ λ€λ₯Έ λͺ λ Ήμ΄ μμ΅λκΉ?
μ΄ λ¬Έμ λ‘ μ΄μ΄μ§λ λͺ λ Ήμ μ¬μμ μ 곡νμμμ€. μ΄λ κ² νλ©΄ μ΄ λ¬Έμ μ μμΈμ λΆμνκΈ°κ° λ μ¬μμ§ κ²μ λλ€. κ°λ₯ν ν μ§§κ² μ μ§νμμμ€.
μ΄κ²μ νμΌμ μμ νκ³ μ»€λ°νμ§ μμ λ λ°μν μ μμ΅λλ€. git diff --cached
μ€λΉλ νμΌ μ
git diff --cached
μλ μΆλ ₯μ΄ μμ΅λλ€. μ΄λ€ μμ΄λμ΄, λ¬Έμ λ₯Ό ν΄κ²°νλ λ°©λ²?
λλ κ°μ λ¬Έμ κ° μμ΅λλ€. λΉμ μ μ΄λ€ κ²°μ μ μ°ΎμΌμλκΉ?
κ°μ₯ μ¬μ΄ ν΄κ²°μ± μ λ³κ²½ μ¬νμ 컀λ°νκ³ λ¦¬ν¬μ§ν 리λ₯Ό μμ ν λ€μ λ€μ 볡μ νλ κ²μ λλ€.
μ λ§ κ°μ¬ν©λλ€
λλΆλΆμ μκ° λ²κ·Έλ Eclipse
κΈ°λ° IDEμμ eGit
λ‘ λ°μν©λλ€. git bash
λλ tortoise git
μ΄ μ€λ₯λ λνλμ§ μμ΅λλ€.
git reset --hard origin/masterκ° λΉμ μ μλͺ μ ꡬν μ μμ΅λλ€!
κ·Έλ¬λ μ€ννλ κ²μ λ§€μ° μ΄μν©λλ€.
μμ μν
λͺ
λ Ήμ λ°λ³΅νλ©΄ λ΄ νκ²½μμ μμ μ¬νμΌλ‘ μλν©λλ€. :-)
μ°λ¦¬λ Intellij Idea 13μ μ¬μ©νμ¬ MAC OS Xμμ μμ νλ @georgezlatev μ κ°μ ν¨κ³Όλ₯Ό λ΄κ³ μμ΅λλ€. git-flowκ° μ μμ 컀λ°μ λ±λ‘νμ§ μλ κ² κ°μ΅λλ€ ;-)
μ΄ λ¬Έμ κ° ν΄κ²°λ κΉμ?
νμ λλ ν 리μμ git flow finishλ₯Ό μλν λλ§ μ΄ μ€λ₯κ° λ°μν©λλ€. repos λ£¨νΈ λλ ν 리μμ μλν©λλ€.
건배 μλ€μ
μ΄ μ€λ λλ μ€λλμμ§λ§ λ€λ₯Έ μ¬λλ€μ μ¬μ ν ββμ΄ μ€λ₯κ° λ°μνκ³ μ΄ μ€λ λλ₯Ό μ°Ύμ κ²μ΄λΌκ³ νμ ν©λλ€. SourceTreeλ₯Ό μ¬μ©νκ³ μλλ° μ΄ μ€λ₯κ° λ°μνμ΅λλ€. κΈ°λ₯ λΆκΈ°λ₯Ό λ§μ°μ€ μ€λ₯Έμͺ½ λ²νΌμΌλ‘ ν΄λ¦ν λ€μ κ°λ°/μλ³ΈμΌλ‘ λ³ν©νμ¬ μ΄ λ¬Έμ λ₯Ό ν΄κ²°νμ΅λλ€. 컀λ°λ λ³κ²½ μ¬νμ νΈμνκ³ κΈ°λ₯ λΆκΈ°λ₯Ό μμ ν μ μμμ΅λλ€.
κ°μ₯ μ’μ μ΅μ μ κΈ°λ₯μ μλ£νκΈ° μ μ μ€ν¬λ¦½νΈκ° git μνλ₯Ό μ€ννλ κ²μ λλ€.
if output=$(git status --porcelain) && [ -z "$output" ]; κ·Έ λ€μμ
# λ§μΉλ€
λ λ€λ₯Έ
# μ μ μ€λ₯
νμ΄
릴리μ€/ν«ν½μ€ λΆκΈ°λ₯Ό μλ£ν λλ μ΄κ²μ΄ λ¬Έμ μ λκΉ?
μ. Intellj-Gitflow νλ¬κ·ΈμΈ λ° Bashμμ.
bashμμ 'git status'λ₯Ό μ€ννκ³ κΈ°λ₯/릴리μ€/ν«ν½μ€λ₯Ό μλ£νλ©΄ μλν©λλ€.
SourceTreeμμ SourceTreeκ° λ³κ²½ μ¬νμ΄ μμμ νμνμ λ μ΄ μ€λ₯κ° λ°μνμ΅λλ€(νμ¬ κΈ°λ₯μ μλ£νλ €κ³ νμ΅λλ€). ν°λ―Έλλ‘ μ ννκ³ git μνλ₯Ό μνν λκΉμ§λ 컀λ°λμ§ μμ νμΌμ λν μ ν λ³κ²½μ΄ νμλμμ΅λλ€(SourceTreeμ νμλμ§ μμκΈ° λλ¬Έμ). λ΄κ° νλ‘μ νΈμμ λ³κ²½ν μ¬νμ 2κ°μ .framework νμΌμ κ΅μ²΄νλ κ²μ΄μμ΅λλ€. λ°λΌμ .framework νμΌμ λν λ§μ λ΄λΆ λ³κ²½ μ¬νμ΄ μΈκ΄μ λ°μνμ΅λλ€. κΆκ·Ήμ μΌλ‘ SourceTreeμ μ€λ₯λ μ¬μ€ μ ννμ§λ§ SourceTreeκ° λ΄ κΈ°λ₯ λΆκΈ°λ₯Ό μλ£νμ§ λͺ»νκ² νλ μ΄ λ³κ²½ μ¬νμ νμν μ μλ€λ μ μ μ€λ§νμ΅λλ€.(
λλ git status λ₯Ό νμΈνμ¬ unstages λ³κ²½ μ¬νμ΄ λ¬΄μμΈμ§ νμΈνλ λ° λμμ΄ λ©λλ€.
git reset --hard
λ μ΄λ¬ν κ²½μ°μ ν¨κ³Όμ μ
λλ€.
git reset --hard git status μ 컀λ°λμ§ μμ λ³κ²½ μ¬νμ΄ νμλμ§ μμκΈ° λλ¬Έμ μ μκ² ν¨κ³Όμ μ΄μμ΅λλ€.
ν°λ―Έλμμ λ€μ λͺ λ Ήμ μννμμμ€.
git status
git add .
git status
git commit -m 'Commit typechanges'
κ·Έκ²μ λλ₯Ό μν΄ μ μλν©λλ€ ;)
λλ κ°μ λ¬Έμ κ° μμλ€. κΈ°λ₯ λΆκΈ°λ₯Ό 컀λ°ν μ μμμ§λ§ 'κΈ°λ₯ λ§λ¬΄λ¦¬'λ₯Ό μνν μ μμμ΅λλ€. λ£¨νΈ λλ ν λ¦¬λ‘ μ ννμ¬ git flow feature finishλ₯Ό μ€ννμ΅λλ€.
κ°μ₯ μ μ©ν λκΈ
ν°λ―Έλμμ λ€μ λͺ λ Ήμ μννμμμ€.
κ·Έκ²μ λλ₯Ό μν΄ μ μλν©λλ€ ;)