0

是否可以自动识别 Rails 项目中不再使用的 Ruby gem?

例如,如果一位开发人员将 gem 'nokogiri' 添加到 Gemfile 中,以实现功能上的一部分,但现在已经删除了依赖于该 gem 的代码。我希望将我的整个项目移植到 jRuby,因此删除我们不再是一个非常明智的起点的 gem。

谢谢

4

2 回答 2

1

通常宝石以特定的方式使用,因此对于每个宝石,您都必须手动查找模式。

例如,如果我必须确定是否使用了 Nokogiri,我会用它git grep来查找 Nokogiri 的出现(我假设你使用 git):

git grep Nokogiri

如果没有返回任何内容,您可能没有使用它。

另一种方法是,如果您有一个测试套件,只需将其删除并查看是否有问题。并非万无一失,但如果您有良好的测试,它应该是一条非常安全的路径。

于 2012-09-20T16:04:09.700 回答
0

在 ruby​​forge 上有一个名为gem_unused的 gem 。它向“gem”添加了一个“未使用”命令。但是,我无法对此进行测试,因为它似乎在我的系统上失败了。(我是 Rails 世界的新手,所以也许这是其他人可以解决的问题。我在维护者的 github 上提出了一个问题)

于 2012-09-20T16:22:33.523 回答