cleanup: add an option to perform a 'dry run'

Sometimes you want to know what `brew cleanup` will do before it
actually removes anything. Introduce a '-n' option (chosen to match
other UNIX tools) to do this.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
This commit is contained in:
Jack Nagel 2011-11-07 22:46:36 -06:00
parent 323c30978f
commit 0cc3eb296d
3 changed files with 10 additions and 5 deletions

View File

@ -54,13 +54,15 @@ For the full command list, see the COMMANDS section.
* `cat` <formula>: * `cat` <formula>:
Display the source to <formula>. Display the source to <formula>.
* `cleanup [--force]` [<formula>]: * `cleanup [--force] [-n]` [<formula>]:
For all installed or specific formulae, remove any older versions from the For all installed or specific formulae, remove any older versions from the
cellar. By default, does not remove out-of-date keg-only brews, as other cellar. By default, does not remove out-of-date keg-only brews, as other
software may link directly to specific versions. software may link directly to specific versions.
If `--force` is passed, remove out-of-date keg-only brews as well. If `--force` is passed, remove out-of-date keg-only brews as well.
If `-n` is passed, show what would be removed, but do not actually remove anything.
* `create [--autotools|--cmake] [--no-fetch]` <URL>: * `create [--autotools|--cmake] [--no-fetch]` <URL>:
Generate a formula for the downloadable file at <URL> and open it in Generate a formula for the downloadable file at <URL> and open it in
$EDITOR. Homebrew will attempt to automatically derive the formula name $EDITOR. Homebrew will attempt to automatically derive the formula name

View File

@ -13,7 +13,7 @@ module Homebrew extend self
end end
end end
# seems like a good time to do some additional cleanup # seems like a good time to do some additional cleanup
Homebrew.prune Homebrew.prune unless ARGV.include? '-n'
else else
ARGV.formulae.each do |f| ARGV.formulae.each do |f|
cleanup_formula f cleanup_formula f
@ -36,7 +36,7 @@ module Homebrew extend self
f.rack.children.each do |keg| f.rack.children.each do |keg|
if f.installed_prefix != keg if f.installed_prefix != keg
print "Removing #{keg}..." print "Removing #{keg}..."
rm_rf keg rm_rf keg unless ARGV.include? '-n'
puts puts
end end
end end

View File

@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3 .\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3
. .
.TH "BREW" "1" "October 2011" "Homebrew" "brew" .TH "BREW" "1" "November 2011" "Homebrew" "brew"
. .
.SH "NAME" .SH "NAME"
\fBbrew\fR \- The missing package manager for OS X \fBbrew\fR \- The missing package manager for OS X
@ -64,12 +64,15 @@ If \fB\-\-strict\fR is passed, perform additional stricter checks that may not n
Display the source to \fIformula\fR\. Display the source to \fIformula\fR\.
. .
.TP .TP
\fBcleanup [\-\-force]\fR [\fIformula\fR] \fBcleanup [\-\-force] [\-n]\fR [\fIformula\fR]
For all installed or specific formulae, remove any older versions from the cellar\. By default, does not remove out\-of\-date keg\-only brews, as other software may link directly to specific versions\. For all installed or specific formulae, remove any older versions from the cellar\. By default, does not remove out\-of\-date keg\-only brews, as other software may link directly to specific versions\.
. .
.IP .IP
If \fB\-\-force\fR is passed, remove out\-of\-date keg\-only brews as well\. If \fB\-\-force\fR is passed, remove out\-of\-date keg\-only brews as well\.
. .
.IP
If \fB\-n\fR is passed, show what would be removed, but do not actually remove anything\.
.
.TP .TP
\fBcreate [\-\-autotools|\-\-cmake] [\-\-no\-fetch]\fR \fIURL\fR \fBcreate [\-\-autotools|\-\-cmake] [\-\-no\-fetch]\fR \fIURL\fR
Generate a formula for the downloadable file at \fIURL\fR and open it in $EDITOR\. Homebrew will attempt to automatically derive the formula name and version, but if it fails, you\'ll have to make your own template\. The wget formula serves as a simple example\. Generate a formula for the downloadable file at \fIURL\fR and open it in $EDITOR\. Homebrew will attempt to automatically derive the formula name and version, but if it fails, you\'ll have to make your own template\. The wget formula serves as a simple example\.