Gem 怎么用 bundle 安装 https://github.com 上的库

tony · 2011年11月01日 · 最后由 Tony 回复于 2012年02月04日 · 6752 次阅读

比如我找到一个库 https://github.com/ballantyne/omniauth-douban 想要安装到我的项目中使用,怎么用 bundle 进行安装 下载下来后总提示 require 错误

另外,这种库安装后,我可以给原理的 class 中添加新的方法么?或者重写

先看一看 http://gembundler.com/rationale.html

你需要在项目中开一个 Gemfile 文件,在里面定义你需要的 gem。

然后在项目目录 bundle install

Ruby 可以随时打开类,所以可以给 gem 打补丁添加方法。如果改写程度比较大,可以 fork 一份维护。

Gemfile:

gem "omniauth-douban", :git => "git://github.com/ballantyne/omniauth-douban.git"

打补丁添加方法是直接改源代码么? 还是我在自己的代码中 new 一个,或者继承一下然后改?

#3 楼 @Tony 是直接修改源代码 但是,需要 Fork 想要自己修改,那就在 Github 那个项目的页面上 Fork,然后会有个你 Fork 的版本,Clone 下来,修改,然后提交回 Github,这个时候,你可以将 Gemfile 里面 :git => "" 这个地址改为你的项目版本库地址

明白?

#4 楼 @huacnlee 嗯,明白了 其实我改动不是很大,感觉没必要 fork 一个版本,所以打算在自己的代码中写个类继承那个类,然后在里面加自己需要的方法

需要 登录 后方可回复, 如果你还没有账号请 注册新账号