撤消gem安装?

时间:2011-11-03 15:07:16

标签: rubygems

我正在开发一个项目,它为一个脆弱的,写得不好的Rails 2.3应用程序添加了一些功能。我试图只安装一个宝石,但是当我运行'gem install'并且它更新了29颗宝石时,我犯了一个错误,包括一些Rails宝石!

我知道我可以手动删除每个新的gem版本,但我想知道是否有选项可以回滚gem安装并撤消所有29个更新。我使用的是rubygems 1.4.2,没有升级选项。

1 个答案:

答案 0 :(得分:1)

今天发生了这起事故......我只需编写一个简短的脚本来修复它:

#!/bin/sh

while read line; do 
    package=`echo $line | awk '{print $3}' | sed 's/\([a-z0-9_-]*\)-.*/\1/'`
    version=`echo $line | awk '{print $3}' | sed 's/[a-z0-9_-]*-\(.*\)/\1/'`
    gem uni $package -v $version
done < accident

accident只是叛徒安装的输出:

Successfully installed builder-3.0.0
Successfully installed activemodel-3.2.6
Successfully installed rack-1.4.1
Successfully installed rack-cache-1.2
Successfully installed rack-test-0.6.1