πŸ“–package.json semver λ²”μœ„ 해석기

λ²”μœ„ λ¬Έμžμ—΄ ν•˜λ‚˜λ₯Ό κ΅¬κ°„μœΌλ‘œ λ°”κΏ” ν—ˆμš©Β·μ œμ™Έλ˜λŠ” λ²„μ „κΉŒμ§€ ν’€μ–΄ μ€λ‹ˆλ‹€

package.json 의 dependencies 에 적힌 값을 κ·ΈλŒ€λ‘œ λΆ™μ—¬ λ„£μœΌμ„Έμš”. || 둜 이어진 λ²”μœ„λ„ 각각 ν’€μ–΄ μ€λ‹ˆλ‹€.

κ΄€λ ¨λœ 도ꡬ

package.json 의 λ²”μœ„ ν•œ 쀄이 μ‹€μ œλ‘œ ν—ˆμš©ν•˜λŠ” 버전

μ˜μ‘΄μ„± λͺ©λ‘μ— 적힌 ^1.2.3 이 μ–΄λ””κΉŒμ§€ μ˜¬λΌκ°€λŠ”μ§€λŠ” κΈ°ν˜Έλ§ˆλ‹€ κ·œμΉ™μ΄ 달라 ν—·κ°ˆλ¦½λ‹ˆλ‹€. λ²”μœ„ λ¬Έμžμ—΄μ„ ν•˜λ‚˜ λ„£μœΌλ©΄ >=Β·< κ΅¬κ°„μœΌλ‘œ λ°”κΏ” 보여 μ£Όκ³ , ν•˜ν•œκ³Ό μƒν•œμ΄ 경계λ₯Ό ν¬ν•¨ν•˜λŠ”μ§€, ν—ˆμš©λ˜λŠ” 버전과 μ œμ™Έλ˜λŠ” λ²„μ „μ˜ 예, μ—…λ°μ΄νŠΈκ°€ μ–΄λ””κΉŒμ§€ 올라갈 수 μžˆλŠ”μ§€λ₯Ό μ •λ¦¬ν•©λ‹ˆλ‹€. λΉ„κ΅μžλ³„ 해섀도 ν‘œλ‘œ ν•¨κ»˜ λ‚˜μ˜΅λ‹ˆλ‹€.

해석은 semver λ²”μœ„ κ·œμΉ™μ„ κ·ΈλŒ€λ‘œ λ”°λ¦…λ‹ˆλ‹€. μΊλŸΏμ€ μ™Όμͺ½μ—μ„œ 0 이 μ•„λ‹Œ 첫 자리λ₯Ό κ³ μ •ν•˜λ―€λ‘œ ^1.2.3 은 2.0.0 미만, ^0.2.3 은 0.3.0 미만, ^0.0.3 은 0.0.4 λ―Έλ§Œμž…λ‹ˆλ‹€. ν‹Έλ“œλŠ” 패치만 올리고, μƒλž΅ν•œ μžλ¦¬μ™€ x λŠ” κ·Έ 자리 전체λ₯Ό λœ»ν•˜λ©°, || λŠ” ꡬ간을 ν•©μ§‘ν•©μœΌλ‘œ μž‡μŠ΅λ‹ˆλ‹€. ν”„λ¦¬λ¦΄λ¦¬μŠ€ 버전은 λ²”μœ„μ— κΈ°λ³Έ ν¬ν•¨λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

이 λ„κ΅¬λŠ” λ²”μœ„ ν•˜λ‚˜λ₯Ό ν’€μ–΄ μ„€λͺ…ν•˜λ©°, λ²”μœ„ 두 개의 포함 관계λ₯Ό λΉ„κ΅ν•˜λŠ” 일은 ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. ν”„λ¦¬λ¦΄λ¦¬μŠ€ νƒœκ·Έμ™€ ν•˜μ΄ν”ˆ λ²”μœ„λŠ” ν•΄μ„ν•˜μ§€ μ•Šκ³  λ°˜λ €ν•©λ‹ˆλ‹€. μ‹€μ œ μ„€μΉ˜ 버전은 λ ˆμ§€μŠ€νŠΈλ¦¬μ— μ˜¬λΌκ°„ λͺ©λ‘κ³Ό νŒ¨ν‚€μ§€ λ§€λ‹ˆμ € 해석기가 κ²°μ •ν•©λ‹ˆλ‹€. 2026λ…„ 10μ›” κΈ°μ€€μž…λ‹ˆλ‹€.

자주 λ¬»λŠ” 질문

^1.2.3 은 κ²°κ΅­ μ–΄λ””κΉŒμ§€ μ„€μΉ˜λ˜λ‚˜μš”?

1.2.3 이상 2.0.0 λ―Έλ§Œμž…λ‹ˆλ‹€. μΊλŸΏμ€ μ™Όμͺ½μ—μ„œ 0 이 μ•„λ‹Œ 첫 자리λ₯Ό κ³ μ •ν•˜λ―€λ‘œ 메이저가 1 둜 묢이고, 1.9.9 κΉŒμ§€λŠ” μ˜¬λΌκ°€μ§€λ§Œ 2.0.0 은 λ“€μ–΄μ˜€μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

~1.2 와 ^1.2 λŠ” μ–΄λ–»κ²Œ λ‹€λ₯Έκ°€μš”?

ν‹Έλ“œλŠ” 패치 자리만 μ˜¬λ¦¬λ―€λ‘œ 1.2.0 이상 1.3.0 λ―Έλ§Œμž…λ‹ˆλ‹€. μΊλŸΏμ€ 메이저λ₯Ό κ³ μ •ν•˜λ―€λ‘œ 1.2.0 이상 2.0.0 미만이 λ˜μ–΄ λ§ˆμ΄λ„ˆ μ—…λ°μ΄νŠΈκΉŒμ§€ λ°›μ•„λ“€μž…λ‹ˆλ‹€.

버전 자리λ₯Ό μƒλž΅ν•˜λ©΄ μ–΄λ–»κ²Œ μ½νžˆλ‚˜μš”?

μƒλž΅ν•œ μžλ¦¬λŠ” μ™€μΌλ“œμΉ΄λ“œμ²˜λŸΌ κ·Έ 자리 전체λ₯Ό λœ»ν•©λ‹ˆλ‹€. 1.2 λŠ” 1.2.0 이상 1.3.0 미만이고 1 은 1.0.0 이상 2.0.0 λ―Έλ§Œμž…λ‹ˆλ‹€. 1.2.x 도 1.2 와 κ°™μŠ΅λ‹ˆλ‹€.