Ruby包装生态系统作为Python终结

min*_*hee 8 ruby python comparison packaging rubygems

我对Ruby有一些经验,但它不如我的Python经验.我打包并发布了几个Python包,但是我发布的只有一个Ruby包.我想通过与Python比较来快速了解Ruby包装生态系统.

  • 我相信在Ruby中有相当于virtualenv的工具,但我不知道那是什么.RVM和Bundler有什么作用?
  • 当我编写Python包时,我通常使用setup.py develop命令 - 它解析了依赖关系,但没有安装到site-packages.Ruby中的等价物是什么?
  • 制作Ruby包的目录布局结构的首选方法是什么?
  • Gem包命名规则.Gem名称是否区分大小写?它应该与包含的Ruby模块的名称相同吗?
  • 我错过了任何其他观点.

drn*_*man 10

RVM类似于virtualenv也checkout rbenv(也许更像virtualenv)

Bundler用于开发和部署的包装依赖项,它setup.py和pip 一样工作(我没有使用过pip,它似乎有一些rubygems和Bundler的功能)

Bundler's Gemfile类似于pip的需求文件

Bundler将在您的开发目录中安装依赖项,并将它们打包以进行部署.

目录布局往往如下所示:

/ -
  lib - classes / modules etc.
  bin - executables things you want on $PATH
  test - unit tests
Run Code Online (Sandbox Code Playgroud)

珠宝商是设置,维护和释放宝石的好工具.

编辑:

以下是其他一些资源:

Ruby布局上的一些链接:

一些用于Python:

这是一个比较工具: