diff options
| author | Adam Vandenberg | 2010-10-17 17:52:10 -0700 |
|---|---|---|
| committer | Adam Vandenberg | 2010-10-17 17:52:10 -0700 |
| commit | 266b3265aa9047b505f038c0913a29db083d8449 (patch) | |
| tree | d666ed332b466d55ae08b128ab88fc87dd6edfb1 /bin | |
| parent | cdf35d1d8df43c5d36e502340820175bb0509ada (diff) | |
| download | brew-266b3265aa9047b505f038c0913a29db083d8449.tar.bz2 | |
Add remove --force
Diffstat (limited to 'bin')
| -rwxr-xr-x | bin/brew | 31 |
1 files changed, 23 insertions, 8 deletions
@@ -188,15 +188,30 @@ begin ARGV.kegs.each {|keg| puts "#{keg.unlink} links removed for #{keg}"} when 'rm', 'uninstall', 'remove' - begin - ARGV.kegs.each do |keg| - puts "Uninstalling #{keg}..." - keg.unlink - keg.uninstall + if ARGV.flag? "--force" + require 'formula' + ARGV.formulae.each do |f| + formula_cellar = f.prefix.parent + next unless File.exist? formula_cellar + puts "Uninstalling #{f.name}..." + formula_cellar.children do |k| + keg = Keg.new(k) + keg.unlink + end + + formula_cellar.rmtree + end + else + begin + ARGV.kegs.each do |keg| + puts "Uninstalling #{keg}..." + keg.unlink + keg.uninstall + end + rescue MultipleVersionsInstalledError => e + onoe e + puts "Use `brew remove --force #{e.name}` to remove all versions." end - rescue MultipleVersionsInstalledError => e - onoe e - puts "Use `brew remove --force #{e.name}` to remove all versions." end when 'prune' |
