Fossil SCM
The "fossil info" command now shows tags associated with the current check-out.
Commit
2521a0a9a704b41543f204e92e6837314cf622aa
Parent
7c7edde11693406…
1 file changed
+11
+11
| --- src/info.c | ||
| +++ src/info.c | ||
| @@ -39,10 +39,11 @@ | ||
| 39 | 39 | ** * who signed it |
| 40 | 40 | */ |
| 41 | 41 | void show_common_info(int rid, const char *zUuidName, int showComment){ |
| 42 | 42 | Stmt q; |
| 43 | 43 | char *zComment = 0; |
| 44 | + char *zTags; | |
| 44 | 45 | db_prepare(&q, |
| 45 | 46 | "SELECT uuid" |
| 46 | 47 | " FROM blob WHERE rid=%d", rid |
| 47 | 48 | ); |
| 48 | 49 | if( db_step(&q)==SQLITE_ROW ){ |
| @@ -62,10 +63,20 @@ | ||
| 62 | 63 | while( db_step(&q)==SQLITE_ROW ){ |
| 63 | 64 | const char *zUuid = db_column_text(&q, 0); |
| 64 | 65 | printf("child: %s\n", zUuid); |
| 65 | 66 | } |
| 66 | 67 | db_finalize(&q); |
| 68 | + zTags = db_text(0, "SELECT group_concat(substr(tagname, 5), ', ')" | |
| 69 | + " FROM tagxref, tag" | |
| 70 | + " WHERE tagxref.rid=%d AND tagxref.tagtype>0" | |
| 71 | + " AND tag.tagid=tagxref.tagid" | |
| 72 | + " AND tag.tagname GLOB 'sym-*'", | |
| 73 | + rid); | |
| 74 | + if( zTags && zTags[0] ){ | |
| 75 | + printf("tags: %s\n", zTags); | |
| 76 | + } | |
| 77 | + free(zTags); | |
| 67 | 78 | if( zComment ){ |
| 68 | 79 | printf("comment:\n%s\n", zComment); |
| 69 | 80 | free(zComment); |
| 70 | 81 | } |
| 71 | 82 | } |
| 72 | 83 |
| --- src/info.c | |
| +++ src/info.c | |
| @@ -39,10 +39,11 @@ | |
| 39 | ** * who signed it |
| 40 | */ |
| 41 | void show_common_info(int rid, const char *zUuidName, int showComment){ |
| 42 | Stmt q; |
| 43 | char *zComment = 0; |
| 44 | db_prepare(&q, |
| 45 | "SELECT uuid" |
| 46 | " FROM blob WHERE rid=%d", rid |
| 47 | ); |
| 48 | if( db_step(&q)==SQLITE_ROW ){ |
| @@ -62,10 +63,20 @@ | |
| 62 | while( db_step(&q)==SQLITE_ROW ){ |
| 63 | const char *zUuid = db_column_text(&q, 0); |
| 64 | printf("child: %s\n", zUuid); |
| 65 | } |
| 66 | db_finalize(&q); |
| 67 | if( zComment ){ |
| 68 | printf("comment:\n%s\n", zComment); |
| 69 | free(zComment); |
| 70 | } |
| 71 | } |
| 72 |
| --- src/info.c | |
| +++ src/info.c | |
| @@ -39,10 +39,11 @@ | |
| 39 | ** * who signed it |
| 40 | */ |
| 41 | void show_common_info(int rid, const char *zUuidName, int showComment){ |
| 42 | Stmt q; |
| 43 | char *zComment = 0; |
| 44 | char *zTags; |
| 45 | db_prepare(&q, |
| 46 | "SELECT uuid" |
| 47 | " FROM blob WHERE rid=%d", rid |
| 48 | ); |
| 49 | if( db_step(&q)==SQLITE_ROW ){ |
| @@ -62,10 +63,20 @@ | |
| 63 | while( db_step(&q)==SQLITE_ROW ){ |
| 64 | const char *zUuid = db_column_text(&q, 0); |
| 65 | printf("child: %s\n", zUuid); |
| 66 | } |
| 67 | db_finalize(&q); |
| 68 | zTags = db_text(0, "SELECT group_concat(substr(tagname, 5), ', ')" |
| 69 | " FROM tagxref, tag" |
| 70 | " WHERE tagxref.rid=%d AND tagxref.tagtype>0" |
| 71 | " AND tag.tagid=tagxref.tagid" |
| 72 | " AND tag.tagname GLOB 'sym-*'", |
| 73 | rid); |
| 74 | if( zTags && zTags[0] ){ |
| 75 | printf("tags: %s\n", zTags); |
| 76 | } |
| 77 | free(zTags); |
| 78 | if( zComment ){ |
| 79 | printf("comment:\n%s\n", zComment); |
| 80 | free(zComment); |
| 81 | } |
| 82 | } |
| 83 |