Fossil

Check-in [c6d18790]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:fine tuning the layout of the command line help strings
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | wolfgangHelpCmd
Files: files | file ages | folders
SHA1:c6d187906931f543ade6261636b53b49c587fda3
User & Date: wolfgang 2010-10-08 15:05:14
Context
2010-10-08
15:51
link the new help page to the reference.wiki document check-in: 47fd0df0 user: wolfgang tags: wolfgangHelpCmd
15:05
fine tuning the layout of the command line help strings check-in: c6d18790 user: wolfgang tags: wolfgangHelpCmd
13:06
merge from trunk check-in: ff6760ba user: wolfgang tags: wolfgangHelpCmd
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/add.c.

293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
**
** Usage: %fossil mv|rename OLDNAME NEWNAME
**    or: %fossil mv|rename OLDNAME... DIR
**
** Move or rename one or more files within the tree
**
** This command does not rename the files on disk.  This command merely
** records the fact that filenames have changed so that appropriate notations
** can be made at the next <a>commit</a>/checkin.
*/
void mv_cmd(void){
  int i;
  int vid;
  char *zDest;
  Blob dest;
  Stmt q;







|
|







293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
**
** Usage: %fossil mv|rename OLDNAME NEWNAME
**    or: %fossil mv|rename OLDNAME... DIR
**
** Move or rename one or more files within the tree
**
** This command does not rename the files on disk.  This command merely
** records the fact that filenames have changed so that appropriate
** notations can be made at the next <a>commit</a>/checkin.
*/
void mv_cmd(void){
  int i;
  int vid;
  char *zDest;
  Blob dest;
  Stmt q;

Changes to src/allrepo.c.

49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65


/*
** COMMAND: all
**
** Usage: %fossil all (list|ls|pull|push|rebuild|sync)
**
** The ~/.fossil file records the location of all repositories for a
** user.  This command performs certain operations on all repositories
** that can be useful before or after a period of disconnected operation.
**
** On Win32 systems, the file is named "_fossil" and is located in
** %LOCALAPPDATA%, %APPDATA% or %HOMEPATH%.
**
** Available operations are:
**
**    list | ls  Display the location of all repositories







|
|
|







49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65


/*
** COMMAND: all
**
** Usage: %fossil all (list|ls|pull|push|rebuild|sync)
**
** The ~/.fossil file records the location of all repositories for a user.
** This command performs certain operations on all repositories that can
** be useful before or after a period of disconnected operation.
**
** On Win32 systems, the file is named "_fossil" and is located in
** %LOCALAPPDATA%, %APPDATA% or %HOMEPATH%.
**
** Available operations are:
**
**    list | ls  Display the location of all repositories

Changes to src/checkin.c.

293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
...
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
** COMMAND: clean
** Usage: %fossil clean ?--force? ?--dotfiles?
**
** Delete all "extra" files in the source tree.  "Extra" files are
** files that are not officially part of the checkout.  See also
** the <a>extras</a> command. This operation cannot be undone. 
**
** You will be prompted before removing each file. If you are
** sure you wish to remove all "extra" files you can specify the
** optional --force flag and no prompts will be issued.
**
** Files and subdirectories whose names begin with "." are
** normally ignored.  They are included if the "--dotfiles" option
** is used.
*/
void clean_cmd(void){
  int allFlag;
  int dotfilesFlag;
  Blob path, repo;
  Stmt q;
  int n;
................................................................................
** 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".
** The editor defined in the "editor" fossil option (see %fossil help set)
** will be used, or from the "VISUAL" or "EDITOR" environment variables
** (in that order) if no editor is set.
**
** You will be prompted for your GPG passphrase in order to sign the
** new manifest unless the "--nosign" option is used.  All files that
** have changed will be committed unless some subset of files is
** specified on the command line.
**
** The --branch option followed by a branch name cases the new check-in
** to be placed in the named branch.  The --bgcolor option can be followed
** by a color name (ex:  '#ffc0c0') to specify the background color of
** entries in the new branch when shown in the web timeline interface.
**
** A check-in is not permitted to fork unless the --force or -f
** option appears.  A check-in is not allowed against a closed check-in.
**
** The --private option creates a private check-in that is never synced.
** Children of private check-ins are automatically private.
**
** Options:
**
**    --comment|-m COMMENT-TEXT







|
|
|

|
|
<







 







|
|









|



|
|







293
294
295
296
297
298
299
300
301
302
303
304
305

306
307
308
309
310
311
312
...
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
** COMMAND: clean
** Usage: %fossil clean ?--force? ?--dotfiles?
**
** Delete all "extra" files in the source tree.  "Extra" files are
** files that are not officially part of the checkout.  See also
** the <a>extras</a> command. This operation cannot be undone. 
**
** You will be prompted before removing each file. If you are sure
** you wish to remove all "extra" files you can specify the optional
** --force flag and no prompts will be issued.
**
** Files and subdirectories whose names begin with "." are normally
** ignored.  They are included if the "--dotfiles" option is used.

*/
void clean_cmd(void){
  int allFlag;
  int dotfilesFlag;
  Blob path, repo;
  Stmt q;
  int n;
................................................................................
** 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". The
** editor defined in the "editor" fossil option (see %fossil help set)
** will be used, or from the "VISUAL" or "EDITOR" environment variables
** (in that order) if no editor is set.
**
** You will be prompted for your GPG passphrase in order to sign the
** new manifest unless the "--nosign" option is used.  All files that
** have changed will be committed unless some subset of files is
** specified on the command line.
**
** The --branch option followed by a branch name cases the new check-in
** to be placed in the named branch. The --bgcolor option can be followed
** by a color name (ex:  '#ffc0c0') to specify the background color of
** entries in the new branch when shown in the web timeline interface.
**
** A check-in is not permitted to fork unless the --force or -f option
** appears.  A check-in is not allowed against a closed check-in.
**
** The --private option creates a private check-in that is never synced.
** Children of private check-ins are automatically private.
**
** Options:
**
**    --comment|-m COMMENT-TEXT

Changes to src/clone.c.

24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39


/*
** COMMAND: clone
**
** Usage: %fossil clone ?OPTIONS? URL FILENAME
**
** Make a clone of a repository specified by URL in the local
** file named FILENAME.  
**
** By default, your current login name is used to create the default
** admin user. This can be overridden using the -A|--admin-user
** parameter.
**
** Options:
**







|
|







24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39


/*
** COMMAND: clone
**
** Usage: %fossil clone ?OPTIONS? URL FILENAME
**
** Make a clone of a repository specified by URL in the local file
** named FILENAME.  
**
** By default, your current login name is used to create the default
** admin user. This can be overridden using the -A|--admin-user
** parameter.
**
** Options:
**

Changes to src/configure.c.

367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418


/*
** COMMAND: configuration
**
** Usage: %fossil configure METHOD ... ?-R|--repository REPOSITORY?
**
** 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
**
**         Write to FILENAME exported configuraton information for AREA.
**         AREA can be one of:  all email project shun skin ticket user
**
**    %fossil configuration import FILENAME
**
**         Read a configuration from FILENAME, overwriting the current
**         configuration.
**
**    %fossil configuration merge FILENAME
**
**         Read a configuration from FILENAME and merge its values into
**         the current configuration.  Existing values take priority over
**         values read from FILENAME.
**
**    %fossil configuration pull AREA ?URL?
**
**         Pull and install the configuration from a different server
**         identified by URL.  If no URL is specified, then the default
**         server is used. 
**
**    %fossil configuration push AREA ?URL?
**
**         Push the local configuration into the remote server identified
**         by URL.  Admin privilege is required on the remote server for
**         this to work.
**
**    %fossil configuration reset AREA
**
**         Restore the configuration to the default.  AREA as above.
**
** WARNING: Do not import, merge, or pull configurations from an untrusted
** source.  The inbound configuration is not checked for safety and can
** introduce security vulnerabilities.
*/
void configuration_cmd(void){
  int n;
  const char *zMethod;
  if( g.argc<3 ){
    usage("export|import|merge|pull|reset ...");
  }







|
|



|
|



|
|



|
|
|



|
|
|



|
|
|



|

|
|
|







367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418


/*
** COMMAND: configuration
**
** Usage: %fossil configure METHOD ... ?-R|--repository REPOSITORY?
**
** Where METHOD is one of: export import merge pull push reset.  All
** methods accept the -R or --repository option to specify a repository.
**
**    %fossil configuration export AREA FILENAME
**
**        Write to FILENAME exported configuraton information for AREA.
**        AREA can be one of:  all email project shun skin ticket user
**
**    %fossil configuration import FILENAME
**
**        Read a configuration from FILENAME, overwriting the current
**        configuration.
**
**    %fossil configuration merge FILENAME
**
**        Read a configuration from FILENAME and merge its values into
**        the current configuration.  Existing values take priority
**        over values read from FILENAME.
**
**    %fossil configuration pull AREA ?URL?
**
**        Pull and install the configuration from a different server
**        identified by URL.  If no URL is specified, then the default
**        server is used. 
**
**    %fossil configuration push AREA ?URL?
**
**        Push the local configuration into the remote server identified
**        by URL.  Admin privilege is required on the remote server for
**        this to work.
**
**    %fossil configuration reset AREA
**
**        Restore the configuration to the default.  AREA as above.
**
** WARNING: Do not import or merge or pull configurations from an
** untrusted source.  The inbound configuration is not checked for
** safety and can introduce security vulnerabilities.
*/
void configuration_cmd(void){
  int n;
  const char *zMethod;
  if( g.argc<3 ){
    usage("export|import|merge|pull|reset ...");
  }

Changes to src/db.c.

1534
1535
1536
1537
1538
1539
1540
1541
1542
1543

1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614

/*
** 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.

**
** The "unset" command clears a property setting.
**
**
**    auto-captcha     If enabled, the Login page provides a button to
**                     fill in the captcha password.  Default: on
**
**    auto-shun        If enabled, automatically pull the shunning list
**                     from a server to which the client autosyncs.
**
**    autosync         If enabled, automatically pull prior to commit
**                     or update and automatically push after commit or
**                     tag or branch creation.  If the value is "pullonly"
**                     then only pull operations occur automatically.
**
**    binary-glob      The VALUE is a comma-separated list of GLOB patterns
**                     that should be treated as binary files for merging
**                     purposes.  Example:   *.xml
**
**    clearsign        When enabled, fossil will attempt to sign all commits
**                     with gpg.  When disabled (the default), commits will
**                     be unsigned.
**
**    diff-command     External command to run when performing a diff.
**                     If undefined, the internal text diff will be used.
**
**    dont-push        Prevent this repository from pushing from client to
**                     server.  Useful when setting up a private branch.
**
**    editor           Text editor command used for check-in comments.
**
**    gdiff-command    External command to run when performing a graphical
**                     diff. If undefined, text diff will be used.
**
**    http-port        The TCP/IP port number to use by the "server"
**                     and "ui" commands.  Default: 8080
**
**    ignore-glob      The VALUE is a comma-separated list of GLOB patterns
**                     specifying files that the "extra" command will ignore.
**                     Example:  *.o,*.obj,*.exe
**
**    localauth        If enabled, require that HTTP connections from
**                     127.0.0.1 be authenticated by password.  If
**                     false, all HTTP requests from localhost have
**                     unrestricted access to the repository.
**
**    mtime-changes    Use file modification times (mtimes) to detect when
**                     files have been modified.  (Default "on".)
**
**    pgp-command      Command used to clear-sign manifests at check-in.
**                     The default is "gpg --clearsign -o ".
**
**    proxy            URL of the HTTP proxy.  If undefined or "off" then
**                     the "http_proxy" environment variable is consulted.
**                     If the http_proxy environment variable is undefined
**                     then a direct HTTP connection is used.
**
**    ssh-command      Command used to talk to a remote machine with
**                     the "ssh://" protocol.
**
**    web-browser      A shell command used to launch your preferred
**                     web browser when given a URL as an argument.
**                     Defaults to "start" on windows, "open" on Mac,
**                     and "firefox" on Unix.
*/
void setting_cmd(void){
  int i;
  int globalFlag = find_option("global","g",0)!=0;
  int unsetFlag = g.argv[1][0]=='u';
  db_open_config(1);
  db_find_and_open_repository(0);







|
|
|
>




|
|

|
|

|
|
|
|

|
|
|

|
|
|

|
|

|
|

|

|
|

|
|

|
|
|

|
|
|
|

|
|

|
|

|
|
|
|

|
|

|
|
|
|







1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615

/*
** 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.
**
** The "unset" command clears a property setting.
**
**
**    auto-captcha  If enabled, the Login page provides a button to
**                  fill in the captcha password.  Default: on
**
**    auto-shun     If enabled, automatically pull the shunning list
**                  from a server to which the client autosyncs.
**
**    autosync      If enabled, automatically pull prior to commit
**                  or update and automatically push after commit or
**                  tag or branch creation.  If the value is "pullonly"
**                  then only pull operations occur automatically.
**
**    binary-glob   The VALUE is a comma-separated list of GLOB patterns
**                  that should be treated as binary files for merging
**                  purposes.  Example:   *.xml
**
**    clearsign     When enabled, fossil will attempt to sign all commits
**                  with gpg.  When disabled (the default), commits will
**                  be unsigned.
**
**    diff-command  External command to run when performing a diff.
**                  If undefined, the internal text diff will be used.
**
**    dont-push     Prevent this repository from pushing from client to
**                  server.  Useful when setting up a private branch.
**
**    editor        Text editor command used for check-in comments.
**
**    gdiff-command External command to run when performing a graphical
**                  diff. If undefined, text diff will be used.
**
**    http-port     The TCP/IP port number to use by the "server"
**                  and "ui" commands.  Default: 8080
**
**    ignore-glob   The VALUE is a comma-separated list of GLOB patterns
**                  specifying files that the "extra" command will ignore.
**                  Example:  *.o,*.obj,*.exe
**
**    localauth     If enabled, require that HTTP connections from
**                  127.0.0.1 be authenticated by password.  If
**                  false, all HTTP requests from localhost have
**                  unrestricted access to the repository.
**
**    mtime-changes Use file modification times (mtimes) to detect when
**                  files have been modified.  (Default "on".)
**
**    pgp-command   Command used to clear-sign manifests at check-in.
**                  The default is "gpg --clearsign -o ".
**
**    proxy         URL of the HTTP proxy.  If undefined or "off" then
**                  the "http_proxy" environment variable is consulted.
**                  If the http_proxy environment variable is undefined
**                  then a direct HTTP connection is used.
**
**    ssh-command   Command used to talk to a remote machine with
**                  the "ssh://" protocol.
**
**    web-browser   A shell command used to launch your preferred
**                  web browser when given a URL as an argument.
**                  Defaults to "start" on windows, "open" on Mac,
**                  and "firefox" on Unix.
*/
void setting_cmd(void){
  int i;
  int globalFlag = find_option("global","g",0)!=0;
  int unsetFlag = g.argv[1][0]=='u';
  db_open_config(1);
  db_find_and_open_repository(0);

Changes to src/diffcmd.c.

357
358
359
360
361
362
363
364
365
366
367
368
369
370

371
372
373
374
375
376
377
**
** If the "--from VERSION" or "-r VERSION" option is used it specifies
** the source check-in for the diff operation.  If not specified, the 
** source check-in is the base check-in for the current check-out.
**
** If the "--to VERSION" option appears, it specifies the check-in from
** which the second version of the file or files is taken.  If there is
** no "--to" option then the (possibly edited) files in the current check-out
** are used.
**
** The "-i" command-line option forces the use of the internal diff logic
** rather than any external diff program that might be configured using
** the <a>setting</a> command. If no external diff program is configured, then
** the "-i" option is a no-op.  The "-i" option converts "gdiff" into "diff".

*/
void diff_cmd(void){
  int isGDiff;               /* True for gdiff.  False for normal diff */
  int isInternDiff;          /* True for internal diff */
  const char *zFrom;         /* Source version number */
  const char *zTo;           /* Target version number */
  const char *zDiffCmd = 0;  /* External diff command. NULL for internal diff */







|
|




|
>







357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
**
** If the "--from VERSION" or "-r VERSION" option is used it specifies
** the source check-in for the diff operation.  If not specified, the 
** source check-in is the base check-in for the current check-out.
**
** If the "--to VERSION" option appears, it specifies the check-in from
** which the second version of the file or files is taken.  If there is
** no "--to" option then the (possibly edited) files in the current
** check-out are used.
**
** The "-i" command-line option forces the use of the internal diff logic
** rather than any external diff program that might be configured using
** the <a>setting</a> command. If no external diff program is configured, then
** the "-i" option is a no-op.  The "-i" option converts "gdiff" into
** "diff".
*/
void diff_cmd(void){
  int isGDiff;               /* True for gdiff.  False for normal diff */
  int isInternDiff;          /* True for internal diff */
  const char *zFrom;         /* Source version number */
  const char *zTo;           /* Target version number */
  const char *zDiffCmd = 0;  /* External diff command. NULL for internal diff */

Changes to src/main.c.

626
627
628
629
630
631
632







633
634
635
636
637
638
639
640

641
642
643
644
645
646
647
...
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
          @ no help available for the %s(aCommand[idx].zName) command
        }else{
          len = strlen(zSrc);
          zDest = malloc(len+1);
          for(src=dest=0;zSrc[src];){
            if( zSrc[src]=='%' && strncmp(zSrc+src, "%fossil", 7)==0 ){
              src++; /* skip % for fossil argv[0] expansion */







            }else if( zSrc[src]=='<' && strncmp(zSrc+src, "<a>", 3)==0 ){
              /* found an internal command cross reference,
              ** create an additional link
              */
              int start;

              len+=80;
              zDest=realloc(zDest,len);

              zDest[dest++]=zSrc[src++]; /* < */
              zDest[dest++]=zSrc[src++]; /* a */
              zDest[dest++]=' ';
              zDest[dest++]='h';
              zDest[dest++]='r';
              zDest[dest++]='e';
              zDest[dest++]='f';
................................................................................
              zDest[dest++]='=';
              start = src+1;
              for( src=start; zSrc[src] && zSrc[src]!='<'; ){
                zDest[dest++]=zSrc[src++]; /* command name */
              }
              zDest[dest++]='"';
              zDest[dest++]='>';
              zDest[dest++]='"';
              for( src=start; zSrc[src] && zSrc[src]!='<'; ){
                zDest[dest++]=zSrc[src++]; /* command name */
              }
              zDest[dest++]='"';
            }else{
              zDest[dest++] = zSrc[src++];
            }
          }
          zDest[dest] = 0;
          @ <pre>%s(zDest)</pre>
          free(zDest);







>
>
>
>
>
>
>








>







 







<



<







626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
...
666
667
668
669
670
671
672

673
674
675

676
677
678
679
680
681
682
          @ no help available for the %s(aCommand[idx].zName) command
        }else{
          len = strlen(zSrc);
          zDest = malloc(len+1);
          for(src=dest=0;zSrc[src];){
            if( zSrc[src]=='%' && strncmp(zSrc+src, "%fossil", 7)==0 ){
              src++; /* skip % for fossil argv[0] expansion */
            }else if( zSrc[src]=='<' && strncmp(zSrc+src, "</a>", 3)==0 ){
              src += 4;
              zDest[dest++]='<';
              zDest[dest++]='/';
              zDest[dest++]='a';
              zDest[dest++]='>';
              zDest[dest++]='"';
            }else if( zSrc[src]=='<' && strncmp(zSrc+src, "<a>", 3)==0 ){
              /* found an internal command cross reference,
              ** create an additional link
              */
              int start;

              len+=80;
              zDest=realloc(zDest,len);
              zDest[dest++]='"';
              zDest[dest++]=zSrc[src++]; /* < */
              zDest[dest++]=zSrc[src++]; /* a */
              zDest[dest++]=' ';
              zDest[dest++]='h';
              zDest[dest++]='r';
              zDest[dest++]='e';
              zDest[dest++]='f';
................................................................................
              zDest[dest++]='=';
              start = src+1;
              for( src=start; zSrc[src] && zSrc[src]!='<'; ){
                zDest[dest++]=zSrc[src++]; /* command name */
              }
              zDest[dest++]='"';
              zDest[dest++]='>';

              for( src=start; zSrc[src] && zSrc[src]!='<'; ){
                zDest[dest++]=zSrc[src++]; /* command name */
              }

            }else{
              zDest[dest++] = zSrc[src++];
            }
          }
          zDest[dest] = 0;
          @ <pre>%s(zDest)</pre>
          free(zDest);

Changes to src/merge.c.

38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
**
** Only file content is merged.  The result continues to use the
** file and directory names from the current checkout even if those
** names might have been changed in the branch being merged in.
**
** Other options:
**
**   --detail                Show additional details of the merge
**
**   --binary GLOBPATTERN    Treat files that match GLOBPATTERN as binary
**                           and do not try to merge parallel changes.  This
**                           option overrides the "binary-glob" setting.
*/
void merge_cmd(void){
  int vid;              /* Current version */
  int mid;              /* Version we are merging against */
  int pid;              /* The pivot version - most recent common ancestor */
  int detailFlag;       /* True if the --detail option is present */
  int pickFlag;         /* True if the --cherrypick option is present */







|

|
|
|







38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
**
** Only file content is merged.  The result continues to use the
** file and directory names from the current checkout even if those
** names might have been changed in the branch being merged in.
**
** Other options:
**
**   --detail             Show additional details of the merge
**
**   --binary GLOBPATTERN Treat files that match GLOBPATTERN as binary
**                        and do not try to merge parallel changes. This
**                        option overrides the "binary-glob" setting.
*/
void merge_cmd(void){
  int vid;              /* Current version */
  int mid;              /* Version we are merging against */
  int pid;              /* The pivot version - most recent common ancestor */
  int detailFlag;       /* True if the --detail option is present */
  int pickFlag;         /* True if the --cherrypick option is present */

Changes to src/rebuild.c.

377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
...
521
522
523
524
525
526
527
528

529
530
531
532
533

534
535
536
537
538
539
540
/*
** COMMAND: scrub
** %fossil scrub [--verily] [--force] [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
** addresses of correspondents, and similar privacy-sensitive fields
** are also purged.
**
** This command permanently deletes the scrubbed information.  The effects
** of this command are irreversible.  Use with caution.
**
** The user is prompted to confirm the scrub unless the --force option
** is used.
................................................................................
  zPassword = db_text(0, "SELECT pw FROM user WHERE login=%Q", g.zLogin);
  printf("admin-user: %s (initial password is \"%s\")\n", g.zLogin, zPassword);
}

/*
** COMMAND: deconstruct
**
** Usage %fossil deconstruct ?-R|--repository REPOSITORY? ?-L|--prefixlength N? DESTINATION

**
** This command exports all artifacts of o given repository and
** writes all artifacts to the file system. The DESTINATION directory
** will be populated with subdirectories AA and files AA/BBBBBBBBB.., where
** AABBBBBBBBB.. is the 40 character artifact ID, AA the first 2 characters.

** If -L|--prefixlength is given, the length (default 2) of the directory
** prefix can be set to 0,1,..,9 characters.
*/
void deconstruct_cmd(void){
  const char *zDestDir;
  const char *zPrefixOpt;
  Stmt        s;







|
|
|







 







|
>

|
|
|
|
>







377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
...
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
/*
** COMMAND: scrub
** %fossil scrub [--verily] [--force] [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 addresses of correspondents, and similar privacy-sensitive fields
** are also purged.
**
** This command permanently deletes the scrubbed information.  The effects
** of this command are irreversible.  Use with caution.
**
** The user is prompted to confirm the scrub unless the --force option
** is used.
................................................................................
  zPassword = db_text(0, "SELECT pw FROM user WHERE login=%Q", g.zLogin);
  printf("admin-user: %s (initial password is \"%s\")\n", g.zLogin, zPassword);
}

/*
** COMMAND: deconstruct
**
** Usage: %fossil deconstruct ?-R|--repository REPOSITORY? \\
**                ?-L|--prefixlength N? DESTINATION
**
** This command exports all artifacts of o given repository and writes
** all artifacts to the file system. The DESTINATION directory will be
** populated with subdirectories AA and files AA/BBBBBBBBB.., where
** AABBBBBBBBB.. is the 40 character artifact ID and AA the first 2
** characters.
** If -L|--prefixlength is given, the length (default 2) of the directory
** prefix can be set to 0,1,..,9 characters.
*/
void deconstruct_cmd(void){
  const char *zDestDir;
  const char *zPrefixOpt;
  Stmt        s;

Changes to src/sync.c.

160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
...
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
...
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
**
** If the URL is not specified, then the URL from the most recent
** <a>clone</a>, push, <a>pull</a>, <a>remote-url</a>, or <a>sync</a> command
** is used.
**
** The URL specified normally becomes the new "remote-url" used for
** subsequent <a>push</a>, <a>pull</a>, and <a>sync</a> operations.  However,
** the "--once" command-line option makes the URL a one-time-use URL that is
** not saved.
**
** See also: <a>clone</a>, <a>pull</a>, <a>sync</a>, <a>remote-url</a>
*/
void push_cmd(void){
  process_sync_args();
  client_sync(1,0,0,0,0);
}
................................................................................
** time. Use the "-R REPO" or "--repository REPO" command-line options
** to specify an alternative repository file.
**
** If a user-id and password are required, specify them as follows:
**
**     http://userid:password@www.domain.com:1234/path
**
** If the URL is not specified, then the URL from the most recent successful
** <a>clone</a>, <a>push</a>, <a>pull</a>, <a>remote-url</a>, or sync command
** is used.
**
** The URL specified normally becomes the new "remote-url" used for
** subsequent <a>push</a>, <a>pull</a>, and <a>sync</a> operations.  However,
** the "--once" command-line option makes the URL a one-time-use URL that is
** not saved.
**
** See also:  <a>clone</a>, <a>push</a>, <a>pull</a>, <a>remote-url</a>
*/
void sync_cmd(void){
  int syncFlags = process_sync_args();
  client_sync(1,1,0,syncFlags,0);
}
................................................................................
**
** Usage: %fossil remote-url ?URL|off?
**
** Query and/or change the default server URL used by the <a>pull</a>,
** <a>push</a>, and <a>sync</a> commands.
**
** The remote-url is set automatically by a <a>clone</a> command or by any
** <a>sync</a>, <a>push</a>, or <a>pull</a> command that specifies an
** explicit URL. The default remote-url is used by auto-syncing and by
** <a>sync</a>, <a>push</a>, <a>pull</a> that omit the server URL.
**
** See also: <a>clone</a>, <a>push</a>, <a>pull</a>, <a>sync</a>
*/
void remote_url_cmd(void){
  char *zUrl;
  db_find_and_open_repository(1);







|
|







 







|
|




|
|







 







|
|







160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
...
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
...
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
**
** If the URL is not specified, then the URL from the most recent
** <a>clone</a>, push, <a>pull</a>, <a>remote-url</a>, or <a>sync</a> command
** is used.
**
** The URL specified normally becomes the new "remote-url" used for
** subsequent <a>push</a>, <a>pull</a>, and <a>sync</a> operations.  However,
** the "--once" command-line option makes the URL a one-time-use URL
** that is not saved.
**
** See also: <a>clone</a>, <a>pull</a>, <a>sync</a>, <a>remote-url</a>
*/
void push_cmd(void){
  process_sync_args();
  client_sync(1,0,0,0,0);
}
................................................................................
** time. Use the "-R REPO" or "--repository REPO" command-line options
** to specify an alternative repository file.
**
** If a user-id and password are required, specify them as follows:
**
**     http://userid:password@www.domain.com:1234/path
**
** If the URL is not specified, then the URL from the most recent
** successful <a>clone</a>, <a>push</a>, <a>pull</a>, <a>remote-url</a>, or sync command
** is used.
**
** The URL specified normally becomes the new "remote-url" used for
** subsequent <a>push</a>, <a>pull</a>, and <a>sync</a> operations.  However,
** the "--once" command-line option makes the URL a one-time-use URL
** that is not saved.
**
** See also:  <a>clone</a>, <a>push</a>, <a>pull</a>, <a>remote-url</a>
*/
void sync_cmd(void){
  int syncFlags = process_sync_args();
  client_sync(1,1,0,syncFlags,0);
}
................................................................................
**
** Usage: %fossil remote-url ?URL|off?
**
** Query and/or change the default server URL used by the <a>pull</a>,
** <a>push</a>, and <a>sync</a> commands.
**
** The remote-url is set automatically by a <a>clone</a> command or by any
** <a>sync</a>, <a>push</a>, or <a>pull</a> command that specifies an explicit
** URL. The default remote-url is used by auto-syncing and by
** <a>sync</a>, <a>push</a>, <a>pull</a> that omit the server URL.
**
** See also: <a>clone</a>, <a>push</a>, <a>pull</a>, <a>sync</a>
*/
void remote_url_cmd(void){
  char *zUrl;
  db_find_and_open_repository(1);

Changes to src/undo.c.

242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
...
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
}

/*
** COMMAND: undo
**
** Usage: %fossil undo ?FILENAME...?
**
** Undo the most recent <a>update</a> or <a>merge</a> or <a>revert</a>
** operation.  If FILENAME is specified then restore the content of the
** named file(s) but otherwise leave the <a>update</a>, <a>merge</a> or
** <a>revert</a> in effect.
**
** A single level of undo/<a>redo</a> is supported. The undo/<a>redo</a>
** stack is cleared by the commit and checkout commands.
*/
void undo_cmd(void){
  int undo_available;
  db_must_be_within_tree();
................................................................................

/*
** COMMAND: redo
**
** Usage: %fossil redo ?FILENAME...?
**
** Redo an <a>update</a>, <a>merge</a> or <a>revert</a> operation that has been
** undone by the <a>undo</a> command. If FILENAME is specified then restore the
** changes associated with the named file(s) but otherwise leave the update
** or merge undone.
**
** A single level of <a>undo</a>/redo is supported.  The <a>undo</a>/redo stack
** is cleared by the <a>commit</a> and <a>checkout</a> commands.
*/
void redo_cmd(void){
  int undo_available;
  db_must_be_within_tree();







|
|
|
|







 







|
|
|







242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
...
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
}

/*
** COMMAND: undo
**
** Usage: %fossil undo ?FILENAME...?
**
** Undo the most recent <a>update</a> or <a>merge</a> or <a>revert</a> operation.
** If FILENAME is specified then restore the content of the named
** file(s) but otherwise leave the <a>update</a>, <a>merge</a> or <a>revert</a>
** in effect.
**
** A single level of undo/<a>redo</a> is supported. The undo/<a>redo</a>
** stack is cleared by the commit and checkout commands.
*/
void undo_cmd(void){
  int undo_available;
  db_must_be_within_tree();
................................................................................

/*
** COMMAND: redo
**
** Usage: %fossil redo ?FILENAME...?
**
** Redo an <a>update</a>, <a>merge</a> or <a>revert</a> operation that has been
** undone by the <a>undo</a> command. If FILENAME is specified then restore
** the changes associated with the named file(s) but otherwise leave the
** update or merge undone.
**
** A single level of <a>undo</a>/redo is supported.  The <a>undo</a>/redo stack
** is cleared by the <a>commit</a> and <a>checkout</a> commands.
*/
void redo_cmd(void){
  int undo_available;
  db_must_be_within_tree();

Changes to src/zip.c.

374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
}

/*
** 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
** the artifact ID of the check-in.
*/
void baseline_zip_cmd(void){
  int rid;
  Blob zip;







|
|







374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
}

/*
** 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
** the artifact ID of the check-in.
*/
void baseline_zip_cmd(void){
  int rid;
  Blob zip;