2012-07-21 66 views
2

我對Git和Gemfiles還是有點新鮮。不同分支的不同寶石版本

我想升級我的寶石,但不是所有的都向後兼容。因此,我想創建一個單獨的分支,同時修復我的代碼以與新的gem版本兼容。

如果我使用git checkout -b mynewbranch,然後更改Gemfile並開始運行軟件包更新,那麼是否會限制我的gem更改爲該分支?

這裏最好的辦法是什麼?

+0

你有正確的做法,這裏沒有什麼可以糾正的...... 有點偏離主題,但可能的後續行動是[本指南](http://nvie.com/posts/a-successful-git-branching-model /)關於Git-Flow。這是一種理念,在這種情況下如何使用git,在生產環境中運行某些代碼並開發新代碼,並且有可能需要對修補程序等安全漏洞做出反應,所以這可以幫助您解決這個問題 – Jaro 2012-07-21 13:05:09

回答

2

使用bundle install命令安裝的gems版本以及將要使用的gem版本由文件Gemfile和Gemfile.lock確定。

移動到另一個分支並使用bundle update進行更新不會干擾舊分支中的那些舊文件。它將更新新分支上的這些文件並將新的寶石版本安裝到您​​的機器上。您可以根據需要進行更新,返回舊分支,並按預期使用所有以前版本的寶石。

請注意,您可能需要使用bundle exec運行命令,以防機器上有多個相同的gem版本。

相關問題