Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.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 gem安装从何而来?_Ruby_Oauth_Rubygems - Fatal编程技术网

Ruby gem安装从何而来?

Ruby gem安装从何而来?,ruby,oauth,rubygems,Ruby,Oauth,Rubygems,在筛选示例时,我想知道在安装gems时如何定位源库。例如,我有 require 'oauth2' 为了安装,我运行 gem install oauth2 从哪个存储库中提取gem安装?我想使用反射对示例中的一些调用进行反向工程。默认情况下,gem从主gem存储库中提取,但如果您为其提供URL或使用--source选项指定备用源,则可以从任何位置进行安装。有些人更喜欢使用私有的gem托管作为他们的依赖项 为什么不使用管理工具来管理您的依赖关系?这让事情变得更加清楚: source 'https

在筛选示例时,我想知道在安装gems时如何定位源库。例如,我有

require 'oauth2'
为了安装,我运行

gem install oauth2

从哪个存储库中提取gem安装?我想使用反射对示例中的一些调用进行反向工程。

默认情况下,
gem
从主gem存储库中提取,但如果您为其提供URL或使用
--source
选项指定备用源,则可以从任何位置进行安装。有些人更喜欢使用私有的gem托管作为他们的依赖项

为什么不使用管理工具来管理您的依赖关系?这让事情变得更加清楚:

source 'https://rubygems.org/'

gem 'oauth2'
然后安装:

bundle install
然后您可以看到它的安装位置:

bundle show oauth2

从那里你可以看到来源。您还可以查看提供文档和源代码链接的位置。

有一些有用的选项可以查看ruby gems的源代码。 正如@tadman所提到的,您通常可以期望默认的gem源代码托管在,并且强烈建议您使用它

在许多情况下,开放源代码将托管在上。我倾向于使用fork-gem源代码并在本地下载我的fork,这样我就可以在我的编辑器中进行分析,而不用担心意外破坏任何东西,因为您的fork-repo将包含完整的git历史/repo等

如果您是ruby新手,我强烈建议您使用ruby版本管理器,也就是说,或者,尽管我倾向于认为RVM更简单,问题更少

我个人最喜欢的另一个ruby代码黑客/检查工具是