Search

Git cherry-pick

Git Cherry-pick

Git Cherry-pick은 νŠΉμ • 컀밋을 μ„ νƒν•˜μ—¬ ν˜„μž¬ λΈŒλžœμΉ˜μ— μ μš©ν•˜λŠ” κΈ°λŠ₯으둜, λ‹€λ₯Έ 브랜치의 νŠΉμ • λ³€κ²½μ‚¬ν•­λ§Œ κ°€μ Έμ˜¬ 수 μžˆμŠ΅λ‹ˆλ‹€.
Cherry-pickμ΄λž€? Cherry-pick은 말 κ·ΈλŒ€λ‘œ "체리λ₯Ό 골라 λ¨ΉλŠ”λ‹€"λŠ” 의미둜, λ‹€λ₯Έ λΈŒλžœμΉ˜μ— μžˆλŠ” μ—¬λŸ¬ 컀밋 μ€‘μ—μ„œ μ›ν•˜λŠ” μ»€λ°‹λ§Œ μ„ νƒν•΄μ„œ ν˜„μž¬ λΈŒλžœμΉ˜μ— μ μš©ν•˜λŠ” 것을 λ§ν•©λ‹ˆλ‹€.
β€’
전체 브랜치λ₯Ό λ³‘ν•©ν•˜μ§€ μ•Šκ³ λ„ νŠΉμ • κΈ°λŠ₯μ΄λ‚˜ 버그 μˆ˜μ •λ§Œμ„ κ°€μ Έμ˜¬ 수 μžˆμ–΄ 맀우 μœ μš©ν•©λ‹ˆλ‹€.
β€’
각 컀밋은 κ³ μœ ν•œ ν•΄μ‹œκ°’(컀밋 ID)을 κ°€μ§€κ³  μžˆμ–΄μ„œ μ •ν™•ν•œ 컀밋을 μ§€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
β€’
Cherry-pick을 μ‚¬μš©ν•˜λ©΄ λΆˆν•„μš”ν•œ 컀밋 없이 ν•„μš”ν•œ λ³€κ²½μ‚¬ν•­λ§Œ κΉ”λ”ν•˜κ²Œ μ μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

Git Cherry-pick λͺ…λ Ήμ–΄

κΈ°λ³Έ λͺ…λ Ήμ–΄

git cherry-pick <μ»€λ°‹ν•΄μ‹œ>
Bash
볡사
μ§€μ •ν•œ 컀밋을 ν˜„μž¬ λΈŒλžœμΉ˜μ— μ μš©ν•©λ‹ˆλ‹€.
컀밋 ν•΄μ‹œλŠ” ν•„μˆ˜κ°’μœΌλ‘œ, μ μš©ν•˜κ³ μž ν•˜λŠ” μ»€λ°‹μ˜ ν•΄μ‹œλ₯Ό λ°˜λ“œμ‹œ μ§€μ •ν•΄μ•Ό ν•©λ‹ˆλ‹€.

Cherry-pick μ˜΅μ…˜

μ˜΅μ…˜
μ„€λͺ…
-e
컀밋 λ©”μ‹œμ§€λ₯Ό νŽΈμ§‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
-n
μ»€λ°‹ν•˜μ§€ μ•Šκ³  λ³€κ²½μ‚¬ν•­λ§Œ μŠ€ν…Œμ΄μ§• μ˜μ—­μ— μΆ”κ°€ν•©λ‹ˆλ‹€.
-x
컀밋 λ©”μ‹œμ§€μ— 원본 컀밋 정보λ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
--continue
좩돌 ν•΄κ²° ν›„ cherry-pick을 계속 μ§„ν–‰ν•©λ‹ˆλ‹€.
--abort
cherry-pick μž‘μ—…μ„ μ·¨μ†Œν•˜κ³  이전 μƒνƒœλ‘œ λŒμ•„κ°‘λ‹ˆλ‹€.
--skip
ν˜„μž¬ 컀밋을 κ±΄λ„ˆλ›°κ³  λ‹€μŒ 컀밋을 μ§„ν–‰ν•©λ‹ˆλ‹€.