Fossil SCM
For the merge command, skip calls into the 'undo' subsystem when the -n (dry-run) flag is used.
Commit
91ee04cf2718a476a779a06a3a98479fda9a711a
Parent
3c0d8c267936e71…
1 file changed
+5
-5
+5
-5
| --- src/merge.c | ||
| +++ src/merge.c | ||
| @@ -592,11 +592,11 @@ | ||
| 592 | 592 | } |
| 593 | 593 | if( islinkv || islinkm /* || file_wd_islink(zFullPath) */ ){ |
| 594 | 594 | fossil_print("***** Cannot merge symlink %s\n", zName); |
| 595 | 595 | nConflict++; |
| 596 | 596 | }else{ |
| 597 | - undo_save(zName); | |
| 597 | + if( !dryRunFlag ) undo_save(zName); | |
| 598 | 598 | zFullPath = mprintf("%s/%s", g.zLocalRoot, zName); |
| 599 | 599 | content_get(ridp, &p); |
| 600 | 600 | content_get(ridm, &m); |
| 601 | 601 | if( isBinary ){ |
| 602 | 602 | rc = -1; |
| @@ -643,11 +643,11 @@ | ||
| 643 | 643 | fossil_print("DELETE %s\n", zName); |
| 644 | 644 | if( chnged ){ |
| 645 | 645 | fossil_warning("WARNING: local edits lost for %s\n", zName); |
| 646 | 646 | nConflict++; |
| 647 | 647 | } |
| 648 | - undo_save(zName); | |
| 648 | + if( !dryRunFlag ) undo_save(zName); | |
| 649 | 649 | db_multi_exec( |
| 650 | 650 | "UPDATE vfile SET deleted=1 WHERE id=%d", idv |
| 651 | 651 | ); |
| 652 | 652 | if( !dryRunFlag ){ |
| 653 | 653 | char *zFullPath = mprintf("%s%s", g.zLocalRoot, zName); |
| @@ -669,12 +669,12 @@ | ||
| 669 | 669 | while( db_step(&q)==SQLITE_ROW ){ |
| 670 | 670 | int idv = db_column_int(&q, 0); |
| 671 | 671 | const char *zOldName = db_column_text(&q, 1); |
| 672 | 672 | const char *zNewName = db_column_text(&q, 2); |
| 673 | 673 | fossil_print("RENAME %s -> %s\n", zOldName, zNewName); |
| 674 | - undo_save(zOldName); | |
| 675 | - undo_save(zNewName); | |
| 674 | + if( !dryRunFlag ) undo_save(zOldName); | |
| 675 | + if( !dryRunFlag ) undo_save(zNewName); | |
| 676 | 676 | db_multi_exec( |
| 677 | 677 | "UPDATE vfile SET pathname=%Q, origname=coalesce(origname,pathname)" |
| 678 | 678 | " WHERE id=%d AND vid=%d", zNewName, idv, vid |
| 679 | 679 | ); |
| 680 | 680 | if( !dryRunFlag ){ |
| @@ -726,8 +726,8 @@ | ||
| 726 | 726 | }else if( integrateFlag ){ |
| 727 | 727 | db_multi_exec("INSERT OR IGNORE INTO vmerge(id,merge) VALUES(-4,%d)",mid); |
| 728 | 728 | }else{ |
| 729 | 729 | db_multi_exec("INSERT OR IGNORE INTO vmerge(id,merge) VALUES(0,%d)", mid); |
| 730 | 730 | } |
| 731 | - undo_finish(); | |
| 731 | + if( !dryRunFlag ) undo_finish(); | |
| 732 | 732 | db_end_transaction(dryRunFlag); |
| 733 | 733 | } |
| 734 | 734 |
| --- src/merge.c | |
| +++ src/merge.c | |
| @@ -592,11 +592,11 @@ | |
| 592 | } |
| 593 | if( islinkv || islinkm /* || file_wd_islink(zFullPath) */ ){ |
| 594 | fossil_print("***** Cannot merge symlink %s\n", zName); |
| 595 | nConflict++; |
| 596 | }else{ |
| 597 | undo_save(zName); |
| 598 | zFullPath = mprintf("%s/%s", g.zLocalRoot, zName); |
| 599 | content_get(ridp, &p); |
| 600 | content_get(ridm, &m); |
| 601 | if( isBinary ){ |
| 602 | rc = -1; |
| @@ -643,11 +643,11 @@ | |
| 643 | fossil_print("DELETE %s\n", zName); |
| 644 | if( chnged ){ |
| 645 | fossil_warning("WARNING: local edits lost for %s\n", zName); |
| 646 | nConflict++; |
| 647 | } |
| 648 | undo_save(zName); |
| 649 | db_multi_exec( |
| 650 | "UPDATE vfile SET deleted=1 WHERE id=%d", idv |
| 651 | ); |
| 652 | if( !dryRunFlag ){ |
| 653 | char *zFullPath = mprintf("%s%s", g.zLocalRoot, zName); |
| @@ -669,12 +669,12 @@ | |
| 669 | while( db_step(&q)==SQLITE_ROW ){ |
| 670 | int idv = db_column_int(&q, 0); |
| 671 | const char *zOldName = db_column_text(&q, 1); |
| 672 | const char *zNewName = db_column_text(&q, 2); |
| 673 | fossil_print("RENAME %s -> %s\n", zOldName, zNewName); |
| 674 | undo_save(zOldName); |
| 675 | undo_save(zNewName); |
| 676 | db_multi_exec( |
| 677 | "UPDATE vfile SET pathname=%Q, origname=coalesce(origname,pathname)" |
| 678 | " WHERE id=%d AND vid=%d", zNewName, idv, vid |
| 679 | ); |
| 680 | if( !dryRunFlag ){ |
| @@ -726,8 +726,8 @@ | |
| 726 | }else if( integrateFlag ){ |
| 727 | db_multi_exec("INSERT OR IGNORE INTO vmerge(id,merge) VALUES(-4,%d)",mid); |
| 728 | }else{ |
| 729 | db_multi_exec("INSERT OR IGNORE INTO vmerge(id,merge) VALUES(0,%d)", mid); |
| 730 | } |
| 731 | undo_finish(); |
| 732 | db_end_transaction(dryRunFlag); |
| 733 | } |
| 734 |
| --- src/merge.c | |
| +++ src/merge.c | |
| @@ -592,11 +592,11 @@ | |
| 592 | } |
| 593 | if( islinkv || islinkm /* || file_wd_islink(zFullPath) */ ){ |
| 594 | fossil_print("***** Cannot merge symlink %s\n", zName); |
| 595 | nConflict++; |
| 596 | }else{ |
| 597 | if( !dryRunFlag ) undo_save(zName); |
| 598 | zFullPath = mprintf("%s/%s", g.zLocalRoot, zName); |
| 599 | content_get(ridp, &p); |
| 600 | content_get(ridm, &m); |
| 601 | if( isBinary ){ |
| 602 | rc = -1; |
| @@ -643,11 +643,11 @@ | |
| 643 | fossil_print("DELETE %s\n", zName); |
| 644 | if( chnged ){ |
| 645 | fossil_warning("WARNING: local edits lost for %s\n", zName); |
| 646 | nConflict++; |
| 647 | } |
| 648 | if( !dryRunFlag ) undo_save(zName); |
| 649 | db_multi_exec( |
| 650 | "UPDATE vfile SET deleted=1 WHERE id=%d", idv |
| 651 | ); |
| 652 | if( !dryRunFlag ){ |
| 653 | char *zFullPath = mprintf("%s%s", g.zLocalRoot, zName); |
| @@ -669,12 +669,12 @@ | |
| 669 | while( db_step(&q)==SQLITE_ROW ){ |
| 670 | int idv = db_column_int(&q, 0); |
| 671 | const char *zOldName = db_column_text(&q, 1); |
| 672 | const char *zNewName = db_column_text(&q, 2); |
| 673 | fossil_print("RENAME %s -> %s\n", zOldName, zNewName); |
| 674 | if( !dryRunFlag ) undo_save(zOldName); |
| 675 | if( !dryRunFlag ) undo_save(zNewName); |
| 676 | db_multi_exec( |
| 677 | "UPDATE vfile SET pathname=%Q, origname=coalesce(origname,pathname)" |
| 678 | " WHERE id=%d AND vid=%d", zNewName, idv, vid |
| 679 | ); |
| 680 | if( !dryRunFlag ){ |
| @@ -726,8 +726,8 @@ | |
| 726 | }else if( integrateFlag ){ |
| 727 | db_multi_exec("INSERT OR IGNORE INTO vmerge(id,merge) VALUES(-4,%d)",mid); |
| 728 | }else{ |
| 729 | db_multi_exec("INSERT OR IGNORE INTO vmerge(id,merge) VALUES(0,%d)", mid); |
| 730 | } |
| 731 | if( !dryRunFlag ) undo_finish(); |
| 732 | db_end_transaction(dryRunFlag); |
| 733 | } |
| 734 |