7

我是 ruby​​ 新手,需要调试一些打包为 gem 的 ruby​​ 应用程序。

我正在使用 rvm,我将包安装为 gem,并且还对该包进行了全新的 github 签出。如何告诉我的 rvm 环境使用 github repo 中的代码而不是安装的 gem?

这相当于python setup.py develop熟悉python的人。

Setuptools 允许您部署项目以在公共目录或暂存区域中使用,但无需复制任何文件。因此,您可以在其签出目录中编辑每个项目的代码

https://pythonhosted.org/setuptools/setuptools.html#development-mode

4

2 回答 2

7

是的,你可以。

查看捆绑器。这是使用它的事实上的标准。

于 2012-07-19T08:17:17.473 回答
0

除了上一个答案。

有时 gems/packages 提供可执行文件。这样做的好处python setup.py develop是,您的路径中将始终拥有该可执行文件的最新版本。这对开发来说很方便。据我所知 Gem 不提供这样的功能。要模拟您可以使用Bundler,它是如何:

  • 首先创建一个新的 Gemfile:bundle init
  • 然后编辑该文件并添加您正在处理的本地 Gem(对我来说是 Nanoc):gem "nanoc", path: "path/to/local/nanoc"
  • 然后要访问 Gem 提供的可执行文件,您可以通过这种方式使用 bundler:bundle exec nanoc ...

这里bundle exec将从您的 Gemfile 中获取 Gem 版本并使用它。如果该 Gem 指定了一个:path选项,那么它将使用该选项。

在 Python 中肯定不那么方便,但它是我在 Ruby 中找到的最接近的解决方案。

于 2016-05-31T10:56:41.200 回答