aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cmd
diff options
context:
space:
mode:
authorMisty De Meo2012-10-20 20:54:11 -0500
committerMisty De Meo2012-10-20 21:00:46 -0500
commit447f78c0d23568275350792164dbc868a60da344 (patch)
tree105674744c318a6c11d0d5767d143b80e8554319 /Library/Homebrew/cmd
parent7b08e5a05cdc2e2be2e9e066c156b901e86dcc8a (diff)
downloadbrew-447f78c0d23568275350792164dbc868a60da344.tar.bz2
brew ln --force is now brew ln --overwrite
* Renames --force to --overwrite, freeing up brew ln --force for Homebrew/homebrew#13349 * Changes --dry-run to preview linking by default, rather than overwriting. An overwrite dry-run can be simulated via both --dry-run --overwrite * Adds some basic Keg tests
Diffstat (limited to 'Library/Homebrew/cmd')
-rw-r--r--Library/Homebrew/cmd/link.rb18
1 files changed, 13 insertions, 5 deletions
diff --git a/Library/Homebrew/cmd/link.rb b/Library/Homebrew/cmd/link.rb
index 8e942cd91..66d8e9583 100644
--- a/Library/Homebrew/cmd/link.rb
+++ b/Library/Homebrew/cmd/link.rb
@@ -1,3 +1,5 @@
+require 'ostruct'
+
module Homebrew extend self
def link
@@ -7,10 +9,10 @@ module Homebrew extend self
raise "Cowardly refusing to `sudo brew link'\n#{SUDO_BAD_ERRMSG}"
end
- if ARGV.force? then mode = :force
- elsif ARGV.dry_run? then mode = :dryrun
- else mode = nil
- end
+ mode = OpenStruct.new
+
+ mode.overwrite = true if ARGV.include? '--overwrite'
+ mode.dry_run = true if ARGV.dry_run?
ARGV.kegs.each do |keg|
if keg.linked?
@@ -18,12 +20,18 @@ module Homebrew extend self
next
end
- if mode == :dryrun
+ if mode.dry_run and mode.overwrite
print "Would remove:\n" do
keg.link(mode)
end
next
+ elsif mode.dry_run
+ print "Would link:\n" do
+ keg.link(mode)
+ end
+
+ next
end
print "Linking #{keg}... " do