Fossil SCM

Implementation simplification: -n implies -f and -v, this way less separate flag-checks have to be done. No change in functionality.

jan.nijtmans 2013-05-27 09:53 UTC trunk
Commit 4e573871bcef9199f39d724b9ae61d25d3a17300
1 file changed +9 -11
+9 -11
--- src/checkin.c
+++ src/checkin.c
@@ -414,29 +414,27 @@
414414
** -v|--verbose Show all files as they are removed
415415
**
416416
** See also: addremove, extra, status
417417
*/
418418
void clean_cmd(void){
419
- int allFlag;
419
+ int allFlag, dryRunFlag, verboseFlag;
420420
unsigned scanFlags = 0;
421421
const char *zIgnoreFlag, *zKeepFlag, *zCleanFlag;
422422
Blob path, repo;
423423
Stmt q;
424424
int n;
425425
Glob *pIgnore, *pKeep, *pClean;
426
- int dryRunFlag = 0;
427
- int verboseFlag;
428
-
429
- allFlag = find_option("force","f",0)!=0;
430
- if( find_option("dotfiles",0,0)!=0 ) scanFlags |= SCAN_ALL;
431
- if( find_option("temp",0,0)!=0 ) scanFlags |= SCAN_TEMP;
432
- zIgnoreFlag = find_option("ignore",0,1);
433
- verboseFlag = find_option("verbose","v",0)!=0;
426
+
434427
dryRunFlag = find_option("dry-run","n",0)!=0;
435428
if( !dryRunFlag ){
436429
dryRunFlag = find_option("test",0,0)!=0; /* deprecated */
437430
}
431
+ allFlag = find_option("force","f",0)!=0 || dryRunFlag;
432
+ if( find_option("dotfiles",0,0)!=0 ) scanFlags |= SCAN_ALL;
433
+ if( find_option("temp",0,0)!=0 ) scanFlags |= SCAN_TEMP;
434
+ zIgnoreFlag = find_option("ignore",0,1);
435
+ verboseFlag = find_option("verbose","v",0)!=0 || dryRunFlag;
438436
zKeepFlag = find_option("keep",0,1);
439437
zCleanFlag = find_option("clean",0,1);
440438
capture_case_sensitive_option();
441439
db_must_be_within_tree();
442440
if( zIgnoreFlag==0 ){
@@ -469,11 +467,11 @@
469467
db_multi_exec("DELETE FROM sfile WHERE x=%B", &repo);
470468
}
471469
db_multi_exec("DELETE FROM sfile WHERE x IN (SELECT pathname FROM vfile)");
472470
while( db_step(&q)==SQLITE_ROW ){
473471
const char *zName = db_column_text(&q, 0);
474
- if( !allFlag && !dryRunFlag && !glob_match(pClean, zName+n) ){
472
+ if( !allFlag && !glob_match(pClean, zName+n) ){
475473
Blob ans;
476474
char cReply;
477475
char *prompt = mprintf("remove unmanaged file \"%s\" (a=all/y/N)? ",
478476
zName+n);
479477
blob_zero(&ans);
@@ -483,11 +481,11 @@
483481
allFlag = 1;
484482
}else if( cReply!='y' && cReply!='Y' ){
485483
continue;
486484
}
487485
}
488
- if( dryRunFlag || verboseFlag ){
486
+ if( verboseFlag ){
489487
fossil_print("removed unmanaged file: %s\n", zName+n);
490488
}
491489
if( !dryRunFlag ){
492490
file_delete(zName);
493491
}
494492
--- src/checkin.c
+++ src/checkin.c
@@ -414,29 +414,27 @@
414 ** -v|--verbose Show all files as they are removed
415 **
416 ** See also: addremove, extra, status
417 */
418 void clean_cmd(void){
419 int allFlag;
420 unsigned scanFlags = 0;
421 const char *zIgnoreFlag, *zKeepFlag, *zCleanFlag;
422 Blob path, repo;
423 Stmt q;
424 int n;
425 Glob *pIgnore, *pKeep, *pClean;
426 int dryRunFlag = 0;
427 int verboseFlag;
428
429 allFlag = find_option("force","f",0)!=0;
430 if( find_option("dotfiles",0,0)!=0 ) scanFlags |= SCAN_ALL;
431 if( find_option("temp",0,0)!=0 ) scanFlags |= SCAN_TEMP;
432 zIgnoreFlag = find_option("ignore",0,1);
433 verboseFlag = find_option("verbose","v",0)!=0;
434 dryRunFlag = find_option("dry-run","n",0)!=0;
435 if( !dryRunFlag ){
436 dryRunFlag = find_option("test",0,0)!=0; /* deprecated */
437 }
 
 
 
 
 
438 zKeepFlag = find_option("keep",0,1);
439 zCleanFlag = find_option("clean",0,1);
440 capture_case_sensitive_option();
441 db_must_be_within_tree();
442 if( zIgnoreFlag==0 ){
@@ -469,11 +467,11 @@
469 db_multi_exec("DELETE FROM sfile WHERE x=%B", &repo);
470 }
471 db_multi_exec("DELETE FROM sfile WHERE x IN (SELECT pathname FROM vfile)");
472 while( db_step(&q)==SQLITE_ROW ){
473 const char *zName = db_column_text(&q, 0);
474 if( !allFlag && !dryRunFlag && !glob_match(pClean, zName+n) ){
475 Blob ans;
476 char cReply;
477 char *prompt = mprintf("remove unmanaged file \"%s\" (a=all/y/N)? ",
478 zName+n);
479 blob_zero(&ans);
@@ -483,11 +481,11 @@
483 allFlag = 1;
484 }else if( cReply!='y' && cReply!='Y' ){
485 continue;
486 }
487 }
488 if( dryRunFlag || verboseFlag ){
489 fossil_print("removed unmanaged file: %s\n", zName+n);
490 }
491 if( !dryRunFlag ){
492 file_delete(zName);
493 }
494
--- src/checkin.c
+++ src/checkin.c
@@ -414,29 +414,27 @@
414 ** -v|--verbose Show all files as they are removed
415 **
416 ** See also: addremove, extra, status
417 */
418 void clean_cmd(void){
419 int allFlag, dryRunFlag, verboseFlag;
420 unsigned scanFlags = 0;
421 const char *zIgnoreFlag, *zKeepFlag, *zCleanFlag;
422 Blob path, repo;
423 Stmt q;
424 int n;
425 Glob *pIgnore, *pKeep, *pClean;
426
 
 
 
 
 
 
 
427 dryRunFlag = find_option("dry-run","n",0)!=0;
428 if( !dryRunFlag ){
429 dryRunFlag = find_option("test",0,0)!=0; /* deprecated */
430 }
431 allFlag = find_option("force","f",0)!=0 || dryRunFlag;
432 if( find_option("dotfiles",0,0)!=0 ) scanFlags |= SCAN_ALL;
433 if( find_option("temp",0,0)!=0 ) scanFlags |= SCAN_TEMP;
434 zIgnoreFlag = find_option("ignore",0,1);
435 verboseFlag = find_option("verbose","v",0)!=0 || dryRunFlag;
436 zKeepFlag = find_option("keep",0,1);
437 zCleanFlag = find_option("clean",0,1);
438 capture_case_sensitive_option();
439 db_must_be_within_tree();
440 if( zIgnoreFlag==0 ){
@@ -469,11 +467,11 @@
467 db_multi_exec("DELETE FROM sfile WHERE x=%B", &repo);
468 }
469 db_multi_exec("DELETE FROM sfile WHERE x IN (SELECT pathname FROM vfile)");
470 while( db_step(&q)==SQLITE_ROW ){
471 const char *zName = db_column_text(&q, 0);
472 if( !allFlag && !glob_match(pClean, zName+n) ){
473 Blob ans;
474 char cReply;
475 char *prompt = mprintf("remove unmanaged file \"%s\" (a=all/y/N)? ",
476 zName+n);
477 blob_zero(&ans);
@@ -483,11 +481,11 @@
481 allFlag = 1;
482 }else if( cReply!='y' && cReply!='Y' ){
483 continue;
484 }
485 }
486 if( verboseFlag ){
487 fossil_print("removed unmanaged file: %s\n", zName+n);
488 }
489 if( !dryRunFlag ){
490 file_delete(zName);
491 }
492

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button