Bundler

簡介

Ruby Project依賴于一系列的ruby gems.而bundler是一個很好的管理ruby項目gems的工具老玛。當(dāng)然也是一個ruby gem.

使用bundler可以為你的ruby project提供統(tǒng)一的構(gòu)建環(huán)境(無論是production, development, 還是staging)肴甸,因為bunder可以很好的跟蹤和安裝指定的和預(yù)期的gem.

試驗:

1. 安裝ruby gem

前提:試驗環(huán)境中已存在ruby和rubygem


install_bundler

2. 使用bundler安裝gem

1). 在ruby project的根目錄下寫Gemfile

Gemfile

2). 安裝gems?

和你的Gemfile同級目錄運行’bundle install --verbose‘,可以看到整個安裝過程前方。bundler根據(jù)你指定的gem源查找相應(yīng)的version沿彭,并進行安裝峻汉。

再次運行'bundle install', 則bunlder會檢測是否已安裝相應(yīng)的Gem包互躬,如果已經(jīng)安裝开仰,則直接using否則進行安裝拟枚,第一次安裝完成后, bundler保存當(dāng)前的gems的快照到Gemfile.lock

install gems
Gemfile.lock

remote, platforms, dependencies, build with 字段的意思很好理解,這里不再復(fù)述抖所。

另外梨州,Gemfile.lock中specs中的gems之間層級關(guān)系很簡單,就是gem及其下屬依賴田轧。

從下往上讀Gemfile.lock暴匠,可發(fā)現(xiàn),最底層依賴的包在最下面傻粘。

而specs則是gems依賴關(guān)系每窖、版本信息的明細(xì)清單。

3) 驗證Gemfile.lock的工作原理

copy這個ruby project到另一個host下(ruby, rubygem已安裝)弦悉,運行bundle install

install gems again?

對比圖'install gems'窒典,可以看出,安裝的gems完全一致

即稽莉, bundle install在存在Gemfile.lock的情況下瀑志,依據(jù)Gemfile.lock進行安裝。如果沒有Gemfile.lock則會根據(jù)Gemfile進行安裝,并生成Gemfile.lock.

是劈猪,Gemfile.lock就是簡介中所說的gems快照昧甘。而不同環(huán)境間一致的部署就是依賴Gemfile.lock而實現(xiàn)的。

3. upgrade gems

1) 更新現(xiàn)有的gem包的版本至高版本(而非latest)

編輯Gemfile中g(shù)em的version, 然后運行bundle install, 則Gemfile.lock會自動更新

update rake

我們可以看到战得,我們更新了rake gem到高一些的版本

2) 更新沒有指定版本的gem到latest版本充边,則運行bundle update gem

update gem to latest

如果不指定gem, bundle update 則會更新所有滿足條件的gem到最新版本常侦。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末浇冰,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子聋亡,更是在濱河造成了極大的恐慌肘习,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件杀捻,死亡現(xiàn)場離奇詭異井厌,居然都是意外死亡,警方通過查閱死者的電腦和手機致讥,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門仅仆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人垢袱,你說我怎么就攤上這事墓拜。” “怎么了请契?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵咳榜,是天一觀的道長。 經(jīng)常有香客問我爽锥,道長涌韩,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任氯夷,我火速辦了婚禮臣樱,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘腮考。我一直安慰自己雇毫,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布踩蔚。 她就那樣靜靜地躺著棚放,像睡著了一般。 火紅的嫁衣襯著肌膚如雪馅闽。 梳的紋絲不亂的頭發(fā)上飘蚯,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天馍迄,我揣著相機與錄音,去河邊找鬼孝冒。 笑死柬姚,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的庄涡。 我是一名探鬼主播,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼搬设,長吁一口氣:“原來是場噩夢啊……” “哼穴店!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起拿穴,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤泣洞,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后默色,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體球凰,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年腿宰,在試婚紗的時候發(fā)現(xiàn)自己被綠了呕诉。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡吃度,死狀恐怖甩挫,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情椿每,我是刑警寧澤伊者,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站间护,受9級特大地震影響亦渗,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜汁尺,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一法精、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧均函,春花似錦亿虽、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至如迟,卻和暖如春收毫,著一層夾襖步出監(jiān)牢的瞬間攻走,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工此再, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留昔搂,地道東北人。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓输拇,卻偏偏與公主長得像摘符,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子策吠,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內(nèi)容