Overview
SHA1 Hash: | 50ff86afd0ea05c68d5cb7ec67e7d64df1bc92ac |
---|---|
Date: | 2007-11-08 16:14:13 |
User: | drh |
Comment: | Add the --detail flag to the merge command. |
Timelines: | ancestors | descendants | both | trunk |
Other Links: | files | ZIP archive | manifest |
Tags And Properties
- branch=trunk inherited from [a28c83647d]
- sym-trunk inherited from [a28c83647d]
Changes
[hide diffs]Modified src/merge.c from [246b01382f] to [4db3ee048d].
@@ -44,11 +44,13 @@ void merge_cmd(void){ int vid; /* Current version */ int mid; /* Version we are merging against */ int pid; /* The pivot version - most recent common ancestor */ Stmt q; + int detailFlag; + detailFlag = find_option("detail",0,0)!=0; if( g.argc!=3 ){ usage("VERSION"); } db_must_be_within_tree(); vid = db_lget_int("checkout", 0); @@ -215,23 +217,28 @@ /* ** Do a three-way merge on files that have changes pid->mid and pid->vid */ db_prepare(&q, - "SELECT ridm, idv, ridp FROM fv" + "SELECT ridm, idv, ridp, ridv FROM fv" " WHERE idp>0 AND idv>0 AND idm>0" " AND ridm!=ridp AND (ridv!=ridp OR chnged)" ); while( db_step(&q)==SQLITE_ROW ){ int ridm = db_column_int(&q, 0); int idv = db_column_int(&q, 1); int ridp = db_column_int(&q, 2); + int ridv = db_column_int(&q, 3); char *zName = db_text(0, "SELECT pathname FROM vfile WHERE id=%d", idv); char *zFullPath; Blob m, p, v, r; /* Do a 3-way merge of idp->idm into idp->idv. The results go into idv. */ - printf("MERGE %s\n", zName); + if( detailFlag ){ + printf("MERGE %s (pivot=%d v1=%d v2=%d)\n", zName, ridp, ridm, ridv); + }else{ + printf("MERGE %s\n", zName); + } undo_save(zName); zFullPath = mprintf("%s/%s", g.zLocalRoot, zName); free(zName); content_get(ridp, &p); content_get(ridm, &m);