繁体   English   中英

我可以从Ruby中删除什么并且仍然支持Rake / gems?

[英]What can I remove from Ruby and still have it support Rake/gems?

我正在使用Rake构建一个大型.NET项目。 我们将Ruby环境委托给源代码管理,并将gems安装到此“本地”环境(如Albacore,Nokogiri等)。 实际上,我们使用RubyInstaller for Windows zip软件包遵循此指南

trunk/
  source/
  packages/
  ruby/          <-- ruby here!
  build.bat      <-- helper scripts (call Ruby/rake)
  Solution.sln

但是,我们的源代码控制服务器是远程托管在虚拟机上的,链接速度很慢。 我已经读到有些人已经简化了Ruby环境,例如在Machine.Specifications project中 但是,那看起来太极端了! (那里甚至有宝石支持吗?)

我可以开始删除文件和目录,看看有什么用,但是必须删除一些已知文件,并且仍然支持基本的Ruby,Rake和gems?

从我自己的实验和调查中,很难确定什么是“必需的”以及什么是可选的。 有些文件看起来非常安全且易于删除,而另一些我不希望使用。 我下面不仅导致节省约5 MB ......可能不足以保证在所有这样做。

箱子

ruby/bin目录包含许多批处理脚本,它们只是使用正确的“ applicaton”(例如Rake或Gem)来调用ruby可执行文件的助手。 例如, rake.bat包含以下行

@"%~dp0ruby.exe" "%~dpn0" %*

您可以在build.bat脚本中用正确的命令替换它(假设它在ruby环境上方“上”一层,可能在解决方案的根目录)

@"%~dp0ruby\bin\ruby.exe" "%~dp0ruby\bin\rake" %*

您可以转储其余的批处理脚本,但是在将gems安装到本地环境中时会遇到更多麻烦。

cmd> ruby\bin\ruby.exe ruby\bin\gem install <whatever>

而且,从Ruby 1.9.3开始,仅节省了1.38KB。 我确定可以删除此目录中的其他一些非扩展文件,但是,如果不知道它们的作用,则继续操作是不安全的。

包括(175 KB)

ruby/include目录似乎只包含用于针对Ruby进行开发的C头文件(我在此处介绍)。 我将其删除,一切正常。

lib / tcltk(4.7 MB)

ruby/lib/tcltk看起来很像include目录,但是用于Tcl编程。

lib /红宝石

ruby/lib/ruby目录包含此安装的gem和更多令人恐惧的内容。 除非您不经意间破坏了环境,否则我将不在此目录中。

分享(27 KB)

ruby/share目录似乎只包含帮助页面,请转储!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM