Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Carton を既存の環境に入れるまで入れてから
Search
soh335
February 22, 2014
0
220
Carton を既存の環境に入れるまで入れてから
soh335
February 22, 2014
Tweet
Share
More Decks by soh335
See All by soh335
React Native in Nature
soh335
1
1.4k
Nature での React Native アプリの運用について / React Native App in Nature
soh335
7
1.6k
perl な web application のためのテスト情報
soh335
5
3.6k
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
How STYLIGHT went responsive
nonsquared
100
5.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Thoughts on Productivity
jonyablonski
69
4.7k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
17
940
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Producing Creativity
orderedlist
PRO
346
40k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Transcript
$BSUPOΛطଘͷڥʹೖΕΔ·Ͱ ೖΕ͔ͯΒ TPI ZPLPIBNBQN
DBSUPOԽ͢Δඞ༻͕͋ͬͨ ֤αʔόͰNPEVMFͷWFSTJPO͕৯͍ҧͬͯΔ Մೳੑ͕͋ͬͨ αʔόҠߦͱ͔͋ͬͨ
QSFQBSFGPSDBSUPO
ݱঢ়ͷDQBOpMF͔ΒDBSUPOԽΛࢼΈΔ ݹ͍WFSTJPOΛͬͯΔNPEVMFैग़དྷ ͦ͏͔ௐΔ DQBOpMFͳ͍ͱೖͬͯΔNPEVMF͔Βੜͨ͠ ΓͰΊΜͲͦ͘͞͏ͩ
DBSUPOJOTUBMM DBSUPOJOTUBMMͰTOBQTIPU࡞ͬͯEFQMPZ TFSWFSతͳͱ͜ΖͰDBSUPOJOTUBMM EFQMPZNFOUͯ͠MPDBMશ෦ࢃ͘ TOBQTIPU࡞ΔڥͱEFQMPZ͞ΕΔڥ͕ಉ͡ ํ͕ྑ͍ͱࢥ͍·͢ɻ
*NBHFSQSPCMFN
*NBHFSΛJOTUBMM͢Δͱɺ͠ *NBHFS'JMF 1/(c(*'c+1&( JOTUBMMग़དྷΔ Α͏Ͱ͋ΕೖΕΔɻೖΒͳ͍Α͏ͳΒೖΕͳ ͍ɻ DQBON*NBHFS'JMF1/(Έ͍ͨͳ͜ͱग़དྷ Δ
requires ‘Imager’; requires ‘Imager::File::PNG’;
requires ‘Imager’; requires ‘Imager::File::PNG’; MJCQOH͕͋Δ߹ *NBHFSΛJOTUBMMͨ࣌͠Ͱ *NBHFS'JMF1/(JOTUBMM͞Ε Δ *NBHFS'JMF1/(طʹ͋Δ ͷͰ໌ࣔతʹೖΕͨ͜ͱʹͳΒͳ͍
VQUPEBUF DQBOpMFTOBQTIPUʹه͞Εͣ DBSUPODIFDL͕௨Βͳ͍
requires ‘Imager’; requires ‘Imager::File::PNG’; MJCQOH͕ͳ͍߹ *NBHFSΛJOTUBMMͨ࣌͠Ͱ *NBHFS'JMF1/(JOTUBMM͞ Εͳ͍ MJCQOH͕ͳ͍ͷͰ*NBHFS'JMF1/( JOTUBMMग़དྷͣFSSPSʹͳΔ
requires ‘Imager’;
requires ‘Imager’; *NBHFSΛJOTUBMMͨ࣌͠Ͱ *NBHFS'JMF1/(JOTUBMM͞Ε Δ MJCQOH͕͋Δ߹
requires ‘Imager’; *NBHFS'JMF1/(͕͑Δ ͔Ͳ͏͔DBSUPO͚ͩͰஅ ͕͚ͭΒΕͳ͍ MJCQOH͕ͳ͍߹ *NBHFSΛJOTUBMMͨ࣌͠Ͱ *NBHFS'JMF1/(JOTUBMM͞ Εͳ͍
*NBHFS'JMF1/(͕DBSUPOʹه͞Εͯ DBSUPODIFDLग़དྷΔͷ͕͍͍͚Ͳʜ MJCQOHͱ͔ͪΌΜͱೖΔΑ͏ʹαʔόߏங͞Ε ͯΔલఏͱͯ͠requires ‘Imager::File::PNG’ ॻ͔ͳ͍΄͏͕ྑ͍ʜ use_ok ‘Imager::File::PNG’ IUUQTPIIBUFOBCMPHDPNFOUSZ
5JNF1JFDF.Z42- QSPCMFN
requires 'Time::Piece', '>= 1.21'; requires 'Time::Piece::MySQL';
# carton snapshot format: version 1.0 DISTRIBUTIONS Time-Piece-1.23 pathname: R/RJ/RJBS/Time-Piece-1.23.tar.gz
provides: Time::Piece 1.23 Time::Seconds 1.23 requirements: Exporter 5.57 ExtUtils::MakeMaker 0 Time-Piece-MySQL-0.06 pathname: K/KA/KASEI/Time-Piece-MySQL-0.06.tar.gz provides: Time::Piece 0.06 Time::Piece::MySQL 0.06 requirements: ExtUtils::MakeMaker 0 Test::More 0.47 Time::Piece 1.03
$ carton install —deployment Installing modules using /path/to/cpanfile (deployment mode)
Found Time::Piece 0.06 which doesn't satisfy 1.21. ! Installing the dependencies failed: Installed version (1.20_01) of Time::Piece is not in range '1.21' ! Bailing out the installation for /path/to/. Installing modules failed
GBJMʜʜ
None
None
࡞ऀͷਓʹͳ͓ͯ͠Β͍͔ͬͯ͘͠ͳ͍͔ͳ ʜ 5FTU.PDL-81Ͱಉ͕͋ͬͨ͡Έ͍ͨ IUUQTIJCBZVIBUFOBCMPHDPNFOUSZ IUUQTPIIBUFOBCMPHDPNFOUSZ
TFUVQDBSUPO
GBUQBDL YT͕ೖΔ͚Ͳͳ͍͚Ͳ.͙ Β͍͋Δ HMPCBMʹDQBON$BSUPO DQBONPEVMFCPPUTUSBQ IUUQ XFCMPHCVMLOFXTOFUQPTU NJZBHBXBDQBONPEVMFCPPUTUSBQ
IUUQTIJCBZVIBUFOBCMPHDPNFOUSZ
*TDBSUPOSFBEZ
$*ͰQBTT͢ΔΑ͏ʹ ࣾͷϦΫΤετ͚ͩDBSUPO͍ΕͨTFSWFSʹ ͚Δ Ұ෦ͷTFSWFSΛDBSUPOͰಈ͔ͯ͠֎͔ΒͷϦ ΫΤετΛগͳΊʹͯͯΈΔ MPH NFNPSZ DQVFUDʜ XPSLFSͱ͔
LBHFతͳͷ͕͋Εָͳͷ͔ͳʁ HMPCBMͳͷݟΔͷͰ࠷ѱNPEVMF͕ݟ͔ͭ Βͳ͍͍ͬͯ͏Τϥʔͳ͍ͣʜ
BGUFSJOTUBMMFE
DBSUPOFYFDʜ`TDPTU
ͱ͋ΔαʔόͰDBSUPO͍Ε͔ͯΒDQVෛՙ͕ มΘͬͨ αʔόࢹͷҝʹසൟʹىಈ͞ΕΔεΫϦϓτ ΛDBSUPOFYFD͍ͯ͠Δͷ͕ݪҼͩͬͨ
None
͚ͩ͜͜ൈ͖ग़ͨ͠TIFMM TDSJQU͚ͩ༻ҙʜ
DBSUPOXJUI$*
IUUQXXXTPOHNVKQSJKJ FOUSZ DBSUPOIUNM
$ ( branch A ) carton install ! $ (
branch B ) echo “requires ‘Teng’;” > cpanfile $ ( branch B ) carton install # Teng installed to ./local/lib/perl5 # cpanfile.snapshot is updated ! $ ( branch A ) carton install # cpanfile.snapshot is updated
DBSUPOTOBQTIPUMPDBMMJCQFSMBSDNFUBҎԼ ͔Β࡞ΒΕΔ "CSBODIͰrequires ‘Teng’; carton install #CSBODIʹΓସ͑DBSUPOJOTUBMM͢ΔͱTOBQTIPU ʹ5FOHͱґଘNPEVMF͕ه͞Εͯ͠·͏ ࣗಈԽ͢ΔʹMPDBMΛαϥʹ͢Δ͔͠ͳ͍͔ͳʁ͏ ͪΐͬͱDBSUPOJOTUBMM͕ૣ͘ͳΕαϥʹ͢Δͷ
ؾ͕ͻ͚ͳ͍ͣʜʜ