Fossil SCM

improve whatis output when lising checkins contain some file artifact by showing on which branch belong the checkin. (just like the /whatis webpage)

mgagnon 2025-07-09 21:54 trunk
Commit d3896c2acd8fe71862bddafc301bd60f07af8c5627dc505b48e1b18250e97fd5
1 file changed +6 -3
+6 -3
--- src/name.c
+++ src/name.c
@@ -1223,26 +1223,29 @@
12231223
db_finalize(&q);
12241224
12251225
/* Check to see if this object is used as a file in a check-in */
12261226
db_prepare(&q,
12271227
"SELECT filename.name, blob.uuid, datetime(event.mtime,toLocal()),"
1228
- " coalesce(euser,user), coalesce(ecomment,comment)"
1228
+ " coalesce(euser,user), coalesce(ecomment,comment),"
1229
+ " coalesce((SELECT value FROM tagxref"
1230
+ " WHERE tagid=%d AND tagtype>0 AND rid=mlink.mid),'trunk')"
12291231
" FROM mlink, filename, blob, event"
12301232
" WHERE mlink.fid=%d"
12311233
" AND filename.fnid=mlink.fnid"
12321234
" AND event.objid=mlink.mid"
12331235
" AND blob.rid=mlink.mid"
12341236
" ORDER BY event.mtime %s /*sort*/",
1235
- rid,
1237
+ TAG_BRANCH, rid,
12361238
(flags & WHATIS_BRIEF) ? "LIMIT 1" : "DESC");
12371239
while( db_step(&q)==SQLITE_ROW ){
12381240
if( flags & WHATIS_BRIEF ){
12391241
fossil_print("mtime: %s\n", db_column_text(&q,2));
12401242
}
12411243
fossil_print("file: %s\n", db_column_text(&q,0));
1242
- fossil_print(" part of [%S] by %s on %s\n",
1244
+ fossil_print(" part of [%S] on branch %s by %s on %s\n",
12431245
db_column_text(&q, 1),
1246
+ db_column_text(&q, 5),
12441247
db_column_text(&q, 3),
12451248
db_column_text(&q, 2));
12461249
fossil_print(" ");
12471250
comment_print(db_column_text(&q,4), 0, 12, -1, get_comment_format());
12481251
cnt++;
12491252
--- src/name.c
+++ src/name.c
@@ -1223,26 +1223,29 @@
1223 db_finalize(&q);
1224
1225 /* Check to see if this object is used as a file in a check-in */
1226 db_prepare(&q,
1227 "SELECT filename.name, blob.uuid, datetime(event.mtime,toLocal()),"
1228 " coalesce(euser,user), coalesce(ecomment,comment)"
 
 
1229 " FROM mlink, filename, blob, event"
1230 " WHERE mlink.fid=%d"
1231 " AND filename.fnid=mlink.fnid"
1232 " AND event.objid=mlink.mid"
1233 " AND blob.rid=mlink.mid"
1234 " ORDER BY event.mtime %s /*sort*/",
1235 rid,
1236 (flags & WHATIS_BRIEF) ? "LIMIT 1" : "DESC");
1237 while( db_step(&q)==SQLITE_ROW ){
1238 if( flags & WHATIS_BRIEF ){
1239 fossil_print("mtime: %s\n", db_column_text(&q,2));
1240 }
1241 fossil_print("file: %s\n", db_column_text(&q,0));
1242 fossil_print(" part of [%S] by %s on %s\n",
1243 db_column_text(&q, 1),
 
1244 db_column_text(&q, 3),
1245 db_column_text(&q, 2));
1246 fossil_print(" ");
1247 comment_print(db_column_text(&q,4), 0, 12, -1, get_comment_format());
1248 cnt++;
1249
--- src/name.c
+++ src/name.c
@@ -1223,26 +1223,29 @@
1223 db_finalize(&q);
1224
1225 /* Check to see if this object is used as a file in a check-in */
1226 db_prepare(&q,
1227 "SELECT filename.name, blob.uuid, datetime(event.mtime,toLocal()),"
1228 " coalesce(euser,user), coalesce(ecomment,comment),"
1229 " coalesce((SELECT value FROM tagxref"
1230 " WHERE tagid=%d AND tagtype>0 AND rid=mlink.mid),'trunk')"
1231 " FROM mlink, filename, blob, event"
1232 " WHERE mlink.fid=%d"
1233 " AND filename.fnid=mlink.fnid"
1234 " AND event.objid=mlink.mid"
1235 " AND blob.rid=mlink.mid"
1236 " ORDER BY event.mtime %s /*sort*/",
1237 TAG_BRANCH, rid,
1238 (flags & WHATIS_BRIEF) ? "LIMIT 1" : "DESC");
1239 while( db_step(&q)==SQLITE_ROW ){
1240 if( flags & WHATIS_BRIEF ){
1241 fossil_print("mtime: %s\n", db_column_text(&q,2));
1242 }
1243 fossil_print("file: %s\n", db_column_text(&q,0));
1244 fossil_print(" part of [%S] on branch %s by %s on %s\n",
1245 db_column_text(&q, 1),
1246 db_column_text(&q, 5),
1247 db_column_text(&q, 3),
1248 db_column_text(&q, 2));
1249 fossil_print(" ");
1250 comment_print(db_column_text(&q,4), 0, 12, -1, get_comment_format());
1251 cnt++;
1252

Keyboard Shortcuts

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