Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Fixes to the timeline webpage and the "open" and "update" commands. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
ff4cc5fae2e88f97c536462ac5b63387 |
| User & Date: | drh 2007-09-23 18:49:50.000 |
Context
|
2007-09-23
| ||
| 18:55 | Fix a C++-ism. check-in: 820a1a1a53 user: drh tags: trunk | |
| 18:49 | Fixes to the timeline webpage and the "open" and "update" commands. check-in: ff4cc5fae2 user: drh tags: trunk | |
| 15:02 | Branching now working correctly, including adding of bgcolor tag and correct R line check-in: 2ad378d065 user: jnc tags: trunk | |
Changes
Changes to src/db.c.
| ︙ | ︙ | |||
870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 |
**
** Open a connection to the local repository in FILENAME. A checkout
** for the repository is created with its root at the working directory.
** See also the "close" command.
*/
void cmd_open(void){
Blob path;
if( g.argc!=3 ){
usage("REPOSITORY-FILENAME");
}
if( db_open_local() ){
fossil_panic("already within an open tree rooted at %s", g.zLocalRoot);
}
file_canonical_name(g.argv[2], &path);
db_open_repository(blob_str(&path));
db_init_database("./_FOSSIL_", zLocalSchema, (char*)0);
db_open_local();
db_lset("repository", blob_str(&path));
| > > > > | > > > | 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 |
**
** Open a connection to the local repository in FILENAME. A checkout
** for the repository is created with its root at the working directory.
** See also the "close" command.
*/
void cmd_open(void){
Blob path;
int vid;
static char *azNewArgv[] = { 0, "update", "--latest", 0 };
if( g.argc!=3 ){
usage("REPOSITORY-FILENAME");
}
if( db_open_local() ){
fossil_panic("already within an open tree rooted at %s", g.zLocalRoot);
}
file_canonical_name(g.argv[2], &path);
db_open_repository(blob_str(&path));
db_init_database("./_FOSSIL_", zLocalSchema, (char*)0);
db_open_local();
db_lset("repository", blob_str(&path));
vid = db_int(0, "SELECT pid FROM plink y"
" WHERE NOT EXISTS(SELECT 1 FROM plink x WHERE x.cid=y.pid)");
db_lset_int("checkout", vid);
g.argv = azNewArgv;
g.argc = 3;
update_cmd();
}
/*
** COMMAND: config
**
** Usage: %fossil config NAME=VALUE ...
**
|
| ︙ | ︙ |
Changes to src/timeline.c.
| ︙ | ︙ | |||
362 363 364 365 366 367 368 | @ Start Date: @ <input type="text" size="30" value="%h(zStart)" name="d"> @ Number Of Entries: @ <input type="text" size="4" value="%d(nEntry)" name="n"> @ <br><input type="submit" value="Submit"> @ </form> @ <form method="GET" action="%s(g.zBaseURL)/timeline"> | | > > > > > > | 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 | @ Start Date: @ <input type="text" size="30" value="%h(zStart)" name="d"> @ Number Of Entries: @ <input type="text" size="4" value="%d(nEntry)" name="n"> @ <br><input type="submit" value="Submit"> @ </form> @ <form method="GET" action="%s(g.zBaseURL)/timeline"> @ <input type="hidden" value="%d(lastEvent)" name="e"> @ <input type="hidden" value="%d(nEntry)" name="n"> @ <input type="submit" value="Next %d(nEntry) Rows"> @ </form> @ <form method="GET" action="%s(g.zBaseURL)/timeline"> @ <input type="hidden" value="%d(firstEvent)" name="e"> @ <input type="hidden" value="1" name="a"> @ <input type="hidden" value="%d(nEntry)" name="n"> @ <input type="submit" value="Previous %d(nEntry) Rows"> @ </form> style_footer(); } /* ** The input query q selects various records. Print a human-readable ** summary of those records. ** |
| ︙ | ︙ |
Changes to src/update.c.
| ︙ | ︙ | |||
49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
** not overwritten. Edits are merged into the new version.
**
*/
void update_cmd(void){
int vid; /* Current version */
int tid; /* Target version - version we are changing to */
Stmt q;
if( g.argc!=3 && g.argc!=2 ){
usage("?VERSION?");
}
db_must_be_within_tree();
vid = db_lget_int("checkout", 0);
if( vid==0 ){
| > > | | | > > | 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
** not overwritten. Edits are merged into the new version.
**
*/
void update_cmd(void){
int vid; /* Current version */
int tid; /* Target version - version we are changing to */
Stmt q;
int latestFlag; /* Pick the latest version if true */
latestFlag = find_option("latest",0, 0)!=0;
if( g.argc!=3 && g.argc!=2 ){
usage("?VERSION?");
}
db_must_be_within_tree();
vid = db_lget_int("checkout", 0);
if( vid==0 ){
fossil_fatal("cannot find current version");
}
if( db_exists("SELECT 1 FROM vmerge") ){
fossil_fatal("cannot update an uncommitted merge");
}
if( g.argc==3 ){
tid = name_to_rid(g.argv[2]);
if( tid==0 ){
fossil_fatal("not a version: %s", g.argv[2]);
}
if( !is_a_version(tid) ){
fossil_fatal("not a version: %s", g.argv[2]);
}
}else{
compute_leaves(vid);
if( !latestFlag && db_int(0, "SELECT count(*) FROM leaves")>1 ){
db_prepare(&q,
"%s "
" AND event.objid IN leaves"
" ORDER BY event.mtime DESC",
timeline_query_for_tty()
);
print_timeline(&q, 100);
db_finalize(&q);
fossil_fatal("Multiple descendents");
}
tid = db_int(0, "SELECT rid FROM leaves, event"
" WHERE event.objid=leaves.rid"
" ORDER BY event.mtime DESC");
}
db_begin_transaction();
vfile_check_signature(vid);
undo_begin();
load_vfile_from_rid(tid);
|
| ︙ | ︙ |