From 919f36717c3bac2bcd139fd01acfe02f098e001c Mon Sep 17 00:00:00 2001 From: Max Howell Date: Fri, 16 Mar 2012 17:11:40 +0000 Subject: Don't break if symlink already exists during tap This shouldn't happen but is possible and we should handle it. Also added some puts when tapping/untapping. --- Library/Homebrew/cmd/untap.rb | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'Library/Homebrew/cmd/untap.rb') diff --git a/Library/Homebrew/cmd/untap.rb b/Library/Homebrew/cmd/untap.rb index 51d99d913..892229df4 100644 --- a/Library/Homebrew/cmd/untap.rb +++ b/Library/Homebrew/cmd/untap.rb @@ -8,15 +8,21 @@ module Homebrew extend self raise "No such tap!" unless tapd.directory? gitignores = (HOMEBREW_LIBRARY/"Formula/.gitignore").read.split rescue [] + untapped = 0 tapd.find_formula do |pn| bn = pn.basename.to_s pn = HOMEBREW_LIBRARY/"Formula/#{bn}" - pn.delete if pn.symlink? and pn.realpath.to_s =~ %r[^#{tapd.realpath}] - gitignores.delete(bn) + if pn.symlink? and pn.realpath.to_s =~ %r[^#{tapd.realpath}] + pn.delete + gitignores.delete(bn) + untapped += 1 + end end rm_rf tapd HOMEBREW_REPOSITORY.join("Library/Formula/.gitignore").atomic_write(gitignores * "\n") + + puts "Untapped #{untapped} formula" end end -- cgit v1.2.3