Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Node.js Package Management
Shuhei Kagawa
February 19, 2015
Programming
0
78
Node.js Package Management
Node.js には詳しくないけど Grunt などでしょうがなく使っている人向けの npm の話。
Shuhei Kagawa
February 19, 2015
Tweet
Share
More Decks by Shuhei Kagawa
See All by Shuhei Kagawa
shuhei
0
280
shuhei
1
360
shuhei
8
1.6k
shuhei
0
130
shuhei
0
7.7k
shuhei
0
4.9k
shuhei
0
630
shuhei
1
2.8k
shuhei
2
130
Other Decks in Programming
See All in Programming
kyoheig3
0
420
chichou
1
830
xrdnk
0
130
mu2in
0
140
itosho525
0
140
azdaroth
0
160
cwozaki
1
1.8k
makicamel
1
180
ufoo68
1
170
line_developers_tw2
0
690
mizdra
7
4.8k
line_developers_tw
0
500
Featured
See All Featured
chriscoyier
499
130k
productmarketing
5
650
bkeepers
321
53k
hannesfritz
27
930
moore
125
21k
imathis
478
150k
mojombo
358
62k
roundedbygravity
84
7.8k
lara
16
2.6k
rocio
155
11k
jonyablonski
14
1.1k
thoeni
4
550
Transcript
Node.js ͷύοέʔδ ཧ 2015/2/19 @ M3 Tech Talk Shuhei Kagawa
• ϑϩϯτΤϯυͷϏϧυʹ Grunt Λ͍ͬͯΔɻ • ϩʔΧϧͰޭ͍ͯ͠ΔͷʹɺJenkins ͰϏϧυ ͕ࣦഊ͢Δɾɾɾɻ
npm • npmjs.com • 12 ສ ύοέʔδɺ1754 ສμϯϩʔυ/ • ϓϩδΣΫτͷ
package.json ͱ͍͏ϑΝΠϧʹґଘ ϞδϡʔϧΛهड़ɻ • npm install ͢ΔͱϓϩδΣΫτσΟϨΫτϦҎԼͷ node_modules ͱ͍͏σΟϨΫτϦʹΠϯετʔϧ͞ ΕΔɻ
UNIX ֶ Write programs that do one thing and do
it well ؔҰݸ͚ͩͷϞδϡʔϧ݁ߏ͋Δɻ
ࣗͷϓϩδΣΫτ ௨ৗɺͬͱ͘ਂ͘ ωετ͍ͯ͠Δ
ґଘϞδϡʔϧͷࢦఆ • package.json ʹόʔδϣϯͱͱʹهड़ɻ • ϑΝδʔͳόʔδϣϯࢦఆ͕σϑΥϧτʢnpm install —saveʣɻ • ~1.2.3
= 1.2.3 Ҏ্ 1.3.0 ະຬ ^1.2.3 = 1.2.3 Ҏ্ 2.0.0 ະຬ ^0.2.3 = 0.2.3 Ҏ্ 0.3.0 ະຬ • semver ͕ ݫີʹकΒΕ͍ͯΕ breaking change ͳ͍ ͣɾɾɾ • ͪΖΜී௨ʹࢦఆ͢Δ͜ͱ͕Ͱ͖Δɻ
ґଘύοέʔδͷ όʔδϣϯݻఆ • ϓϩδΣΫτ͕ґଘ͢ΔϥΠϒϥϦͷόʔδϣ ϯݻఆͰ͖Δɻ • ͕ɺϥΠϒϥϦ͕ґଘ͍ͯ͠ΔϥΠϒϥϦʢଙҎԼʣ ͷόʔδϣϯࢦఆͰ͖ͳ͍ʂʂʂ
npm shrinkwrap • node_modules ͷύοέʔδͷόʔδϣϯΛ npm-shrinkwrap.json ʹอଘɻ • ͜ΕΛόʔδϣϯཧ͢ΕɺͲ͜Ͱ·Ͱಉ ͡όʔδϣϯͷύοέʔδΛΠϯετʔϧͰ͖Δɻ
• ͙͢Կઍߦͱ͔ʹͳΔ͚Ͳɾɾɾɻ
·ͱΊ • খ͍͞Ϟδϡʔϧ͕ͨ͘͞Μωετ͍ͯ͠Δɻ • ௨ৗɺଙҎԼͷϞδϡʔϧόʔδϣϯݻఆͰ͖ͳ ͍ɻ • Ͳ͏ͯ͠ݻఆ͚ͨ͠Ε npm shrinkwrapɻ