Fossil SCM
Updated comments, improved output further. More to come.
Commit
6ee05bf62df4459956a3fce564796f8ea2b7a1d085745c4b0f3e872343248fcc
Parent
e1b14acf76b62b5…
1 file changed
+63
-28
+63
-28
| --- tools/infoscript.bash | ||
| +++ tools/infoscript.bash | ||
| @@ -6,10 +6,11 @@ | ||
| 6 | 6 | # v0.5 Working out sed/head/tail differences between GNU and BSD. |
| 7 | 7 | # v0.6 Replaced "head -n -1" with "sed '$d'" which does the same thing. |
| 8 | 8 | # v0.7 Adding help in separately for normal/auxil commands. |
| 9 | 9 | # v0.8 Added common options and Features. Got rid of some obvious bugs. |
| 10 | 10 | # v0.9 Added @bye at end. |
| 11 | +# v0.10 Retitled Features to Fossil. | |
| 11 | 12 | # Builds (finally) on OpenBSD. |
| 12 | 13 | # |
| 13 | 14 | # Requires fossil, tail, GNU sed and makeinfo |
| 14 | 15 | # |
| 15 | 16 | # TODO: figure out how to replace one line with two portably |
| @@ -40,29 +41,42 @@ | ||
| 40 | 41 | |
| 41 | 42 | @end titlepage |
| 42 | 43 | |
| 43 | 44 | " >> fossil.texi |
| 44 | 45 | |
| 45 | -# Add @shortcontents and @contents | |
| 46 | -printf "@shortcontents | |
| 47 | -@contents\n | |
| 46 | +# Add @contents | |
| 47 | +printf "@contents\n | |
| 48 | 48 | |
| 49 | 49 | " >> fossil.texi |
| 50 | 50 | |
| 51 | 51 | # Check fossil version. Only thing wrong with this is which fossil binary is picked up first. |
| 52 | 52 | fossil version | sed 's/This is fossil version /@set VERSION /' | cut -c1-17 >> fossil.texi |
| 53 | + | |
| 54 | +# Insert repeat of Top node for PDF. We have to hack to do this | |
| 55 | +printf "@ifnotinfo | |
| 56 | +@ifnothtml | |
| 57 | +@node Introduction | |
| 58 | +@top Introduction for Fossil - a distributed version control system | |
| 59 | + | |
| 60 | +Fossil is a distributed version control system (DVCS) with built-in | |
| 61 | +forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server. | |
| 62 | +This file documents version @value{VERSION} of Fossil. | |
| 63 | + | |
| 64 | +@end ifnothtml | |
| 65 | +@end ifnotinfo | |
| 66 | +" >> fossil.texi | |
| 53 | 67 | |
| 54 | 68 | printf "@node Top |
| 55 | -@top Fossil - a distributed version control system | |
| 69 | +@chapter Fossil - a distributed version control system | |
| 56 | 70 | |
| 57 | 71 | Fossil is a distributed version control system (DVCS) with built-in |
| 58 | 72 | forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server. |
| 59 | 73 | This file documents version @value{VERSION} of Fossil. |
| 60 | 74 | |
| 61 | 75 | @c @node menu |
| 62 | 76 | @menu |
| 63 | -* Features:: Features listed from the website front page. | |
| 77 | +* Fossil:: Introduction and features listed from the website front page. | |
| 64 | 78 | * Common commands:: These are the commands that are most likely to be used. |
| 65 | 79 | * Uncommon commands:: These aren't used as often, but they're still there when needed. |
| 66 | 80 | * Common arguments:: -o arguments common to all commands |
| 67 | 81 | * License:: The license agreement of the fossil project |
| 68 | 82 | @end menu |
| @@ -77,31 +91,52 @@ | ||
| 77 | 91 | help nodes from fossil into here, but it's vaguely possible I've missed some. |
| 78 | 92 | |
| 79 | 93 | " >> fossil.texi |
| 80 | 94 | |
| 81 | 95 | # Add in the Features from the front webpage |
| 82 | -printf "@node Features | |
| 83 | -@chapter Features | |
| 84 | - | |
| 85 | -Features as described on the fossil home page. | |
| 86 | - | |
| 87 | -1. Integrated Bug Tracking, Wiki, Forum, and Technotes - In addition to doing distributed version control like Git and Mercurial, Fossil also supports bug tracking, wiki, forum, and tech-notes. | |
| 88 | - | |
| 89 | -2. Built-in Web Interface - Fossil has a built-in and intuitive web interface that promotes project situational awareness. Type \"fossil ui\" and Fossil automatically opens a web browser to a page that shows detailed graphical history and status information on that project. | |
| 90 | - | |
| 91 | -3. Self-Contained - Fossil is a single self-contained stand-alone executable. To install, simply download a precompiled binary for Linux, Mac, OpenBSD, or Windows and put it on your \$PATH. Easy-to-compile source code is available for users on other platforms. | |
| 92 | - | |
| 93 | -4. Simple Networking - No custom protocols or TCP ports. Fossil uses plain old HTTP (or HTTPS or SSH) for all network communications, so it works fine from behind restrictive firewalls, including proxies. The protocol is bandwidth efficient to the point that Fossil can be used comfortably over dial-up or over the exceedingly slow Wifi on airliners. | |
| 94 | - | |
| 95 | -5. CGI/SCGI Enabled - No server is required, but if you want to set one up, Fossil supports four easy server configurations. | |
| 96 | - | |
| 97 | -6. Autosync - Fossil supports \"autosync\" mode which helps to keep projects moving forward by reducing the amount of needless forking and merging often associated with distributed projects. | |
| 98 | - | |
| 99 | -7. Robust & Reliable - Fossil stores content using an enduring file format in an SQLite database so that transactions are atomic even if interrupted by a power loss or system crash. Automatic self-checks verify that all aspects of the repository are consistent prior to each commit. | |
| 100 | - | |
| 101 | -8. Free and Open-Source - Uses the 2-clause BSD license. | |
| 102 | - | |
| 96 | +printf "@node Fossil | |
| 97 | +@chapter Fossil | |
| 98 | + | |
| 99 | +Fossil is a distributed version control system (DVCS) with built-in | |
| 100 | +forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server. | |
| 101 | +This file documents version @value{VERSION} of Fossil. | |
| 102 | + | |
| 103 | +This is a quick breakdown of the things that you get when you run the fossil binary: | |
| 104 | + | |
| 105 | +@enumerate | |
| 106 | +@item | |
| 107 | +Integrated Bug Tracking, Wiki, Forum, and Technotes | |
| 108 | + - In addition to doing distributed version control like Git and Mercurial, Fossil also supports bug tracking, wiki, forum, and tech-notes. | |
| 109 | + | |
| 110 | +@item | |
| 111 | +Built-in Web Interface | |
| 112 | + - Fossil has a built-in and intuitive web interface that promotes project situational awareness. Type \"fossil ui\" and Fossil automatically opens a web browser to a page that shows detailed graphical history and status information on that project. | |
| 113 | + | |
| 114 | +@item | |
| 115 | +Self-Contained | |
| 116 | + - Fossil is a single self-contained stand-alone executable. To install, simply download a precompiled binary for Linux, Mac, OpenBSD, or Windows and put it on your \$PATH. Easy-to-compile source code is available for users on other platforms. | |
| 117 | + | |
| 118 | +@item | |
| 119 | +Simple Networking | |
| 120 | + - No custom protocols or TCP ports. Fossil uses plain old HTTP (or HTTPS or SSH) for all network communications, so it works fine from behind restrictive firewalls, including proxies. The protocol is bandwidth efficient to the point that Fossil can be used comfortably over dial-up or over the exceedingly slow Wifi on airliners. | |
| 121 | + | |
| 122 | +@item | |
| 123 | +CGI/SCGI Enabled | |
| 124 | + - No server is required, but if you want to set one up, Fossil supports four easy server configurations. | |
| 125 | + | |
| 126 | +@item | |
| 127 | +Autosync | |
| 128 | + - Fossil supports \"autosync\" mode which helps to keep projects moving forward by reducing the amount of needless forking and merging often associated with distributed projects. | |
| 129 | + | |
| 130 | +@item | |
| 131 | +Robust & Reliable | |
| 132 | + - Fossil stores content using an enduring file format in an SQLite database so that transactions are atomic even if interrupted by a power loss or system crash. Automatic self-checks verify that all aspects of the repository are consistent prior to each commit. | |
| 133 | + | |
| 134 | +@item | |
| 135 | +Free and Open-Source | |
| 136 | + - Uses the 2-clause BSD license. | |
| 137 | +@end enumerate | |
| 103 | 138 | " >> fossil.texi |
| 104 | 139 | |
| 105 | 140 | ###### Common commands |
| 106 | 141 | printf "@node Common commands |
| 107 | 142 | @chapter Common commands |
| @@ -133,14 +168,14 @@ | ||
| 133 | 168 | |
| 134 | 169 | # swap out @ with @@ so texinfo doesn't barf |
| 135 | 170 | echo "Doubling up the @'s" |
| 136 | 171 | sed -i -e 's/@/@@/g' workfile |
| 137 | 172 | |
| 138 | -echo "Swapping out # for @node ... \n@unnumbered ..." | |
| 173 | +echo "Swapping out # for @node ... \n@section ..." | |
| 139 | 174 | # This swaps out "# keyword" with |
| 140 | 175 | # @node keyword |
| 141 | -# @unnumbered keyword | |
| 176 | +# @section keyword | |
| 142 | 177 | # breaks on *BSD's seds, needs gsed there |
| 143 | 178 | |
| 144 | 179 | # Check the OS so we can use gsed if needed |
| 145 | 180 | MYOS="$(uname )" |
| 146 | 181 | if [[ ${MYOS} == "Linux" ]]; then |
| 147 | 182 |
| --- tools/infoscript.bash | |
| +++ tools/infoscript.bash | |
| @@ -6,10 +6,11 @@ | |
| 6 | # v0.5 Working out sed/head/tail differences between GNU and BSD. |
| 7 | # v0.6 Replaced "head -n -1" with "sed '$d'" which does the same thing. |
| 8 | # v0.7 Adding help in separately for normal/auxil commands. |
| 9 | # v0.8 Added common options and Features. Got rid of some obvious bugs. |
| 10 | # v0.9 Added @bye at end. |
| 11 | # Builds (finally) on OpenBSD. |
| 12 | # |
| 13 | # Requires fossil, tail, GNU sed and makeinfo |
| 14 | # |
| 15 | # TODO: figure out how to replace one line with two portably |
| @@ -40,29 +41,42 @@ | |
| 40 | |
| 41 | @end titlepage |
| 42 | |
| 43 | " >> fossil.texi |
| 44 | |
| 45 | # Add @shortcontents and @contents |
| 46 | printf "@shortcontents |
| 47 | @contents\n |
| 48 | |
| 49 | " >> fossil.texi |
| 50 | |
| 51 | # Check fossil version. Only thing wrong with this is which fossil binary is picked up first. |
| 52 | fossil version | sed 's/This is fossil version /@set VERSION /' | cut -c1-17 >> fossil.texi |
| 53 | |
| 54 | printf "@node Top |
| 55 | @top Fossil - a distributed version control system |
| 56 | |
| 57 | Fossil is a distributed version control system (DVCS) with built-in |
| 58 | forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server. |
| 59 | This file documents version @value{VERSION} of Fossil. |
| 60 | |
| 61 | @c @node menu |
| 62 | @menu |
| 63 | * Features:: Features listed from the website front page. |
| 64 | * Common commands:: These are the commands that are most likely to be used. |
| 65 | * Uncommon commands:: These aren't used as often, but they're still there when needed. |
| 66 | * Common arguments:: -o arguments common to all commands |
| 67 | * License:: The license agreement of the fossil project |
| 68 | @end menu |
| @@ -77,31 +91,52 @@ | |
| 77 | help nodes from fossil into here, but it's vaguely possible I've missed some. |
| 78 | |
| 79 | " >> fossil.texi |
| 80 | |
| 81 | # Add in the Features from the front webpage |
| 82 | printf "@node Features |
| 83 | @chapter Features |
| 84 | |
| 85 | Features as described on the fossil home page. |
| 86 | |
| 87 | 1. Integrated Bug Tracking, Wiki, Forum, and Technotes - In addition to doing distributed version control like Git and Mercurial, Fossil also supports bug tracking, wiki, forum, and tech-notes. |
| 88 | |
| 89 | 2. Built-in Web Interface - Fossil has a built-in and intuitive web interface that promotes project situational awareness. Type \"fossil ui\" and Fossil automatically opens a web browser to a page that shows detailed graphical history and status information on that project. |
| 90 | |
| 91 | 3. Self-Contained - Fossil is a single self-contained stand-alone executable. To install, simply download a precompiled binary for Linux, Mac, OpenBSD, or Windows and put it on your \$PATH. Easy-to-compile source code is available for users on other platforms. |
| 92 | |
| 93 | 4. Simple Networking - No custom protocols or TCP ports. Fossil uses plain old HTTP (or HTTPS or SSH) for all network communications, so it works fine from behind restrictive firewalls, including proxies. The protocol is bandwidth efficient to the point that Fossil can be used comfortably over dial-up or over the exceedingly slow Wifi on airliners. |
| 94 | |
| 95 | 5. CGI/SCGI Enabled - No server is required, but if you want to set one up, Fossil supports four easy server configurations. |
| 96 | |
| 97 | 6. Autosync - Fossil supports \"autosync\" mode which helps to keep projects moving forward by reducing the amount of needless forking and merging often associated with distributed projects. |
| 98 | |
| 99 | 7. Robust & Reliable - Fossil stores content using an enduring file format in an SQLite database so that transactions are atomic even if interrupted by a power loss or system crash. Automatic self-checks verify that all aspects of the repository are consistent prior to each commit. |
| 100 | |
| 101 | 8. Free and Open-Source - Uses the 2-clause BSD license. |
| 102 | |
| 103 | " >> fossil.texi |
| 104 | |
| 105 | ###### Common commands |
| 106 | printf "@node Common commands |
| 107 | @chapter Common commands |
| @@ -133,14 +168,14 @@ | |
| 133 | |
| 134 | # swap out @ with @@ so texinfo doesn't barf |
| 135 | echo "Doubling up the @'s" |
| 136 | sed -i -e 's/@/@@/g' workfile |
| 137 | |
| 138 | echo "Swapping out # for @node ... \n@unnumbered ..." |
| 139 | # This swaps out "# keyword" with |
| 140 | # @node keyword |
| 141 | # @unnumbered keyword |
| 142 | # breaks on *BSD's seds, needs gsed there |
| 143 | |
| 144 | # Check the OS so we can use gsed if needed |
| 145 | MYOS="$(uname )" |
| 146 | if [[ ${MYOS} == "Linux" ]]; then |
| 147 |
| --- tools/infoscript.bash | |
| +++ tools/infoscript.bash | |
| @@ -6,10 +6,11 @@ | |
| 6 | # v0.5 Working out sed/head/tail differences between GNU and BSD. |
| 7 | # v0.6 Replaced "head -n -1" with "sed '$d'" which does the same thing. |
| 8 | # v0.7 Adding help in separately for normal/auxil commands. |
| 9 | # v0.8 Added common options and Features. Got rid of some obvious bugs. |
| 10 | # v0.9 Added @bye at end. |
| 11 | # v0.10 Retitled Features to Fossil. |
| 12 | # Builds (finally) on OpenBSD. |
| 13 | # |
| 14 | # Requires fossil, tail, GNU sed and makeinfo |
| 15 | # |
| 16 | # TODO: figure out how to replace one line with two portably |
| @@ -40,29 +41,42 @@ | |
| 41 | |
| 42 | @end titlepage |
| 43 | |
| 44 | " >> fossil.texi |
| 45 | |
| 46 | # Add @contents |
| 47 | printf "@contents\n |
| 48 | |
| 49 | " >> fossil.texi |
| 50 | |
| 51 | # Check fossil version. Only thing wrong with this is which fossil binary is picked up first. |
| 52 | fossil version | sed 's/This is fossil version /@set VERSION /' | cut -c1-17 >> fossil.texi |
| 53 | |
| 54 | # Insert repeat of Top node for PDF. We have to hack to do this |
| 55 | printf "@ifnotinfo |
| 56 | @ifnothtml |
| 57 | @node Introduction |
| 58 | @top Introduction for Fossil - a distributed version control system |
| 59 | |
| 60 | Fossil is a distributed version control system (DVCS) with built-in |
| 61 | forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server. |
| 62 | This file documents version @value{VERSION} of Fossil. |
| 63 | |
| 64 | @end ifnothtml |
| 65 | @end ifnotinfo |
| 66 | " >> fossil.texi |
| 67 | |
| 68 | printf "@node Top |
| 69 | @chapter Fossil - a distributed version control system |
| 70 | |
| 71 | Fossil is a distributed version control system (DVCS) with built-in |
| 72 | forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server. |
| 73 | This file documents version @value{VERSION} of Fossil. |
| 74 | |
| 75 | @c @node menu |
| 76 | @menu |
| 77 | * Fossil:: Introduction and features listed from the website front page. |
| 78 | * Common commands:: These are the commands that are most likely to be used. |
| 79 | * Uncommon commands:: These aren't used as often, but they're still there when needed. |
| 80 | * Common arguments:: -o arguments common to all commands |
| 81 | * License:: The license agreement of the fossil project |
| 82 | @end menu |
| @@ -77,31 +91,52 @@ | |
| 91 | help nodes from fossil into here, but it's vaguely possible I've missed some. |
| 92 | |
| 93 | " >> fossil.texi |
| 94 | |
| 95 | # Add in the Features from the front webpage |
| 96 | printf "@node Fossil |
| 97 | @chapter Fossil |
| 98 | |
| 99 | Fossil is a distributed version control system (DVCS) with built-in |
| 100 | forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server. |
| 101 | This file documents version @value{VERSION} of Fossil. |
| 102 | |
| 103 | This is a quick breakdown of the things that you get when you run the fossil binary: |
| 104 | |
| 105 | @enumerate |
| 106 | @item |
| 107 | Integrated Bug Tracking, Wiki, Forum, and Technotes |
| 108 | - In addition to doing distributed version control like Git and Mercurial, Fossil also supports bug tracking, wiki, forum, and tech-notes. |
| 109 | |
| 110 | @item |
| 111 | Built-in Web Interface |
| 112 | - Fossil has a built-in and intuitive web interface that promotes project situational awareness. Type \"fossil ui\" and Fossil automatically opens a web browser to a page that shows detailed graphical history and status information on that project. |
| 113 | |
| 114 | @item |
| 115 | Self-Contained |
| 116 | - Fossil is a single self-contained stand-alone executable. To install, simply download a precompiled binary for Linux, Mac, OpenBSD, or Windows and put it on your \$PATH. Easy-to-compile source code is available for users on other platforms. |
| 117 | |
| 118 | @item |
| 119 | Simple Networking |
| 120 | - No custom protocols or TCP ports. Fossil uses plain old HTTP (or HTTPS or SSH) for all network communications, so it works fine from behind restrictive firewalls, including proxies. The protocol is bandwidth efficient to the point that Fossil can be used comfortably over dial-up or over the exceedingly slow Wifi on airliners. |
| 121 | |
| 122 | @item |
| 123 | CGI/SCGI Enabled |
| 124 | - No server is required, but if you want to set one up, Fossil supports four easy server configurations. |
| 125 | |
| 126 | @item |
| 127 | Autosync |
| 128 | - Fossil supports \"autosync\" mode which helps to keep projects moving forward by reducing the amount of needless forking and merging often associated with distributed projects. |
| 129 | |
| 130 | @item |
| 131 | Robust & Reliable |
| 132 | - Fossil stores content using an enduring file format in an SQLite database so that transactions are atomic even if interrupted by a power loss or system crash. Automatic self-checks verify that all aspects of the repository are consistent prior to each commit. |
| 133 | |
| 134 | @item |
| 135 | Free and Open-Source |
| 136 | - Uses the 2-clause BSD license. |
| 137 | @end enumerate |
| 138 | " >> fossil.texi |
| 139 | |
| 140 | ###### Common commands |
| 141 | printf "@node Common commands |
| 142 | @chapter Common commands |
| @@ -133,14 +168,14 @@ | |
| 168 | |
| 169 | # swap out @ with @@ so texinfo doesn't barf |
| 170 | echo "Doubling up the @'s" |
| 171 | sed -i -e 's/@/@@/g' workfile |
| 172 | |
| 173 | echo "Swapping out # for @node ... \n@section ..." |
| 174 | # This swaps out "# keyword" with |
| 175 | # @node keyword |
| 176 | # @section keyword |
| 177 | # breaks on *BSD's seds, needs gsed there |
| 178 | |
| 179 | # Check the OS so we can use gsed if needed |
| 180 | MYOS="$(uname )" |
| 181 | if [[ ${MYOS} == "Linux" ]]; then |
| 182 |