Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Break up the command-line commands into commonly-use and auxiliary commands and only show the commonly-used ones with "fossil help". Add a new command "fossil commands" to show auxiliary and test commands. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
841772c858ac63a8a284f24111239ba4 |
| User & Date: | drh 2011-11-03 17:31:10.232 |
Context
|
2011-11-03
| ||
| 18:04 | Move "sha1sum" to an auxiliary command. Promote "test-md5sum" to an auxiliary command. ... (check-in: dde919a463 user: drh tags: trunk) | |
| 17:31 | Break up the command-line commands into commonly-use and auxiliary commands and only show the commonly-used ones with "fossil help". Add a new command "fossil commands" to show auxiliary and test commands. ... (check-in: 841772c858 user: drh tags: trunk) | |
| 14:22 | Fix a bug in mlink table building during "rebuild". If a check-in and its parent are both deltas of the same baseline and the child reverts to baseline after a change in the parent, be sure to capture this change in the mlink table. This is the correct fix for the errant fix_mlink branch. ... (check-in: d084043f79 user: drh tags: trunk) | |
Changes
Changes to src/add.c.
| ︙ | ︙ | |||
258 259 260 261 262 263 264 | add_files_in_sfile(vid, caseSensitive); db_end_transaction(0); } /* ** COMMAND: rm | | | 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 | add_files_in_sfile(vid, caseSensitive); db_end_transaction(0); } /* ** COMMAND: rm ** COMMAND: delete* ** ** Usage: %fossil rm FILE1 ?FILE2 ...? ** or: %fossil delete FILE1 ?FILE2 ...? ** ** Remove one or more files or directories from the repository. ** ** This command does NOT remove the files from disk. It just marks the |
| ︙ | ︙ | |||
471 472 473 474 475 476 477 |
"UPDATE vfile SET pathname='%s' WHERE pathname='%s' AND vid=%d",
zNew, zOrig, vid
);
}
/*
** COMMAND: mv
| | | 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 |
"UPDATE vfile SET pathname='%s' WHERE pathname='%s' AND vid=%d",
zNew, zOrig, vid
);
}
/*
** COMMAND: mv
** COMMAND: rename*
**
** Usage: %fossil mv|rename OLDNAME NEWNAME
** or: %fossil mv|rename OLDNAME... DIR
**
** Move or rename one or more files or directories within the repository tree.
** You can either rename a file or directory or move it to another subdirectory.
**
|
| ︙ | ︙ |
Changes to src/checkin.c.
| ︙ | ︙ | |||
823 824 825 826 827 828 829 |
}
blob_reset(&ans);
blob_reset(&fname);
}
}
/*
| | | 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 |
}
blob_reset(&ans);
blob_reset(&fname);
}
}
/*
** COMMAND: ci*
** COMMAND: commit
**
** Usage: %fossil commit ?OPTIONS? ?FILE...?
**
** Create a new version containing all of the changes in the current
** checkout. You will be prompted to enter a check-in comment unless
** the comment has been specified on the command-line using "-m" or a
|
| ︙ | ︙ |
Changes to src/checkout.c.
| ︙ | ︙ | |||
159 160 161 162 163 164 165 |
free(zManFile);
}
}
}
/*
| | | | 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 |
free(zManFile);
}
}
}
/*
** COMMAND: checkout*
** COMMAND: co*
**
** Usage: %fossil checkout ?VERSION | --latest? ?OPTIONS?
** or: %fossil co ?VERSION | --latest? ?OPTIONS?
**
** Check out a version specified on the command-line. This command
** will abort if there are edited files in the current checkout unless
** the --force option appears on the command-line. The --keep option
|
| ︙ | ︙ | |||
270 271 272 273 274 275 276 |
file_delete(z);
free(z);
}
}
}
/*
| | | 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 |
file_delete(z);
free(z);
}
}
}
/*
** COMMAND: close*
**
** Usage: %fossil close ?OPTIONS?
**
** The opposite of "open". Close the current database connection.
** Require a -f or --force flag if there are unsaved changed in the
** current check-out.
**
|
| ︙ | ︙ |
Changes to src/configure.c.
| ︙ | ︙ | |||
722 723 724 725 726 727 728 | configure_send_group(&out, groupMask, iStart); blob_write_to_file(&out, zFilename); blob_reset(&out); } /* | | | 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 | configure_send_group(&out, groupMask, iStart); blob_write_to_file(&out, zFilename); blob_reset(&out); } /* ** COMMAND: configuration* ** ** Usage: %fossil configuration METHOD ... ?OPTIONS? ** ** Where METHOD is one of: export import merge pull push reset. All methods ** accept the -R or --repository option to specific a repository. ** ** %fossil configuration export AREA FILENAME |
| ︙ | ︙ |
Changes to src/content.c.
| ︙ | ︙ | |||
301 302 303 304 305 306 307 |
}else{
bag_insert(&contentCache.available, rid);
}
return rc;
}
/*
| | | 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 |
}else{
bag_insert(&contentCache.available, rid);
}
return rc;
}
/*
** COMMAND: artifact*
**
** Usage: %fossil artifact ARTIFACT-ID ?OUTPUT-FILENAME? ?OPTIONS?
**
** Extract an artifact by its SHA1 hash and write the results on
** standard output, or if the optional 4th argument is given, in
** the named output file.
**
|
| ︙ | ︙ |
Changes to src/db.c.
| ︙ | ︙ | |||
1162 1163 1164 1165 1166 1167 1168 |
blob_reset(&hash);
rid = content_put(&manifest);
manifest_crosslink(rid, &manifest);
}
}
/*
| | | 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 |
blob_reset(&hash);
rid = content_put(&manifest);
manifest_crosslink(rid, &manifest);
}
}
/*
** COMMAND: new*
** COMMAND: init
**
** Usage: %fossil new ?OPTIONS? FILENAME
** Or: %fossil init ?OPTIONS? FILENAME
**
** Create a repository for a new project in the file named FILENAME.
** This command is distinct from "clone". The "clone" command makes
|
| ︙ | ︙ | |||
1797 1798 1799 1800 1801 1802 1803 |
{ "web-browser", 0, 32, 0, "" },
{ "white-foreground", 0, 0, 0, "off" },
{ 0,0,0,0,0 }
};
/*
** COMMAND: settings
| | | 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 |
{ "web-browser", 0, 32, 0, "" },
{ "white-foreground", 0, 0, 0, "off" },
{ 0,0,0,0,0 }
};
/*
** COMMAND: settings
** COMMAND: unset*
**
** %fossil settings ?PROPERTY? ?VALUE? ?-global?
** %fossil unset PROPERTY ?-global?
**
** The "settings" command with no arguments lists all properties and their
** values. With just a property name it shows the value of that property.
** With a value argument it changes the property for the current repository.
|
| ︙ | ︙ |
Changes to src/descendants.c.
| ︙ | ︙ | |||
261 262 263 264 265 266 267 | bag_clear(&seen); pqueue_clear(&queue); db_finalize(&ins); db_finalize(&q); } /* | | | 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 | bag_clear(&seen); pqueue_clear(&queue); db_finalize(&ins); db_finalize(&q); } /* ** COMMAND: descendants* ** ** Usage: %fossil descendants ?BASELINE-ID? ?OPTIONS? ** ** Find all leaf descendants of the baseline specified or if the argument ** is omitted, of the baseline currently checked out. ** ** Options: |
| ︙ | ︙ | |||
296 297 298 299 300 301 302 |
timeline_query_for_tty()
);
print_timeline(&q, 20, 0);
db_finalize(&q);
}
/*
| | | 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 |
timeline_query_for_tty()
);
print_timeline(&q, 20, 0);
db_finalize(&q);
}
/*
** COMMAND: leaves*
**
** Usage: %fossil leaves ?OPTIONS?
**
** Find leaves of all branches. By default show only open leaves.
** The --all flag causes all leaves (closed and open) to be shown.
** The --closed flag shows only closed leaves.
**
|
| ︙ | ︙ |
Changes to src/main.c.
| ︙ | ︙ | |||
323 324 325 326 327 328 329 |
expand_args_option();
argc = g.argc;
argv = g.argv;
for(i=0; i<argc; i++) g.argv[i] = fossil_mbcs_to_utf8(argv[i]);
if( getenv("GATEWAY_INTERFACE")!=0 && !find_option("nocgi", 0, 0)){
zCmdName = "cgi";
}else if( argc<2 ){
| > | | | > | > | 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 |
expand_args_option();
argc = g.argc;
argv = g.argv;
for(i=0; i<argc; i++) g.argv[i] = fossil_mbcs_to_utf8(argv[i]);
if( getenv("GATEWAY_INTERFACE")!=0 && !find_option("nocgi", 0, 0)){
zCmdName = "cgi";
}else if( argc<2 ){
fossil_print(
"Usage: %s COMMAND ...\n"
" or: %s help -- for a list of common commands\n"
" or: %s help COMMMAND -- for help with the named command\n"
" or: %s commands -- for a list of all commands\n",
argv[0], argv[0], argv[0], argv[0]);
fossil_exit(1);
}else{
g.fQuiet = find_option("quiet", 0, 0)!=0;
g.fSqlTrace = find_option("sqltrace", 0, 0)!=0;
g.fSqlStats = find_option("sqlstats", 0, 0)!=0;
g.fSystemTrace = find_option("systemtrace", 0, 0)!=0;
if( g.fSqlTrace ) g.fSqlStats = 1;
g.fSqlPrint = find_option("sqlprint", 0, 0)!=0;
|
| ︙ | ︙ | |||
366 367 368 369 370 371 372 |
blob_zero(&couldbe);
n = strlen(zCmdName);
for(i=0; i<count(aCommand); i++){
if( memcmp(zCmdName, aCommand[i].zName, n)==0 ){
blob_appendf(&couldbe, " %s", aCommand[i].zName);
}
}
| | > | 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 |
blob_zero(&couldbe);
n = strlen(zCmdName);
for(i=0; i<count(aCommand); i++){
if( memcmp(zCmdName, aCommand[i].zName, n)==0 ){
blob_appendf(&couldbe, " %s", aCommand[i].zName);
}
}
fossil_print("%s: ambiguous command prefix: %s\n"
"%s: could be any of:%s\n"
"%s: use \"help\" for more information\n",
argv[0], zCmdName, argv[0], blob_str(&couldbe), argv[0]);
fossil_exit(1);
}
aCommand[idx].xFunc();
fossil_exit(0);
/*NOT_REACHED*/
return 0;
}
|
| ︙ | ︙ | |||
691 692 693 694 695 696 697 |
fossil_print("\n");
}
}
/*
** List of commands starting with zPrefix, or all commands if zPrefix is NULL.
*/
| | | | | > | > > | | < < > > | | > > > > | | 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 |
fossil_print("\n");
}
}
/*
** List of commands starting with zPrefix, or all commands if zPrefix is NULL.
*/
static void command_list(const char *zPrefix, int cmdMask){
int i, nCmd;
int nPrefix = zPrefix ? strlen(zPrefix) : 0;
const char *aCmd[count(aCommand)];
for(i=nCmd=0; i<count(aCommand); i++){
const char *z = aCommand[i].zName;
if( (aCommand[i].cmdFlags & cmdMask)==0 ) continue;
if( zPrefix && memcmp(zPrefix, z, nPrefix)!=0 ) continue;
aCmd[nCmd++] = aCommand[i].zName;
}
multi_column_list(aCmd, nCmd);
}
/*
** COMMAND: commands
**
** Usage: %fossil commands ?--test? ?--all? ?--aux?
**
** List available commands. If the --test option is used list only unsupported
** commands intended for testing and debugging. With --all, show all commands
** including test debugging commands. With --aux, show only the auxiliary
** and less often used commands, and/or command aliases.
*/
void cmd_command_list(void){
int cmdFlags = CMDFLAG_1ST_TIER | CMDFLAG_2ND_TIER;
if( find_option("all",0,0)!=0 ){
cmdFlags |= CMDFLAG_TEST;
}else if( find_option("test",0,0)!=0 ){
cmdFlags = CMDFLAG_TEST;
}else if( find_option("aux",0,0)!=0 ){
cmdFlags = CMDFLAG_2ND_TIER;
}else{
fossil_print("Use --test or --all to see test and debug commands.\n");
}
command_list(0, cmdFlags);
}
/*
** COMMAND: test-list-webpage
**
** List all web pages
|
| ︙ | ︙ | |||
754 755 756 757 758 759 760 761 | } /* ** COMMAND: help ** ** Usage: %fossil help COMMAND ** | > | > > > < | > > > > | | | | 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 |
}
/*
** COMMAND: help
**
** Usage: %fossil help COMMAND
** or: %fossil COMMAND -help
**
** Display information on how to use COMMAND. To display a list of
** available commands use:
**
** %fossil commands
*/
void help_cmd(void){
int rc, idx;
const char *z;
if( g.argc<3 ){
z = fossil_nameofexe();
fossil_print(
"Usage: %s help COMMAND\n"
"Common COMMANDs: (use \"%s commands\" for a complete list)\n",
z, z);
command_list(0, CMDFLAG_1ST_TIER);
version_cmd();
return;
}
rc = name_search(g.argv[2], aCommand, count(aCommand), &idx);
if( rc==1 ){
fossil_print("unknown command: %s\nAvailable commands:\n", g.argv[2]);
command_list(0, 0xff);
fossil_exit(1);
}else if( rc==2 ){
fossil_print("ambiguous command prefix: %s\nMatching commands:\n",
g.argv[2]);
command_list(g.argv[2], 0xff);
fossil_exit(1);
}
z = aCmdHelp[idx];
if( z==0 ){
fossil_fatal("no help available for the %s command",
aCommand[idx].zName);
}
|
| ︙ | ︙ | |||
1147 1148 1149 1150 1151 1152 1153 | /* Return the result. */ cgi_reply(); } /* | | | 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 | /* Return the result. */ cgi_reply(); } /* ** COMMAND: cgi* ** ** Usage: %fossil ?cgi? SCRIPT ** ** The SCRIPT argument is the name of a file that is the CGI script ** that is being run. The command name, "cgi", may be omitted if ** the GATEWAY_INTERFACE environment variable is set to "CGI" (which ** should always be the case for CGI scripts run by a webserver.) The |
| ︙ | ︙ | |||
1334 1335 1336 1337 1338 1339 1340 | /* ** undocumented format: ** ** fossil http REPOSITORY INFILE OUTFILE IPADDR ** ** The argv==6 form is used by the win32 server only. ** | | | 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 | /* ** undocumented format: ** ** fossil http REPOSITORY INFILE OUTFILE IPADDR ** ** The argv==6 form is used by the win32 server only. ** ** COMMAND: http* ** ** Usage: %fossil http REPOSITORY [--notfound URL] [--host HOSTNAME] [--https] ** ** Handle a single HTTP request appearing on stdin. The resulting webpage ** is delivered on stdout. This method is used to launch an HTTP request ** handler from inetd, for example. The argument is the name of the ** repository. |
| ︙ | ︙ | |||
1435 1436 1437 1438 1439 1440 1441 | } return 0; } #endif #endif /* | | | 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 | } return 0; } #endif #endif /* ** COMMAND: server* ** COMMAND: ui ** ** Usage: %fossil server ?-P|--port TCPPORT? ?REPOSITORY? ** Or: %fossil ui ?-P|--port TCPPORT? ?REPOSITORY? ** ** Open a socket and begin listening and responding to HTTP requests on ** TCP port 8080, or on any other TCP port defined by the -P or |
| ︙ | ︙ |
Changes to src/mkindex.c.
| ︙ | ︙ | |||
34 35 36 37 38 39 40 | ** webpage name into pointers to the function. ** ** We also scan for comments lines of this form: ** ** COMMAND: cmdname ** ** These entries build a constant table used to map command names into | | > > | 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | ** webpage name into pointers to the function. ** ** We also scan for comments lines of this form: ** ** COMMAND: cmdname ** ** These entries build a constant table used to map command names into ** functions. If cmdname ends with "*" then the command is a second-tier ** command that is not displayed by the "fossil help" command. The ** final "*" is not considered to be part of the command name. ** ** Comment text following COMMAND: through the end of the comment is ** understood to be help text for the command specified. This help ** text is accumulated and a table containing the text for each command ** is generated. That table is used implement the "fossil help" command ** and the "/help" HTTP method. ** |
| ︙ | ︙ | |||
222 223 224 225 226 227 228 229 230 231 232 |
printf("extern void %s(void);\n", aEntry[i].zFunc);
}
printf(
"typedef struct NameMap NameMap;\n"
"struct NameMap {\n"
" const char *zName;\n"
" void (*xFunc)(void);\n"
"};\n"
"static const NameMap aWebpage[] = {\n"
);
for(i=0; i<nFixed && aEntry[i].eType==0; i++){
| > > > > > > | > | | > > > > > > > > > > | > | | > > | 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 |
printf("extern void %s(void);\n", aEntry[i].zFunc);
}
printf(
"typedef struct NameMap NameMap;\n"
"struct NameMap {\n"
" const char *zName;\n"
" void (*xFunc)(void);\n"
" char cmdFlags;\n"
"};\n"
"#define CMDFLAG_1ST_TIER 0x01\n"
"#define CMDFLAG_2ND_TIER 0x02\n"
"#define CMDFLAG_TEST 0x04\n"
"static const NameMap aWebpage[] = {\n"
);
for(i=0; i<nFixed && aEntry[i].eType==0; i++){
const char *z = aEntry[i].zPath;
int n = strlen(z);
printf(" { \"%s\",%*s %s,%*s 1 },\n",
z,
25-n, "",
aEntry[i].zFunc,
(int)(35-strlen(aEntry[i].zFunc)), ""
);
}
printf("};\n");
nType0 = i;
printf(
"static const NameMap aCommand[] = {\n"
);
for(i=nType0; i<nFixed && aEntry[i].eType==1; i++){
const char *z = aEntry[i].zPath;
int n = strlen(z);
int cmdFlags = 0x01;
if( z[n-1]=='*' ){
n--;
cmdFlags = 0x02;
}else if( memcmp(z, "test-", 5)==0 ){
cmdFlags = 0x04;
}
printf(" { \"%.*s\",%*s %s,%*s %d },\n",
n, z,
25-n, "",
aEntry[i].zFunc,
(int)(35-strlen(aEntry[i].zFunc)), "",
cmdFlags
);
}
printf("};\n");
for(i=nType0; i<nFixed; i++){
char *z = aEntry[i].zHelp;
if( z && z[0] ){
printf("static const char zHelp_%s[] = \n", aEntry[i].zFunc);
|
| ︙ | ︙ |
Changes to src/rebuild.c.
| ︙ | ︙ | |||
485 486 487 488 489 490 491 | } db_finalize(&q); db_end_transaction(0); } /* | | | 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 | } db_finalize(&q); db_end_transaction(0); } /* ** COMMAND: rebuild ** ** Usage: %fossil rebuild ?REPOSITORY? ?OPTIONS? ** ** Reconstruct the named repository database from the core ** records. Run this command after updating the fossil ** executable in a way that changes the database schema. ** |
| ︙ | ︙ | |||
718 719 720 721 722 723 724 |
fossil_print(" %3d %s\n", db_column_int(&q,0), db_column_text(&q,1));
}
db_finalize(&q);
}
}
/*
| | | 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 |
fossil_print(" %3d %s\n", db_column_int(&q,0), db_column_text(&q,1));
}
db_finalize(&q);
}
}
/*
** COMMAND: scrub*
** %fossil scrub ?OPTIONS? ?REPOSITORY?
**
** The command removes sensitive information (such as passwords) from a
** repository so that the respository can be sent to an untrusted reader.
**
** By default, only passwords are removed. However, if the --verily option
** is added, then private branches, concealed email addresses, IP
|
| ︙ | ︙ | |||
852 853 854 855 856 857 858 |
fossil_panic("encountered error %d while trying to open \"%s\".",
errno, g.argv[3]);
}
fossil_mbcs_free(zMbcsPath);
}
/*
| | | 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 |
fossil_panic("encountered error %d while trying to open \"%s\".",
errno, g.argv[3]);
}
fossil_mbcs_free(zMbcsPath);
}
/*
** COMMAND: reconstruct*
**
** Usage: %fossil reconstruct FILENAME DIRECTORY
**
** This command studies the artifacts (files) in DIRECTORY and
** reconstructs the fossil record from them. It places the new
** fossil repository in FILENAME. Subdirectories are read, files
** with leading '.' in the filename are ignored.
|
| ︙ | ︙ | |||
913 914 915 916 917 918 919 |
fossil_print("project-id: %s\n", db_get("project-code", 0));
fossil_print("server-id: %s\n", db_get("server-code", 0));
zPassword = db_text(0, "SELECT pw FROM user WHERE login=%Q", g.zLogin);
fossil_print("admin-user: %s (initial password is \"%s\")\n", g.zLogin, zPassword);
}
/*
| | | 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 |
fossil_print("project-id: %s\n", db_get("project-code", 0));
fossil_print("server-id: %s\n", db_get("server-code", 0));
zPassword = db_text(0, "SELECT pw FROM user WHERE login=%Q", g.zLogin);
fossil_print("admin-user: %s (initial password is \"%s\")\n", g.zLogin, zPassword);
}
/*
** COMMAND: deconstruct*
**
** Usage %fossil deconstruct ?OPTIONS? DESTINATION
**
**
** This command exports all artifacts of a given repository and
** writes all artifacts to the file system. The DESTINATION directory
** will be populated with subdirectories AA and files AA/BBBBBBBBB.., where
|
| ︙ | ︙ |
Changes to src/search.c.
| ︙ | ︙ | |||
163 164 165 166 167 168 169 |
sqlite3_create_function(g.db, "score", 1, SQLITE_UTF8, p,
search_score_sqlfunc, 0, 0);
}
/*
** Testing the search function.
**
| | | 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 |
sqlite3_create_function(g.db, "score", 1, SQLITE_UTF8, p,
search_score_sqlfunc, 0, 0);
}
/*
** Testing the search function.
**
** COMMAND: search*
** %fossil search pattern...
**
** Search for timeline entries matching the pattern.
*/
void search_cmd(void){
Search *p;
Blob pattern;
|
| ︙ | ︙ |
Changes to src/tar.c.
| ︙ | ︙ | |||
521 522 523 524 525 526 527 | manifest_destroy(pManifest); blob_reset(&mfile); blob_reset(&filename); tar_finish(pTar); } /* | | | 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 | manifest_destroy(pManifest); blob_reset(&mfile); blob_reset(&filename); tar_finish(pTar); } /* ** COMMAND: tarball* ** ** Usage: %fossil tarball VERSION OUTPUTFILE [--name DIRECTORYNAME] ** ** Generate a compressed tarball for a specified version. If the --name ** option is used, its argument becomes the name of the top-level directory ** in the resulting tarball. If --name is omitted, the top-level directory ** named is derived from the project name, the check-in date and time, and |
| ︙ | ︙ |
Changes to src/tkt.c.
| ︙ | ︙ | |||
835 836 837 838 839 840 841 |
}
blob_reset(&val);
}
@ </ol>
}
/*
| | | 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 |
}
blob_reset(&val);
}
@ </ol>
}
/*
** COMMAND: ticket*
** Usage: %fossil ticket SUBCOMMAND ...
**
** Run various subcommands to control tickets
**
** %fossil ticket show (REPORTTITLE|REPORTNR) ?TICKETFILTER? ?options?
**
** options can be:
|
| ︙ | ︙ |
Changes to src/undo.c.
| ︙ | ︙ | |||
346 347 348 349 350 351 352 |
undoActive = 0;
fossil_print("Rolling back prior filesystem changes...\n");
undo_all_filesystem(0);
}
/*
** COMMAND: undo
| | | 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 |
undoActive = 0;
fossil_print("Rolling back prior filesystem changes...\n");
undo_all_filesystem(0);
}
/*
** COMMAND: undo
** COMMAND: redo*
**
** Usage: %fossil undo ?--explain? ?FILENAME...?
** or: %fossil redo ?--explain? ?FILENAME...?
**
** Undo the changes to the working checkout caused by the most recent
** of the following operations:
**
|
| ︙ | ︙ |
Changes to src/user.c.
| ︙ | ︙ | |||
140 141 142 143 144 145 146 |
if( z ){
strip_string(pIn, z);
}
}
/*
| | | 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 |
if( z ){
strip_string(pIn, z);
}
}
/*
** COMMAND: user*
**
** Usage: %fossil user SUBCOMMAND ... ?-R|--repository FILE?
**
** Run various subcommands on users of the open repository or of
** the repository identified by the -R or --repository option.
**
** %fossil user capabilities USERNAME ?STRING?
|
| ︙ | ︙ |
Changes to src/wiki.c.
| ︙ | ︙ | |||
824 825 826 827 828 829 830 | assert( blob_is_reset(&wiki) ); content_deltify(rid,nrid,0); db_end_transaction(0); return 1; } /* | | | 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 | assert( blob_is_reset(&wiki) ); content_deltify(rid,nrid,0); db_end_transaction(0); return 1; } /* ** COMMAND: wiki* ** ** Usage: %fossil wiki (export|create|commit|list) WikiName ** ** Run various subcommands to work with wiki entries. ** ** %fossil wiki export PAGENAME ?FILE? ** |
| ︙ | ︙ |
Changes to src/winhttp.c.
| ︙ | ︙ | |||
430 431 432 433 434 435 436 |
fossil_fatal("error from StartServiceCtrlDispatcher()");
}
}
return 0;
}
/*
| | | 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 |
fossil_fatal("error from StartServiceCtrlDispatcher()");
}
}
return 0;
}
/*
** COMMAND: winsrv*
** Usage: fossil winsrv METHOD ?SERVICE-NAME? ?OPTIONS?
**
** Where METHOD is one of: create delete show start stop.
**
** The winsrv command manages Fossil as a Windows service. This allows
** (for example) Fossil to be running in the background when no user
** is logged in.
|
| ︙ | ︙ |
Changes to src/zip.c.
| ︙ | ︙ | |||
375 376 377 378 379 380 381 | } manifest_destroy(pManifest); blob_reset(&filename); zip_close(pZip); } /* | | | 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 | } manifest_destroy(pManifest); blob_reset(&filename); zip_close(pZip); } /* ** COMMAND: zip* ** ** Usage: %fossil zip VERSION OUTPUTFILE [--name DIRECTORYNAME] ** ** Generate a ZIP archive for a specified version. If the --name option is ** used, it argument becomes the name of the top-level directory in the ** resulting ZIP archive. If --name is omitted, the top-level directory ** named is derived from the project name, the check-in date and time, and |
| ︙ | ︙ |