Fossil SCM

Further improvements to the "fossil git status" command.

drh 2019-04-23 12:46 trunk
Commit 8b18d011a4a99f8bf41b475df8140c33c39c7dbc82af40eadb70d99ed596bc3c
1 file changed +9 -2
+9 -2
--- src/export.c
+++ src/export.c
@@ -1575,11 +1575,17 @@
15751575
}
15761576
fossil_print("Git mirror: %s\n", zMirror);
15771577
db_multi_exec("ATTACH '%q/.mirror_state/db' AS mirror;", zMirror);
15781578
z = db_text(0, "SELECT datetime(value) FROM mconfig WHERE key='start'");
15791579
if( z ){
1580
- fossil_print("Last export: %s\n", z);
1580
+ double rAge = db_double(0.0, "SELECT julianday('now') - value"
1581
+ " FROM mconfig WHERE key='start'");
1582
+ if( rAge>1.0/86400.0 ){
1583
+ fossil_print("Last export: %s (%z ago)\n", z, human_readable_age(rAge));
1584
+ }else{
1585
+ fossil_print("Last export: %s (moments ago)\n", z);
1586
+ }
15811587
}
15821588
z = db_text(0, "SELECT value FROM mconfig WHERE key='autopush'");
15831589
if( z==0 ){
15841590
fossil_print("Autopush: off\n");
15851591
}else{
@@ -1594,11 +1600,12 @@
15941600
" WHERE key='start'),0.0)"
15951601
);
15961602
if( n==0 ){
15971603
fossil_print("Status: up-to-date\n");
15981604
}else{
1599
- fossil_print("Status: %d check-ins awaiting export\n", n);
1605
+ fossil_print("Status: %d check-in%s awaiting export\n",
1606
+ n, n==1 ? "" : "s");
16001607
}
16011608
n = db_int(0, "SELECT count(*) FROM mmark WHERE isfile");
16021609
k = db_int(0, "SELECT count(*) FROm mmark WHERE NOT isfile");
16031610
fossil_print("Exported: %d check-ins and %d file blobs\n", k, n);
16041611
}
16051612
--- src/export.c
+++ src/export.c
@@ -1575,11 +1575,17 @@
1575 }
1576 fossil_print("Git mirror: %s\n", zMirror);
1577 db_multi_exec("ATTACH '%q/.mirror_state/db' AS mirror;", zMirror);
1578 z = db_text(0, "SELECT datetime(value) FROM mconfig WHERE key='start'");
1579 if( z ){
1580 fossil_print("Last export: %s\n", z);
 
 
 
 
 
 
1581 }
1582 z = db_text(0, "SELECT value FROM mconfig WHERE key='autopush'");
1583 if( z==0 ){
1584 fossil_print("Autopush: off\n");
1585 }else{
@@ -1594,11 +1600,12 @@
1594 " WHERE key='start'),0.0)"
1595 );
1596 if( n==0 ){
1597 fossil_print("Status: up-to-date\n");
1598 }else{
1599 fossil_print("Status: %d check-ins awaiting export\n", n);
 
1600 }
1601 n = db_int(0, "SELECT count(*) FROM mmark WHERE isfile");
1602 k = db_int(0, "SELECT count(*) FROm mmark WHERE NOT isfile");
1603 fossil_print("Exported: %d check-ins and %d file blobs\n", k, n);
1604 }
1605
--- src/export.c
+++ src/export.c
@@ -1575,11 +1575,17 @@
1575 }
1576 fossil_print("Git mirror: %s\n", zMirror);
1577 db_multi_exec("ATTACH '%q/.mirror_state/db' AS mirror;", zMirror);
1578 z = db_text(0, "SELECT datetime(value) FROM mconfig WHERE key='start'");
1579 if( z ){
1580 double rAge = db_double(0.0, "SELECT julianday('now') - value"
1581 " FROM mconfig WHERE key='start'");
1582 if( rAge>1.0/86400.0 ){
1583 fossil_print("Last export: %s (%z ago)\n", z, human_readable_age(rAge));
1584 }else{
1585 fossil_print("Last export: %s (moments ago)\n", z);
1586 }
1587 }
1588 z = db_text(0, "SELECT value FROM mconfig WHERE key='autopush'");
1589 if( z==0 ){
1590 fossil_print("Autopush: off\n");
1591 }else{
@@ -1594,11 +1600,12 @@
1600 " WHERE key='start'),0.0)"
1601 );
1602 if( n==0 ){
1603 fossil_print("Status: up-to-date\n");
1604 }else{
1605 fossil_print("Status: %d check-in%s awaiting export\n",
1606 n, n==1 ? "" : "s");
1607 }
1608 n = db_int(0, "SELECT count(*) FROM mmark WHERE isfile");
1609 k = db_int(0, "SELECT count(*) FROm mmark WHERE NOT isfile");
1610 fossil_print("Exported: %d check-ins and %d file blobs\n", k, n);
1611 }
1612

Keyboard Shortcuts

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