2013-08-23 64 views
4

我Rails的網站使用了一定的寶石這是真的不是很好。每次我需要做一些新的事情時,我最終都不得不花費很多時間爲gem添加功能,因爲我將代碼添加到實際的Rails項目中。但我不介意,我有我的Gemfile設置爲指向寶石的我的GitHub叉(我試過提交永久居民,但維護者似乎已經下臺)。測試本地版本的Project

的問題是,我真的沒有發現測試新的東西,我增加了寶石的明智方式。在rails c之內測試它特別好,但我能想到的唯一方法是a)更改~/.rvm/gems/.../foo.rb,這看起來不對,或者b)顛覆該版本,推送到Github並運行bundle up,這除了費時以外,顯然是一場災難,因爲我不確定提交的提交內容是否正確。

我甚至對標準irb感到滿意。但是來自gem目錄內的各種排列require lib/foo不起作用。

那麼這裏最好的做法是什麼?

回答

9

如果您使用的是寶石,並在同一時間做這個工作,最好的辦法是使用捆紮機,並提供本地路徑:

gem 'my_bad_gem', path: '../my_bad_gem/' 

這將查找在給定的(相對創業板在這種情況下)路徑。另一個選擇是使用本地git存儲庫(請參閱http://bundler.io/v1.3/git.html)。