πŸ“š Study/DevOps

Git Stashλž€ λ¬΄μ—‡μΈκ°€μš”?

kkh1902 2023. 6. 8. 20:13
728x90
λ°˜μ‘ν˜•

μ œκ°€ Git stash에 λŒ€ν•΄ μ„€λͺ…ν•΄λ“œλ¦¬κ³  λΈ”λ‘œκ·Έ 글을 μž‘μ„±ν•΄λ“œλ¦¬κ² μŠ΅λ‹ˆλ‹€.

 

---

Git은 μ½”λ“œ λ³€κ²½ 사항을 κΈ°λ‘ν•˜κ³  버전 κ΄€λ¦¬ν•˜λŠ” 데 μ‚¬μš©λ˜λŠ” λΆ„μ‚° 버전 관리 μ‹œμŠ€ν…œμž…λ‹ˆλ‹€. μž‘μ—… μ€‘μ—λŠ” λ‹€λ₯Έ 브랜치둜 μ „ν™˜ν•΄μ•Ό ν•˜κ±°λ‚˜, μž‘μ—… 쀑인 μ½”λ“œλ₯Ό μ»€λ°‹ν•˜κΈ°μ— μ μ ˆν•œ μ‹œμ μ΄ 아닐 수 μžˆμŠ΅λ‹ˆλ‹€. 이런 κ²½μš°μ— Git stash κΈ°λŠ₯을 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

Git stashλŠ” ν˜„μž¬ μž‘μ—… λ””λ ‰ν† λ¦¬μ˜ λ³€κ²½ 사항을 μΌμ‹œμ μœΌλ‘œ μ €μž₯ν•˜κ³ , κΉ¨λ—ν•œ μž‘μ—… 트리둜 λŒμ•„κ°ˆ 수 있게 ν•΄μ£ΌλŠ” κΈ°λŠ₯μž…λ‹ˆλ‹€. 이λ₯Ό 톡해 λ³€κ²½ 사항을 λ³΄κ΄€ν•˜κ³  λ‚˜μ€‘μ— λ‹€μ‹œ μ μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 

Git stash의 μ‚¬μš©λ²•

 

1. λ³€κ²½ 사항을 μŠ€νƒœμ‹œν•˜κΈ°

λ³€κ²½ 사항이 μžˆλŠ” μž‘μ—… λ””λ ‰ν† λ¦¬μ—μ„œ λ‹€μŒ λͺ…령을 μ‹€ν–‰ν•˜μ—¬ λ³€κ²½ 사항을 μŠ€νƒœμ‹œν•©λ‹ˆλ‹€.

 

$git stash

 

 

이 λͺ…령은 ν˜„μž¬μ˜ λ³€κ²½ 사항을 μŠ€νƒœμ‹œν•˜κ³ , κΉ¨λ—ν•œ μž‘μ—… 트리둜 λŒμ•„κ°‘λ‹ˆλ‹€.

 

 

2. μŠ€νƒœμ‹œ λͺ©λ‘ 보기

 

μŠ€νƒœμ‹œ λͺ©λ‘μ„ ν™•μΈν•˜λ €λ©΄ λ‹€μŒ λͺ…령을 μ‹€ν–‰ν•©λ‹ˆλ‹€.

$git stash list

 

이 λͺ…령을 톡해 μŠ€νƒœμ‹œλœ λ³€κ²½ μ‚¬ν•­μ˜ λͺ©λ‘κ³Ό 각 μŠ€νƒœμ‹œμ— λŒ€ν•œ κ³ μœ ν•œ μ‹λ³„μžλ₯Ό 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

 

 

3. μŠ€νƒœμ‹œ μ μš©ν•˜κΈ°

 

μŠ€νƒœμ‹œλœ λ³€κ²½ 사항을 λ‚˜μ€‘μ— λ‹€μ‹œ μ μš©ν•˜λ €λ©΄ λ‹€μŒ λͺ…령을 μ‹€ν–‰ν•©λ‹ˆλ‹€.

$git stash apply <stash_id>

 

μ—¬κΈ°μ„œ `<stash_id>`λŠ” μ μš©ν•  μŠ€νƒœμ‹œμ˜ κ³ μœ ν•œ μ‹λ³„μžμž…λ‹ˆλ‹€. μŠ€νƒœμ‹œλŠ” κ°€μž₯ μ΅œμ‹  μŠ€νƒœμ‹œλΆ€ν„° 순차적으둜 μ μš©λ©λ‹ˆλ‹€. λ§Œμ•½ ``λ₯Ό μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ κ°€μž₯ μ΅œμ‹  μŠ€νƒœμ‹œκ°€ μ μš©λ©λ‹ˆλ‹€.

 

4. μŠ€νƒœμ‹œ μ œκ±°ν•˜κΈ°

μŠ€νƒœμ‹œλ₯Ό μ œκ±°ν•˜λ €λ©΄ λ‹€μŒ λͺ…령을 μ‹€ν–‰ν•©λ‹ˆλ‹€.

 

$git stash drop <stash_id>

 

 

μ—¬κΈ°μ„œ `<stash_id>`λŠ” μ œκ±°ν•  μŠ€νƒœμ‹œμ˜ κ³ μœ ν•œ μ‹λ³„μžμž…λ‹ˆλ‹€. μŠ€νƒœμ‹œλŠ” μ œκ±°λ˜λ©΄μ„œ 볡ꡬ할 수 μ—†μœΌλ―€λ‘œ μ£Όμ˜κ°€ ν•„μš”ν•©λ‹ˆλ‹€.

Git stashλŠ” μž‘μ—… 쀑인 λ³€κ²½ 사항을 μΌμ‹œμ μœΌλ‘œ μ €μž₯ν•˜κ³  브랜치 μ „ν™˜ λ˜λŠ” μ½”λ“œ 컀밋 μ‹œμ μ„ μœ μ—°ν•˜κ²Œ λ‹€λ£° 수 있게 ν•΄ μ€λ‹ˆλ‹€. 이λ₯Ό 톡해 μ½”λ“œ λ³€κ²½ 사항을 잘 κ΄€λ¦¬ν•˜κ³ , 효율적인 μž‘μ—… 흐름을 μœ μ§€ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 

 

---

μœ„ λ‚΄μš©μœΌλ‘œ Git stash에 λŒ€ν•œ λΈ”λ‘œκ·Έ 글을 μž‘μ„±ν•˜μ‹œλ©΄ λ©λ‹ˆλ‹€. λ‚΄μš©μ„ ν•„μš”μ— 따라 λ³΄μ™„ν•˜κ±°λ‚˜ μ˜ˆμ‹œ μ½”λ“œλ₯Ό μΆ”κ°€ν•˜λ©΄ λ…μžλ“€μ΄ μ΄ν•΄ν•˜κΈ° μ‰¬μšΈ κ²ƒμž…λ‹ˆλ‹€.

728x90
λ°˜μ‘ν˜•