Fossil SCM
Updates to the "Fossil Concepts" documentation page.
Commit
afbf6740f36c0f1379cacc4142b8dfc799c796e3
Parent
83c5a8dfccd179f…
1 file changed
+25
-64
+25
-64
| --- www/concepts.wiki | ||
| +++ www/concepts.wiki | ||
| @@ -197,11 +197,15 @@ | ||
| 197 | 197 | is identified by your VISUAL environment variable. Fossil will also |
| 198 | 198 | use GPG to clearsign your manifests if you happen to have it installed, |
| 199 | 199 | but fossil will skip that step if GPG missing from your system. |
| 200 | 200 | You can optionally set up fossil to use external "diff" programs, |
| 201 | 201 | though fossil has an excellent built-in "diff" algorithm that works |
| 202 | -fine for most people. | |
| 202 | +fine for most people. If you happen to have Tcl/Tk installed on your | |
| 203 | +system, Fossil will use it to generate a graphical "diff" display when | |
| 204 | +you use the --tk option to the "diff" command, but this too is entirely | |
| 205 | +optional. | |
| 206 | + | |
| 203 | 207 | |
| 204 | 208 | To uninstall fossil, simply delete the executable. |
| 205 | 209 | |
| 206 | 210 | To upgrade an older version of fossil to a newer version, just |
| 207 | 211 | replace the old executable with the new one. You might need to |
| @@ -391,75 +395,32 @@ | ||
| 391 | 395 | <h2>5.0 Setting Up A Fossil Server</h2> |
| 392 | 396 | |
| 393 | 397 | With other configuration management software, setting up a server is |
| 394 | 398 | a lot of work and normally takes time, patience, and a lot of system |
| 395 | 399 | knowledge. Fossil is designed to avoid this frustration. Setting up |
| 396 | -a server with fossil is ridiculously easy. You have three options:</p> | |
| 400 | +a server with fossil is ridiculously easy. You have four options:</p> | |
| 397 | 401 | |
| 398 | 402 | <ol> |
| 399 | -<li><b><a name="saserv"></a>Setting up a stand-alone server</b> | |
| 400 | - | |
| 401 | -From within your source tree just use the <b>server</b> command and | |
| 402 | -fossil will start listening for incoming requests on TCP port 8080. | |
| 403 | -You can point your web browser at <a href="http://localhost:8080/"> | |
| 404 | -http://localhost:8080/</a> and begin exploring. Or your coworkers | |
| 405 | -can do pushes or pulls against your server. Use the <b>--port</b> | |
| 406 | -option to the server command to specify a different TCP port. If | |
| 407 | -you do not have a local source tree, use the <b>-R</b> command-line | |
| 408 | -option to specify the repository file. | |
| 409 | - | |
| 410 | -The "fossil server" command is a great way to set of transient connections | |
| 411 | -between coworkers for doing quick pushes or pulls. But you can also | |
| 412 | -set up a permanent stand-alone server if you prefer. Just make | |
| 413 | -arrangements for fossil to be launched with appropriate arguments | |
| 414 | -after every reboot. | |
| 415 | - | |
| 416 | -If you just want a server to browse the built-in fossil website | |
| 417 | -locally, use the <b>ui</b> command in place of <b>server</b>. The | |
| 418 | -<b>ui</b> command starts up a local server too, but it also takes | |
| 419 | -the additional step of automatically launching your webbrowser and | |
| 420 | -pointing at the new server. | |
| 421 | -</li> | |
| 422 | - | |
| 423 | -<li><b>Setting up a CGI server</b> | |
| 424 | - | |
| 425 | -If you have a web-server running on your machine already, you can | |
| 426 | -set up fossil to be run from CGI. Simply create an executable script | |
| 427 | -that looks something like this: | |
| 428 | - | |
| 429 | -<blockquote><pre> | |
| 430 | -#!/usr/local/bin/fossil | |
| 431 | -repository: /home/me/bigproject.fossil | |
| 432 | -</pre></blockquote> | |
| 433 | - | |
| 434 | -Edit this script to use whatever pathnames are appropriate for | |
| 435 | -your project. Then point your web browser at the script and off you | |
| 436 | -go. The [./selfhost.wiki | self-hosting fossil repositories] are | |
| 437 | -all set up this way.</li> | |
| 438 | - | |
| 439 | -<li><b>Setting up an inetd server</b> | |
| 440 | - | |
| 441 | -If you have inetd or xinetd running on your system, you can set | |
| 442 | -those services up to launch fossil to deal with inbound TCP/IP connections | |
| 443 | -on whatever port you want. Set up inetd or xinetd to launch fossil | |
| 444 | -like this: | |
| 445 | - | |
| 446 | -<blockquote><pre> | |
| 447 | -/usr/local/bin/fossil http /home/me/bigproject.fossil | |
| 448 | -</pre></blockquote> | |
| 449 | - | |
| 450 | -As before, change the filenames to whatever is appropriate for | |
| 451 | -your system. You can have fossil run as any user that has write | |
| 452 | -permission on the repository and on the directory that contains the | |
| 453 | -repository. But it is safer to run fossil as root. When fossil | |
| 454 | -sees that it is running as root, it automatically puts itself into | |
| 455 | -a <a href="http://en.wikipedia.org/wiki/Chroot">chroot jail</a> and | |
| 456 | -drops all privileges prior to reading any information from the client. | |
| 457 | -Since fossil is a stand-alone program, you do not need to put anything | |
| 458 | -in the chroot jail with fossil in order for it to do its job. | |
| 459 | -</li> | |
| 460 | -</ol> | |
| 403 | +<li><p><b>Stand-alone server.</b> | |
| 404 | +Simply run the [/help?cmd=server|fossil server] or | |
| 405 | +[/help?cmd=ui|fossil ui] command from the command-line. | |
| 406 | + | |
| 407 | +<li><p><b>CGI.</b> | |
| 408 | +Install a 2-line CGI script on a CGI-enabled web-server like Apache. | |
| 409 | + | |
| 410 | +<li><p><b>SCGI.</b> | |
| 411 | +Start an SCGI server using the | |
| 412 | +[/help?cmd=server| fossil server --scgi] command for handling | |
| 413 | +SCGI requests from web-servers like Nginx. | |
| 414 | + | |
| 415 | +<li><p><b>Inetd or Stunnel.</b> | |
| 416 | +Configure programs like inetd, xinetd, or stunnel to hand off HTTP requests | |
| 417 | +directly to the [/help?cmd=http|fossil http] command. | |
| 418 | +</ol> | |
| 419 | + | |
| 420 | +See the [./server.wiki | How To Configure A Fossil Server] document | |
| 421 | +for details. | |
| 461 | 422 | |
| 462 | 423 | <h2>6.0 Review Of Key Concepts</h2> |
| 463 | 424 | |
| 464 | 425 | <ul> |
| 465 | 426 | <li>The <b>fossil</b> program is a self-contained stand-alone executable. |
| 466 | 427 |
| --- www/concepts.wiki | |
| +++ www/concepts.wiki | |
| @@ -197,11 +197,15 @@ | |
| 197 | is identified by your VISUAL environment variable. Fossil will also |
| 198 | use GPG to clearsign your manifests if you happen to have it installed, |
| 199 | but fossil will skip that step if GPG missing from your system. |
| 200 | You can optionally set up fossil to use external "diff" programs, |
| 201 | though fossil has an excellent built-in "diff" algorithm that works |
| 202 | fine for most people. |
| 203 | |
| 204 | To uninstall fossil, simply delete the executable. |
| 205 | |
| 206 | To upgrade an older version of fossil to a newer version, just |
| 207 | replace the old executable with the new one. You might need to |
| @@ -391,75 +395,32 @@ | |
| 391 | <h2>5.0 Setting Up A Fossil Server</h2> |
| 392 | |
| 393 | With other configuration management software, setting up a server is |
| 394 | a lot of work and normally takes time, patience, and a lot of system |
| 395 | knowledge. Fossil is designed to avoid this frustration. Setting up |
| 396 | a server with fossil is ridiculously easy. You have three options:</p> |
| 397 | |
| 398 | <ol> |
| 399 | <li><b><a name="saserv"></a>Setting up a stand-alone server</b> |
| 400 | |
| 401 | From within your source tree just use the <b>server</b> command and |
| 402 | fossil will start listening for incoming requests on TCP port 8080. |
| 403 | You can point your web browser at <a href="http://localhost:8080/"> |
| 404 | http://localhost:8080/</a> and begin exploring. Or your coworkers |
| 405 | can do pushes or pulls against your server. Use the <b>--port</b> |
| 406 | option to the server command to specify a different TCP port. If |
| 407 | you do not have a local source tree, use the <b>-R</b> command-line |
| 408 | option to specify the repository file. |
| 409 | |
| 410 | The "fossil server" command is a great way to set of transient connections |
| 411 | between coworkers for doing quick pushes or pulls. But you can also |
| 412 | set up a permanent stand-alone server if you prefer. Just make |
| 413 | arrangements for fossil to be launched with appropriate arguments |
| 414 | after every reboot. |
| 415 | |
| 416 | If you just want a server to browse the built-in fossil website |
| 417 | locally, use the <b>ui</b> command in place of <b>server</b>. The |
| 418 | <b>ui</b> command starts up a local server too, but it also takes |
| 419 | the additional step of automatically launching your webbrowser and |
| 420 | pointing at the new server. |
| 421 | </li> |
| 422 | |
| 423 | <li><b>Setting up a CGI server</b> |
| 424 | |
| 425 | If you have a web-server running on your machine already, you can |
| 426 | set up fossil to be run from CGI. Simply create an executable script |
| 427 | that looks something like this: |
| 428 | |
| 429 | <blockquote><pre> |
| 430 | #!/usr/local/bin/fossil |
| 431 | repository: /home/me/bigproject.fossil |
| 432 | </pre></blockquote> |
| 433 | |
| 434 | Edit this script to use whatever pathnames are appropriate for |
| 435 | your project. Then point your web browser at the script and off you |
| 436 | go. The [./selfhost.wiki | self-hosting fossil repositories] are |
| 437 | all set up this way.</li> |
| 438 | |
| 439 | <li><b>Setting up an inetd server</b> |
| 440 | |
| 441 | If you have inetd or xinetd running on your system, you can set |
| 442 | those services up to launch fossil to deal with inbound TCP/IP connections |
| 443 | on whatever port you want. Set up inetd or xinetd to launch fossil |
| 444 | like this: |
| 445 | |
| 446 | <blockquote><pre> |
| 447 | /usr/local/bin/fossil http /home/me/bigproject.fossil |
| 448 | </pre></blockquote> |
| 449 | |
| 450 | As before, change the filenames to whatever is appropriate for |
| 451 | your system. You can have fossil run as any user that has write |
| 452 | permission on the repository and on the directory that contains the |
| 453 | repository. But it is safer to run fossil as root. When fossil |
| 454 | sees that it is running as root, it automatically puts itself into |
| 455 | a <a href="http://en.wikipedia.org/wiki/Chroot">chroot jail</a> and |
| 456 | drops all privileges prior to reading any information from the client. |
| 457 | Since fossil is a stand-alone program, you do not need to put anything |
| 458 | in the chroot jail with fossil in order for it to do its job. |
| 459 | </li> |
| 460 | </ol> |
| 461 | |
| 462 | <h2>6.0 Review Of Key Concepts</h2> |
| 463 | |
| 464 | <ul> |
| 465 | <li>The <b>fossil</b> program is a self-contained stand-alone executable. |
| 466 |
| --- www/concepts.wiki | |
| +++ www/concepts.wiki | |
| @@ -197,11 +197,15 @@ | |
| 197 | is identified by your VISUAL environment variable. Fossil will also |
| 198 | use GPG to clearsign your manifests if you happen to have it installed, |
| 199 | but fossil will skip that step if GPG missing from your system. |
| 200 | You can optionally set up fossil to use external "diff" programs, |
| 201 | though fossil has an excellent built-in "diff" algorithm that works |
| 202 | fine for most people. If you happen to have Tcl/Tk installed on your |
| 203 | system, Fossil will use it to generate a graphical "diff" display when |
| 204 | you use the --tk option to the "diff" command, but this too is entirely |
| 205 | optional. |
| 206 | |
| 207 | |
| 208 | To uninstall fossil, simply delete the executable. |
| 209 | |
| 210 | To upgrade an older version of fossil to a newer version, just |
| 211 | replace the old executable with the new one. You might need to |
| @@ -391,75 +395,32 @@ | |
| 395 | <h2>5.0 Setting Up A Fossil Server</h2> |
| 396 | |
| 397 | With other configuration management software, setting up a server is |
| 398 | a lot of work and normally takes time, patience, and a lot of system |
| 399 | knowledge. Fossil is designed to avoid this frustration. Setting up |
| 400 | a server with fossil is ridiculously easy. You have four options:</p> |
| 401 | |
| 402 | <ol> |
| 403 | <li><p><b>Stand-alone server.</b> |
| 404 | Simply run the [/help?cmd=server|fossil server] or |
| 405 | [/help?cmd=ui|fossil ui] command from the command-line. |
| 406 | |
| 407 | <li><p><b>CGI.</b> |
| 408 | Install a 2-line CGI script on a CGI-enabled web-server like Apache. |
| 409 | |
| 410 | <li><p><b>SCGI.</b> |
| 411 | Start an SCGI server using the |
| 412 | [/help?cmd=server| fossil server --scgi] command for handling |
| 413 | SCGI requests from web-servers like Nginx. |
| 414 | |
| 415 | <li><p><b>Inetd or Stunnel.</b> |
| 416 | Configure programs like inetd, xinetd, or stunnel to hand off HTTP requests |
| 417 | directly to the [/help?cmd=http|fossil http] command. |
| 418 | </ol> |
| 419 | |
| 420 | See the [./server.wiki | How To Configure A Fossil Server] document |
| 421 | for details. |
| 422 | |
| 423 | <h2>6.0 Review Of Key Concepts</h2> |
| 424 | |
| 425 | <ul> |
| 426 | <li>The <b>fossil</b> program is a self-contained stand-alone executable. |
| 427 |