aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--man/eclean.11
-rw-r--r--pym/gentoolkit/eclean/cli.py6
2 files changed, 4 insertions, 3 deletions
diff --git a/man/eclean.1 b/man/eclean.1
index 53ba8a7..60cf1ca 100644
--- a/man/eclean.1
+++ b/man/eclean.1
@@ -106,6 +106,7 @@ etc.
Units are: G, M, K and B.
.TP
\fB\-\-skip\-vcs\fP protect VCS sources for live ebuilds not installed
+Only effective with \-\-deep. Without \-\-deep, no VCS cleaning is done.
.SS "Options for the 'packages' action"
.TP
\fB\-i, \-\-ignore\-failure\fP ignore the failure to locate PKGDIR
diff --git a/pym/gentoolkit/eclean/cli.py b/pym/gentoolkit/eclean/cli.py
index 94f87f4..f5c22c2 100644
--- a/pym/gentoolkit/eclean/cli.py
+++ b/pym/gentoolkit/eclean/cli.py
@@ -424,7 +424,7 @@ def parseArgs(options={}):
options["unique-use"] = True
elif o in ("--no-clean-invalid"):
options["no-clean-invalid"] = True
- elif o in ("--skip-vcs"):
+ elif o in ("--skip-vcs") or not options["destructive"]:
options["skip-vcs"] = True
else:
return_code = False
@@ -602,11 +602,11 @@ def doAction(action, options, exclude={}, output=None):
output.einfo("Cleaning " + files_type + "...")
# do the cleanup, and get size of deleted files
if options["pretend"]:
- if options["skip-vcs"]:
+ if options["skip-vcs"] or not options["destructive"]:
vcs = {}
clean_size = cleaner.pretend_clean(clean_me, vcs)
elif action in ["distfiles"]:
- if options["skip-vcs"]:
+ if options["skip-vcs"] or not options["destructive"]:
vcs = {}
clean_size = cleaner.clean_dist(clean_me, vcs)
elif action in ["packages"]: