[NPM] CI vs Install

고석진
2 min readJan 26, 2021

--

πŸš΄β€β™€οΈ

npm install

  • package.json 을 기반으둜 νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•œλ‹€.
  • package-lock.json νŒŒμΌμ— 영ν–₯을 μ€€λ‹€.

npm ci

  • node_modules λ₯Ό μ‚­μ œν•œλ‹€.
  • package-lock.json 을 κΈ°μ€€μœΌλ‘œ νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•œλ‹€.
  • package-lock.json 파일이 μ—†λ‹€λ©΄ λ™μž‘ν•˜μ§€ μ•ŠλŠ”λ‹€.
  • package-lock.json 에 영ν–₯을 주지 μ•ŠλŠ”λ‹€.
  • package-lock.json 에 κ³ μ •λœ νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•˜κΈ° λ•Œλ¬Έμ— μ•ˆμ •μ μΈ λΉŒλ“œκ°€ κ°€λŠ₯ν•˜λ‹€. CI λ‹¨κ³„μ—μ„œ μ‚¬μš©ν•œλ‹€.

package-lock.json 파일이 쑴재 ν•  λ•Œ

^ 을 μ‚¬μš©ν•˜μ—¬ 버전을 μ§€μ •ν•˜λ”λΌλ„ lock νŒŒμΌμ— 적힌 버전보닀 μ•„λž˜ 버전이라면 lock νŒŒμΌμ— 적힌 버전을 μ΅œμ‹  λ²„μ „μœΌλ‘œ νŒλ‹¨ν•˜μ—¬ κΈ°λ‘ν•œλ‹€.

1. npm install (^1.0.0) -> install λ‹Ήμ‹œ (ν•΄λ‹Ή 라이브러리의 μ΅œμ‹  버전이 1.1.1일 λ•Œ) -> lock 파일 1.1.1 기둝
2. package.json (라이브러리 버전 ^1.0.4) 둜 λ³€κ²½ -> npm install -> lock 파일 1.1.1 둜 λ³€κ²½ μ—†μŒ
3. package.json(^1.2.1)둜 λ³€κ²½ -> npm install -> 1.2.1 둜 λ³€κ²½

νŒ¨ν‚€μ§€ 버전이 1.0.0 에 λ„λ‹¬ν•˜μ§€ λͺ»ν•œ 경우

^ κ·œμΉ™μ˜ 경우 1.0.0 에 μ΄μƒμ˜ 버전을 가진 νŒ¨ν‚€μ§€μ—μ„œλ§Œ λ™μž‘ν•œλ‹€.
1.0.0 λ²„μ „μ΄ν•˜μ˜ 경우 patch 버전 μ—…λ°μ΄νŠΈλ§Œ λ°˜μ˜λœλ‹€.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

고석진
고석진

Written by 고석진

μžλ°”μŠ€ν¬λ¦½νŠΈλ₯Ό μ‚¬λž‘ν•˜λŠ” ν”„λ‘ νŠΈ 개발자 μž…λ‹ˆλ‹€ :)

No responses yet

Write a response