Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 获取一个现有的gem,修改它,并附带我自己的Rails应用程序_Ruby On Rails_Ruby_Rubygems_Bundler - Fatal编程技术网

Ruby on rails 获取一个现有的gem,修改它,并附带我自己的Rails应用程序

Ruby on rails 获取一个现有的gem,修改它,并附带我自己的Rails应用程序,ruby-on-rails,ruby,rubygems,bundler,Ruby On Rails,Ruby,Rubygems,Bundler,在Rails 3应用程序中使用现有的gem并附带我自己的修改的最佳方式是什么?现在,我只是从本地rvm缓存复制了目录,并修改了需要修改的源代码。我可以将其放入vendor/并在Gemfile中添加:路径。问题是,我必须写我自己的gemspec,并为此担心。有没有一个工具可以让这更容易?还有别的办法吗 如果这个gem已经在Github上了,我想你可以把它放到Github上,用你需要的方式修改它,然后在你的gem文件中放上: gem 'name_of_the_gem', :git => "gi

在Rails 3应用程序中使用现有的gem并附带我自己的修改的最佳方式是什么?现在,我只是从本地rvm缓存复制了目录,并修改了需要修改的源代码。我可以将其放入vendor/并在Gemfile中添加:路径。问题是,我必须写我自己的gemspec,并为此担心。有没有一个工具可以让这更容易?还有别的办法吗

如果这个gem已经在Github上了,我想你可以把它放到Github上,用你需要的方式修改它,然后在你的gem文件中放上:

gem 'name_of_the_gem', :git => "git://github.com/name_of_your_account/name_of_the_gem.git"

如果这个gem已经在Github上了,我想你可以把它放到Github上,用你需要的方式修改它,然后在你的gem文件中放上:

gem 'name_of_the_gem', :git => "git://github.com/name_of_your_account/name_of_the_gem.git"

您可以执行gem安装您的_gem.gempec,将您的_gem替换为您正在处理的gem的名称,然后执行捆绑包。这应该会将新的Gem放在您的供应商缓存中。

您可以执行Gem安装您的_Gem.gemspec将您的_Gem替换为您正在处理的Gem的名称,然后执行捆绑包。这将把新的Gem放在你的供应商缓存中。

你的修改有多大?如果它很小,我会重写初始化器中的方法。

您的修改有多大?如果它很小,我只会重写初始化器中的方法。

不仅仅是github,bundler会从任何有效的git url安装gem,只要.gemspec文件正常。是的,但我在这里给出了github作为示例。不要忘了也向原始作者发送pull请求:@MichałCzapko-这就是我想说的。问题不在于github,对吧?不仅仅是github,bundler会从任何有效的git url安装gem,只要.gemspec文件正常。是的,但我在这里给出了github作为示例。别忘了也向原始作者发送pull请求:@MichałCzapko-这就是我想说的。问题不在于github,对吧?