我知道可以在没有文档的情况下安装gem,但不幸的是,我在前三个月没有使用ruby。在那个时候,我设法安装了大量的宝石,但是自从我开始使用ruby以来我没有使用过我的计算机上的文档。我总是在互联网上查看文档。
从计算机安全删除文档的最佳方法是什么?另外,有没有办法将ruby配置为默认不安装文档?
答案 0 :(得分:56)
运行此命令:
rm -r "$(gem env gemdir)"/doc/*
如果你使用cygwin ,在Windows上
答案 1 :(得分:9)
Gem文档安装在[RUBY] / lib / ruby / gems / doc中,其中[RUBY]是你安装Ruby的目录(我的机器上的C:/ ruby)。
我不明白为什么你不应该只删除代表不需要文档的宝石的文件夹:你总是可以重新生成它。
答案 2 :(得分:7)
我知道可以使用.gemrc文件。
install: --no-rdoc --no-ri
update: --no-rdoc --no-ri
将两行放入其中。 我相信你把.gemrc文件放在你的$ Home目录中。
答案 3 :(得分:4)
我无法解答您问题的第一部分(我自己也有同样的问题),但我默认安装了文档。
您可以在gem config file中指定一些默认命令行选项,您可以指定不生成文档(类似于--no-rdoc和--no-ri)。
萨姆
答案 4 :(得分:4)
复制&将其中任何一个粘贴到与Bourne兼容的shell中:
(exec 1>&2; DIR="$(gem env gemdir)"; \
DOCDIR="$DIR"/doc; \
if [ -d "$DOCDIR" ]; then \
echo "Contents of '$DOCDIR': "; ls "$DOCDIR"/; echo ''; \
read -p "Do you really want to remove contents of RubyGems doc dir '$DOCDIR' ? [Yn] " ANS; \
if [ "$ANS" = y ] || [ "$ANS" = Y ]; then \
rm -rf "$DOCDIR"/*; \
fi; \
fi)
(exec 1>&2; for DIR in $(gem env path | tr ':' '\n'); do \
DOCDIR="$DIR"/doc; \
if [ -d "$DOCDIR" ]; then \
echo "Contents of '$DOCDIR': "; ls "$DOCDIR"/; echo ''; \
echo '!! Possibly removes system-provided gem docs, review carefully before continuing ("n" if unsure or Ctrl-C to abort completely) !!'; \
read -p "Do you really want to remove RubyGems doc dir '$DOCDIR' ? [Yn] " ANS; \
if [ "$ANS" = y ] || [ "$ANS" = Y ]; then \
sudo rm -rf "$DOCDIR"/*; \
fi; \
fi; \
done)
使用现代RubyGems:
(X='gem: --no-document'; \
touch ~/.gemrc && \
grep -q "^$X$" ~/.gemrc || echo "$X" >> ~/.gemrc)
使用旧的RubyGems:X='gem: --no-ri --no-rdoc' ...
答案 5 :(得分:0)
此命令对我有用,可以删除通过安装安装的文档。
rm -r "$(gem env gemdir)"/doc/*
这是另一种解决方法;
要在系统上找到安装gem的文件夹,只需在终端机或外壳上运行以下命令
gem env home
这将显示类似的输出
/home/username/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0
然后,您可以找到docs文件夹并删除在其中找到的针对宝石版本中每个宝石的所有文档
我也想将其添加到提供的答案中,
如果要防止gems在安装过程中生成文档,请通过创建一个名为〜/ .gemrc的文件来关闭本地文档的生成,该文件包含用于禁用此功能的配置设置:
只需在您的终端或外壳程序中运行此代码
printf "install: --no-rdoc --no-ri\nupdate: --no-rdoc --no-ri\n" >> ~/.gemrc
OR
echo "gem: --no-document" > ~/.gemrc
这将防止gem在安装过程中生成文档,从而减轻了以后在系统上删除/删除gem文档的压力。
仅此而已
我希望这会有所帮助。