比如我找到一个库 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 一个版本,所以打算在自己的代码中写个类继承那个类,然后在里面加自己需要的方法