Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | The canonical Fossil homepage is now https://fossil-scm.org/home without the "www." in the domain and with the main path at /home, not /index.html or /fossil. Update all URLs in documentation to reflect this fact. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA3-256: |
09908ab058038349e6dc2d774feb47ea |
| User & Date: | drh 2021-02-09 13:34:17.827 |
Context
|
2021-02-09
| ||
| 18:46 | Attempt to documentation and rationalize the "redirect:" CGI option. ... (check-in: 95010490aa user: drh tags: trunk) | |
| 13:34 | The canonical Fossil homepage is now https://fossil-scm.org/home without the "www." in the domain and with the main path at /home, not /index.html or /fossil. Update all URLs in documentation to reflect this fact. ... (check-in: 09908ab058 user: drh tags: trunk) | |
|
2021-02-08
| ||
| 21:18 | Still more fixes to the "redirect: * URL" mechanism of CGI. ... (check-in: d6f9c566af user: drh tags: trunk) | |
Changes
Changes to BUILD.txt.
| ︙ | ︙ | |||
71 72 73 74 75 76 77 | A header comment in src/translate.c explains in detail what it does. * The src/mkindex.c program generates some C code that implements static lookup tables. See the header comment in the source code for details on what it does. Additional information on the build process is available from | | | 71 72 73 74 75 76 77 78 | A header comment in src/translate.c explains in detail what it does. * The src/mkindex.c program generates some C code that implements static lookup tables. See the header comment in the source code for details on what it does. Additional information on the build process is available from http://fossil-scm.org/home/doc/trunk/www/makefile.wiki |
Changes to Dockerfile.
1 2 3 4 5 6 7 8 9 10 11 | ### # Dockerfile for Fossil ### FROM fedora:29 ### Now install some additional parts we will need for the build RUN dnf update -y && dnf install -y gcc make tcl tcl-devel zlib-devel openssl-devel tar && dnf clean all && groupadd -r fossil -g 433 && useradd -u 431 -r -g fossil -d /opt/fossil -s /sbin/nologin -c "Fossil user" fossil ### If you want to build "trunk", change the next line accordingly. ENV FOSSIL_INSTALL_VERSION release | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
###
# Dockerfile for Fossil
###
FROM fedora:29
### Now install some additional parts we will need for the build
RUN dnf update -y && dnf install -y gcc make tcl tcl-devel zlib-devel openssl-devel tar && dnf clean all && groupadd -r fossil -g 433 && useradd -u 431 -r -g fossil -d /opt/fossil -s /sbin/nologin -c "Fossil user" fossil
### If you want to build "trunk", change the next line accordingly.
ENV FOSSIL_INSTALL_VERSION release
RUN curl "https://fossil-scm.org/home/tarball/fossil-src.tar.gz?name=fossil-src&uuid=${FOSSIL_INSTALL_VERSION}" | tar zx
RUN cd fossil-src && ./configure --disable-fusefs --json --with-th1-docs --with-th1-hooks --with-tcl=1 --with-tcl-stubs --with-tcl-private-stubs
RUN cd fossil-src/src && mv main.c main.c.orig && sed s/\"now\"/0/ <main.c.orig >main.c
RUN cd fossil-src && make && strip fossil && cp fossil /usr/bin && cd .. && rm -rf fossil-src && chmod a+rx /usr/bin/fossil && mkdir -p /opt/fossil && chown fossil:fossil /opt/fossil
### Build is done, remove modules no longer needed
RUN dnf remove -y gcc make zlib-devel tcl-devel openssl-devel tar && dnf clean all
|
| ︙ | ︙ |
Changes to debian/makedeb.sh.
| ︙ | ︙ | |||
55 56 57 58 59 60 61 |
COPYRIGHT=${DEBLOCALPREFIX}/share/doc/${PACKAGE_DEBNAME}/copyright
cat <<EOF > ${COPYRIGHT}
This package was created by fossil-scm <fossil-dev@lists.fossil-scm.org>
on ${PACKAGE_TIME}.
The original sources for fossil can be downloaded for free from:
| | | 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
COPYRIGHT=${DEBLOCALPREFIX}/share/doc/${PACKAGE_DEBNAME}/copyright
cat <<EOF > ${COPYRIGHT}
This package was created by fossil-scm <fossil-dev@lists.fossil-scm.org>
on ${PACKAGE_TIME}.
The original sources for fossil can be downloaded for free from:
http://fossil-scm.org/
fossil is released under the terms of the 2-clause BSD License.
EOF
}
true && {
|
| ︙ | ︙ |
Changes to fossil.1.
| ︙ | ︙ | |||
92 93 94 95 96 97 98 | .HP 8. .B Free and Open-Source - Uses the 2-clause BSD license. .SH DOCUMENTATION | | | 92 93 94 95 96 97 98 99 100 101 102 | .HP 8. .B Free and Open-Source - Uses the 2-clause BSD license. .SH DOCUMENTATION http://fossil-scm.org/ .br .B fossil \fIui\fR |
Changes to setup/fossil.iss.
| ︙ | ︙ | |||
17 18 19 20 21 22 23 |
[Setup]
ArchitecturesAllowed=x86 x64
AlwaysShowComponentsList=false
AppCopyright=Copyright (c) D. Richard Hipp. All rights reserved.
AppID={{f1c25a1f-3954-4e1a-ac36-4314c52f057c}
AppName=Fossil
AppPublisher=Fossil Development Team
| | | | | | 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
[Setup]
ArchitecturesAllowed=x86 x64
AlwaysShowComponentsList=false
AppCopyright=Copyright (c) D. Richard Hipp. All rights reserved.
AppID={{f1c25a1f-3954-4e1a-ac36-4314c52f057c}
AppName=Fossil
AppPublisher=Fossil Development Team
AppPublisherURL=https://fossil-scm.org/
AppSupportURL=https://fossil-scm.org/
AppUpdatesURL=https://fossil-scm.org/
AppVerName=Fossil v{#AppVersion}
AppVersion={#AppVersion}
AppComments=Simple, high-reliability, distributed software configuration management system.
AppReadmeFile=https://fossil-scm.org/home/doc/tip/www/quickstart.wiki
DefaultDirName={pf}\Fossil
DefaultGroupName=Fossil
OutputBaseFilename=fossil-win32-{#AppVersion}
OutputManifestFile=fossil-win32-{#AppVersion}-manifest.txt
SetupLogging=true
UninstallFilesDir={app}\uninstall
VersionInfoVersion={#AppVersion}
|
| ︙ | ︙ |
Changes to skins/ardoise/footer.txt.
1 2 3 4 5 6 7 8 9 10 |
<th1>
if {[string first artifact $current_page] == 0 || [string first hexdump $current_page] == 0} {
html "</div>"
}
</th1>
</div> <!-- end div container -->
</div> <!-- end div middle max-full-width -->
<div class="footer">
<div class="container">
<div class="pull-right">
| | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<th1>
if {[string first artifact $current_page] == 0 || [string first hexdump $current_page] == 0} {
html "</div>"
}
</th1>
</div> <!-- end div container -->
</div> <!-- end div middle max-full-width -->
<div class="footer">
<div class="container">
<div class="pull-right">
<a href="https://fossil-scm.org/">Fossil $release_version $manifest_version $manifest_date</a>
</div>
This page was generated in about <th1>puts [expr {([utime]+[stime]+1000)/1000*0.001}]</th1>s
</div>
</div>
|
Changes to src/http_socket.c.
| ︙ | ︙ | |||
135 136 137 138 139 140 141 | } } /* ** Open a socket connection. The identify of the server is determined ** by pUrlData ** | | | 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 |
}
}
/*
** Open a socket connection. The identify of the server is determined
** by pUrlData
**
** pUrlData->name Name of the server. Ex: fossil-scm.org
** pUrlData->port TCP/IP port to use. Ex: 80
**
** Return the number of errors.
*/
int socket_open(UrlData *pUrlData){
int rc = 0;
struct addrinfo *ai = 0;
|
| ︙ | ︙ |
Changes to src/http_ssl.c.
| ︙ | ︙ | |||
242 243 244 245 246 247 248 | sslNoCertVerify = 1; } /* ** Open an SSL connection. The identify of the server is determined ** as follows: ** | | | 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 |
sslNoCertVerify = 1;
}
/*
** Open an SSL connection. The identify of the server is determined
** as follows:
**
** pUrlData->name Name of the server. Ex: fossil-scm.org
** g.url.name Name of the proxy server, if proxying.
** pUrlData->port TCP/IP port to use. Ex: 80
**
** Return the number of errors.
*/
int ssl_open(UrlData *pUrlData){
X509 *cert;
|
| ︙ | ︙ |
Changes to src/http_transport.c.
| ︙ | ︙ | |||
150 151 152 153 154 155 156 | return sshPid==0; } /* ** Open a connection to the server. The server is defined by the following ** variables: ** | | | 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 |
return sshPid==0;
}
/*
** Open a connection to the server. The server is defined by the following
** variables:
**
** pUrlData->name Name of the server. Ex: fossil-scm.org
** pUrlData->port TCP/IP port. Ex: 80
** pUrlData->isHttps Use TLS for the connection
**
** Return the number of errors.
*/
int transport_open(UrlData *pUrlData){
int rc = 0;
|
| ︙ | ︙ |
Changes to src/makeheaders.html.
| ︙ | ︙ | |||
1102 1103 1104 1105 1106 1107 1108 | <a name="H0017"></a> <h2>6.0 History</h2> <p> The makeheaders program was first written by D. Richard Hipp (also the original author of <a href="https://sqlite.org/">SQLite</a> and | | | 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 | <a name="H0017"></a> <h2>6.0 History</h2> <p> The makeheaders program was first written by D. Richard Hipp (also the original author of <a href="https://sqlite.org/">SQLite</a> and <a href="https://fossil-scm.org/">Fossil</a>) in 1993. Hipp open-sourced the project immediately, but it never caught on with any other developers and it continued to be used mostly by Hipp himself for over a decade. When Hipp was first writing the Fossil version control system in 2006 and 2007, he used makeheaders on that project to help simplify the source code. As the popularity of Fossil increased, the makeheaders that was incorporated into the Fossil source tree became the |
| ︙ | ︙ |
Changes to src/sqlite3.c.
| ︙ | ︙ | |||
1169 1170 1171 1172 1173 1174 1175 | ** The SQLITE_VERSION_NUMBER for any given release of SQLite will also ** be larger than the release from which it is derived. Either Y will ** be held constant and Z will be incremented or else Y will be incremented ** and Z will be reset to zero. ** ** Since [version 3.6.18] ([dateof:3.6.18]), ** SQLite source code has been stored in the | | | 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 | ** The SQLITE_VERSION_NUMBER for any given release of SQLite will also ** be larger than the release from which it is derived. Either Y will ** be held constant and Z will be incremented or else Y will be incremented ** and Z will be reset to zero. ** ** Since [version 3.6.18] ([dateof:3.6.18]), ** SQLite source code has been stored in the ** <a href="http://fossil-scm.org/">Fossil configuration management ** system</a>. ^The SQLITE_SOURCE_ID macro evaluates to ** a string which identifies a particular check-in of SQLite ** within its configuration management system. ^The SQLITE_SOURCE_ID ** string contains the date and time of the check-in (UTC) and a SHA1 ** or SHA3-256 hash of the entire source tree. If the source code has ** been edited in any way since it was last checked in, then the last ** four hexadecimal digits of the hash may be modified. |
| ︙ | ︙ |
Changes to src/sqlite3.h.
| ︙ | ︙ | |||
106 107 108 109 110 111 112 | ** The SQLITE_VERSION_NUMBER for any given release of SQLite will also ** be larger than the release from which it is derived. Either Y will ** be held constant and Z will be incremented or else Y will be incremented ** and Z will be reset to zero. ** ** Since [version 3.6.18] ([dateof:3.6.18]), ** SQLite source code has been stored in the | | | 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | ** The SQLITE_VERSION_NUMBER for any given release of SQLite will also ** be larger than the release from which it is derived. Either Y will ** be held constant and Z will be incremented or else Y will be incremented ** and Z will be reset to zero. ** ** Since [version 3.6.18] ([dateof:3.6.18]), ** SQLite source code has been stored in the ** <a href="http://fossil-scm.org/">Fossil configuration management ** system</a>. ^The SQLITE_SOURCE_ID macro evaluates to ** a string which identifies a particular check-in of SQLite ** within its configuration management system. ^The SQLITE_SOURCE_ID ** string contains the date and time of the check-in (UTC) and a SHA1 ** or SHA3-256 hash of the entire source tree. If the source code has ** been edited in any way since it was last checked in, then the last ** four hexadecimal digits of the hash may be modified. |
| ︙ | ︙ |
Changes to src/wikiformat.c.
| ︙ | ︙ | |||
1216 1217 1218 1219 1220 1221 1222 | ** If this routine determines that no hyperlink should be generated, then ** set zClose[0] to 0. ** ** Actually, this routine might or might not append the hyperlink, depending ** on current rendering rules: specifically does the current user have ** "History" permission. ** | | | | | 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 | ** If this routine determines that no hyperlink should be generated, then ** set zClose[0] to 0. ** ** Actually, this routine might or might not append the hyperlink, depending ** on current rendering rules: specifically does the current user have ** "History" permission. ** ** [http://fossil-scm.org/] ** [https://fossil-scm.org/] ** [ftp://fossil-scm.org/] ** [mailto:fossil-users@lists.fossil-scm.org] ** ** [/path] -> Refers to the root of the Fossil hierarchy, not ** the root of the URI domain ** ** [./relpath] ** [../relpath] |
| ︙ | ︙ |
Changes to test/release-checklist.wiki.
| ︙ | ︙ | |||
76 77 78 79 80 81 82 | <ol type="a"> <li> <b>valgrind fossil rebuild</b> <li> <b>valgrind fossil sync</b> </ol> <li><p> | | | | 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 |
<ol type="a">
<li> <b>valgrind fossil rebuild</b>
<li> <b>valgrind fossil sync</b>
</ol>
<li><p>
Inspect [http://fossil-scm.org/home/vdiff?from=release&to=trunk&sbs=1|all code changes since the previous release], paying particular
attention to the following details:
<ol type="a">
<li> Can a malicious HTTP request cause a buffer overrun.
<li> Can a malicious HTTP request expose privileged information to
unauthorized users.
</ol>
<li><p>
Use the release candidate version of fossil in production on the
[http://fossil-scm.org/] website for at least 48 hours (without
incident) prior to making the release official.
<li><p>
Verify that the [../www/changes.wiki | Change Log] is correct and
up-to-date.
</ol>
|
| ︙ | ︙ |
Changes to www/aboutcgi.wiki.
| ︙ | ︙ | |||
60 61 62 63 64 65 66 |
In this example: "timeline/four".
<tr><td>QUERY_STRING
<td>The query string that follows the "?" in the URL, if there is one.
</table>
<p>
There are other CGI environment variables beyond those listed above.
Many Fossil servers implement the
| | | 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
In this example: "timeline/four".
<tr><td>QUERY_STRING
<td>The query string that follows the "?" in the URL, if there is one.
</table>
<p>
There are other CGI environment variables beyond those listed above.
Many Fossil servers implement the
[https://fossil-scm.org/home/test_env/two/three?abc=xyz|test_env]
webpage that shows some of the CGI environment
variables that Fossil pays attention to.
<p>
In addition to setting various CGI environment variables, if the HTTP
request contains POST content, then the web server relays the POST content
to standard input of the CGI script.
<p>
|
| ︙ | ︙ | |||
128 129 130 131 132 133 134 | is "timeline", which means that Fossil will generate the [/help?cmd=/timeline|/timeline] webpage. <p> With Fossil, terms of PATH_INFO beyond the webpage name are converted into the "name" query parameter. Hence, the following two URLs mean exactly the same thing to Fossil: <ol type='A'> | | | | 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | is "timeline", which means that Fossil will generate the [/help?cmd=/timeline|/timeline] webpage. <p> With Fossil, terms of PATH_INFO beyond the webpage name are converted into the "name" query parameter. Hence, the following two URLs mean exactly the same thing to Fossil: <ol type='A'> <li> [https://fossil-scm.org/home/info/c14ecc43] <li> [https://fossil-scm.org/home/info?name=c14ecc43] </ol> In both cases, the CGI script is called "/fossil". For case (A), the PATH_INFO variable will be "info/c14ecc43" and so the "[/help?cmd=/info|/info]" webpage will be generated and the suffix of PATH_INFO will be converted into the "name" query parameter, which identifies the artifact about which information is requested. In case (B), the PATH_INFO is just "info", but the same "name" |
| ︙ | ︙ |
Changes to www/alerts.md.
| ︙ | ︙ | |||
384 385 386 387 388 389 390 | [pmdoc]: http://pm-doc.sourceforge.net/doc/ [rfc822]: https://www.w3.org/Protocols/rfc822/ <a id="db"></a> ### Method 2: Store in a Database | | | 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 | [pmdoc]: http://pm-doc.sourceforge.net/doc/ [rfc822]: https://www.w3.org/Protocols/rfc822/ <a id="db"></a> ### Method 2: Store in a Database The self-hosting Fossil repository at <https://fossil-scm.org/> currently uses this method rather than [the pipe method](#pipe) because it is running inside of a restrictive [chroot jail][cj] which is unable to hand off messages to the local MTA directly. When you configure a Fossil server this way, it adds outgoing email messages to a SQLite database file. A separate daemon process can then extract those messages for further disposition. |
| ︙ | ︙ |
Changes to www/build.wiki.
| ︙ | ︙ | |||
29 30 31 32 33 34 35 | containing a snapshot of the <em>latest</em> version directly from Fossil's own fossil repository. Additionally, source archives of <em>released</em> versions of fossil are available from the [/uv/download.html|downloads page]. To obtain a development version of fossil, follow these steps:</p> <ol> | | | | | 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | containing a snapshot of the <em>latest</em> version directly from Fossil's own fossil repository. Additionally, source archives of <em>released</em> versions of fossil are available from the [/uv/download.html|downloads page]. To obtain a development version of fossil, follow these steps:</p> <ol> <li><p>Point your web browser to [https://fossil-scm.org/]</li> <li><p>Click on the [/timeline|Timeline] link at the top of the page.</p></li> <li><p>Select a version of of Fossil you want to download. The latest version on the trunk branch is usually a good choice. Click on its link.</p></li> <li><p>Finally, click on one of the "Zip Archive" or "Tarball" links, according to your preference. These link will build a ZIP archive or a gzip-compressed tarball of the complete source code and download it to your computer. </ol> <h2>Aside: Is it really safe to use an unreleased development version of the Fossil source code?</h2> Yes! Any check-in on the [/timeline?t=trunk | trunk branch] of the Fossil [http://fossil-scm.org/home/timeline | Fossil self-hosting repository] will work fine. (Dodgy code is always on a branch.) In the unlikely event that you pick a version with a serious bug, it still won't clobber your files. Fossil uses several [./selfcheck.wiki | self-checks] prior to committing any repository change that prevent loss-of-work due to bugs. The Fossil [./selfhost.wiki | self-hosting repositories], especially the one at [http://fossil-scm.org/home], usually run a version of trunk that is less than a week or two old. Look at the bottom left-hand corner of this screen (to the right of "This page was generated in...") to see exactly which version of Fossil is rendering this page. It is always safe to use whatever version of the Fossil code you find running on the main Fossil website. <h2>2.0 Compiling</h2> |
| ︙ | ︙ | |||
147 148 149 150 151 152 153 | Alternatively, <b>./configure</b> may now be used to create a Makefile suitable for use with MinGW; however, options passed to configure that are not applicable on Windows may cause the configuration or compilation to fail (e.g. fusefs, internal-sqlite, etc). <i>HINT</i>: Do <u>not</u> use MinGW-4.x, it may compile but the Fossil binary will not work correctly, see | | | 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 |
Alternatively, <b>./configure</b> may now be used to create a Makefile
suitable for use with MinGW; however, options passed to configure that are
not applicable on Windows may cause the configuration or compilation to fail
(e.g. fusefs, internal-sqlite, etc).
<i>HINT</i>: Do <u>not</u> use MinGW-4.x, it may compile but the Fossil binary
will not work correctly, see
[https://fossil-scm.org/home/tktview/18cff45a4e210430e24c | ticket].
<li><p><i>MSVC</i> → Use the MSVC makefile. First
change to the "win/" subdirectory ("<b>cd win</b>") then run
"<b>nmake /f Makefile.msc</b>".<br><br>Alternatively, the batch
file "<b>win\buildmsvc.bat</b>" may be used and it will attempt to
detect and use the latest installed version of MSVC.<br><br>To enable
the optional <a href="https://www.openssl.org/">OpenSSL</a> support,
|
| ︙ | ︙ | |||
256 257 258 259 260 261 262 |
&& apk add --no-cache \
curl gcc make tcl \
musl-dev \
openssl-dev zlib-dev \
openssl-libs-static zlib-static \
\
&& curl \
| | | 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 |
&& apk add --no-cache \
curl gcc make tcl \
musl-dev \
openssl-dev zlib-dev \
openssl-libs-static zlib-static \
\
&& curl \
"https://fossil-scm.org/home/tarball/fossil-src.tar.gz?name=fossil-src&uuid=trunk" \
-o fossil-src.tar.gz \
\
&& tar xf fossil-src.tar.gz \
&& cd fossil-src \
\
&& ./configure \
--static \
|
| ︙ | ︙ |
Changes to www/caps/admin-v-setup.md.
| ︙ | ︙ | |||
444 445 446 447 448 449 450 | [capa]: ./ref.html#a [caps]: ./ref.html#s [capx]: ./ref.html#x [capy]: ./ref.html#y | | | | | 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 | [capa]: ./ref.html#a [caps]: ./ref.html#s [capx]: ./ref.html#x [capy]: ./ref.html#y [fcp]: https://fossil-scm.org/home/help?cmd=configuration [fdp]: ../fossil-v-git.wiki#devorg [forum]: https://fossil-scm.org/forum/ [fui]: /help?cmd=ui [lg]: ./login-groups.md [rs]: https://fossil-scm.org/home/doc/trunk/www/settings.wiki [sia]: https://fossil-scm.org/home/artifact?udc=1&ln=1259-1260&name=0fda31b6683c206a [snoy]: https://fossil-scm.org/forum/forumpost/00e1c4ecff [th1]: ../th1.md [tt]: https://en.wikipedia.org/wiki/Tiger_team#Security [webo]: ./#webonly |
Changes to www/changes.wiki.
| ︙ | ︙ | |||
155 156 157 158 159 160 161 |
Underscores in the middle of identifiers (ex: fossil_printf())
no longer need to be escaped.
* The markdown-to-html translator can prevent unsafe HTML
(for example: <script>) on user-contributed pages like forum and
tickets and wiki. The admin can adjust this behavior using
the [/help?cmd=safe-html|safe-html setting] on the Admin/Wiki page.
The default is to disallow unsafe HTML everywhere.
| | | 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 |
Underscores in the middle of identifiers (ex: fossil_printf())
no longer need to be escaped.
* The markdown-to-html translator can prevent unsafe HTML
(for example: <script>) on user-contributed pages like forum and
tickets and wiki. The admin can adjust this behavior using
the [/help?cmd=safe-html|safe-html setting] on the Admin/Wiki page.
The default is to disallow unsafe HTML everywhere.
[https://fossil-scm.org/forum/forumpost/3714e6568f|Example].
* Added the "collapse" and "expand" capability for long forum posts.
[https://fossil-scm.org/forum/forumpost/9297029862|Example]
* The "[/help?cmd=remote-url|fossil remote]" command now has options for
specifying multiple persistent remotes with symbolic names. Currently
only one remote can be used at a time, but that might change in the
future.
* Add the "Remember me?" checkbox on the login page. Use a session
|
| ︙ | ︙ | |||
402 403 404 405 406 407 408 |
* Automatically disapprove pending moderation requests for a user when
that user is deleted. This helps in dealing with spam-bots.
* Improvements to the "Capability Summary" section in the
[/help?cmd=/secaudit0|Security Audit] web-page.
* Use new "ci-lock" and "ci-lock-failed" pragmas in the
[./sync.wiki|sync protocol] to try to prevent accident forks
caused by concurrent commits when operating in auto-sync mode.
| | | 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 |
* Automatically disapprove pending moderation requests for a user when
that user is deleted. This helps in dealing with spam-bots.
* Improvements to the "Capability Summary" section in the
[/help?cmd=/secaudit0|Security Audit] web-page.
* Use new "ci-lock" and "ci-lock-failed" pragmas in the
[./sync.wiki|sync protocol] to try to prevent accident forks
caused by concurrent commits when operating in auto-sync mode.
* Fix a bug ([https://fossil-scm.org/forum/forumpost/c51b9a1169|details])
that can cause repository databases to be overwritten with debugging
output, thus corrupting the repository. This is only a factor when
CGI debugging is enabled, and even then is a rare occurrence, but it is
obviously an important fix.
<a name='v2_8'></a>
<h2>Changes for Version 2.8 (2019-02-20)</h2>
|
| ︙ | ︙ |
Changes to www/checkin_names.wiki.
| ︙ | ︙ | |||
30 31 32 33 34 35 36 | <blockquote> <tt>fossil info</tt> <i>checkin-name</i> </blockquote> You are perhaps reading this page from the following URL: <blockquote> | | | 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | <blockquote> <tt>fossil info</tt> <i>checkin-name</i> </blockquote> You are perhaps reading this page from the following URL: <blockquote> http://fossil-scm.org/home/doc/<b>trunk</b>/www/checkin_names.wiki </blockquote> The URL above is an example of an [./embeddeddoc.wiki | embedded documentation] page in Fossil. The bold term of the pathname is a check-in name that determines which version of the documentation to display. Fossil provides a variety of ways to specify a check-in. This |
| ︙ | ︙ | |||
178 179 180 181 182 183 184 | cut, but you could force Fossil to interpret that string as a date rather than as a tag by passing “date:2020-04-01”. For an example of how timestamps are useful, consider the homepage for the Fossil website itself: <blockquote> | | | | 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 | cut, but you could force Fossil to interpret that string as a date rather than as a tag by passing “date:2020-04-01”. For an example of how timestamps are useful, consider the homepage for the Fossil website itself: <blockquote> http://fossil-scm.org/home/doc/<b>trunk</b>/www/index.wiki </blockquote> The bold component of that URL is a check-in name. To see the stored content of the Fossil website repository as of January 1, 2009, one has merely to change the URL to the following: <blockquote> http://fossil-scm.org/home/doc/<b>2009-01-01</b>/www/index.wiki </blockquote> (Note that this won't roll you back to the <i>skin</i> and other cosmetic configurations as of that date. It also won't change screens like the timeline, which has an independent date selector.) <h2 id="tag-ts">Tag And Timestamp</h2> |
| ︙ | ︙ |
Changes to www/chroot.md.
| ︙ | ︙ | |||
30 31 32 33 34 35 36 |
[configured Fossil with `--static`][bld] to avoid it
Fossil does all of this in order to protect the host OS. You can make it
bypass the jail part of this by passing <tt>--nojail</tt> to <tt>fossil server</tt>,
but you cannot make it skip the dropping of root privileges, on purpose.
| | | 30 31 32 33 34 35 36 37 38 39 40 41 42 |
[configured Fossil with `--static`][bld] to avoid it
Fossil does all of this in order to protect the host OS. You can make it
bypass the jail part of this by passing <tt>--nojail</tt> to <tt>fossil server</tt>,
but you cannot make it skip the dropping of root privileges, on purpose.
[bld]: https://fossil-scm.org/home/doc/trunk/www/build.wiki
[cj]: https://en.wikipedia.org/wiki/Chroot
[fls]: ./loadmgmt.md
[mnl]: https://fossil-scm.org/forum/forumpost/90caff30cb
[srv]: ./server/
[obsd]: ./server/openbsd/fastcgi.md#chroot
|
Changes to www/concepts.wiki.
| ︙ | ︙ | |||
204 205 206 207 208 209 210 | <h2>3.0 Fossil - The Program</h2> Fossil is software. The implementation of Fossil is in the form of a single executable named "fossil" (or "fossil.exe" on Windows). To install Fossil on your system, all you have to do is obtain a copy of this one executable file (either by downloading a | | | 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 | <h2>3.0 Fossil - The Program</h2> Fossil is software. The implementation of Fossil is in the form of a single executable named "fossil" (or "fossil.exe" on Windows). To install Fossil on your system, all you have to do is obtain a copy of this one executable file (either by downloading a <a href="https://fossil-scm.org/home/uv/download.html">pre-compiled version</a> or [./build.wiki | compiling it yourself]) and then putting that file somewhere on your PATH. Fossil is completely self-contained. It is not necessary to install any other software in order to use Fossil. You do <u>not</u> need CVS, gzip, diff, rsync, Python, Perl, Tcl, Java, Apache, PostgreSQL, MySQL, SQLite, patch, or any similar software on your system in order to use |
| ︙ | ︙ |
Changes to www/embeddeddoc.wiki.
| ︙ | ︙ | |||
34 35 36 37 38 39 40 | <blockquote> <i><baseurl></i><big><b>/doc/</b></big><i><version></i><big><b>/</b></big><i><filename></i> </blockquote> The <i><baseurl></i> is the main URL used to access the fossil web server. For example, the <i><baseurl></i> for the fossil project itself is | | | 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | <blockquote> <i><baseurl></i><big><b>/doc/</b></big><i><version></i><big><b>/</b></big><i><filename></i> </blockquote> The <i><baseurl></i> is the main URL used to access the fossil web server. For example, the <i><baseurl></i> for the fossil project itself is [https://fossil-scm.org/home]. If you launch the web server using the "[/help?cmd=ui|fossil ui]" command line, then the <i><baseurl></i> is usually <b>http://localhost:8080/</b>. The <i><version></i> is the [./checkin_names.wiki|name of a check-in] that contains the embedded document. This might be a hash prefix for |
| ︙ | ︙ | |||
199 200 201 202 203 204 205 | This file that you are currently reading is an example of embedded documentation. The name of this file in the fossil source tree is "<b>www/embeddeddoc.wiki</b>". You are perhaps looking at this file using the URL: | | | | | | 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 | This file that you are currently reading is an example of embedded documentation. The name of this file in the fossil source tree is "<b>www/embeddeddoc.wiki</b>". You are perhaps looking at this file using the URL: [http://fossil-scm.org/home/doc/trunk/www/embeddeddoc.wiki]. The first part of this path, the "[http://fossil-scm.org/home]", is the base URL. You might have originally typed: [http://fossil-scm.org/]. The web server at the fossil-scm.org site automatically redirects such links by appending "fossil". The "fossil" file on fossil-scm.org is really a CGI script which runs the fossil web service in CGI mode. The "fossil" CGI script looks like this: <blockquote><pre> #!/usr/bin/fossil repository: /fossil/fossil.fossil </pre></blockquote> |
| ︙ | ︙ | |||
241 242 243 244 245 246 247 | When the symbolic name is a date and time, fossil shows the version of the document that was most recently checked in as of the date and time specified. So, for example, to see what the fossil website looked like at the beginning of 2010, enter: <blockquote> | | | | 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 | When the symbolic name is a date and time, fossil shows the version of the document that was most recently checked in as of the date and time specified. So, for example, to see what the fossil website looked like at the beginning of 2010, enter: <blockquote> <a href="http://fossil-scm.org/home/doc/2010-01-01/www/index.wiki"> http://fossil-scm.org/home/doc/<b>2010-01-01</b>/www/index.wiki </a> </blockquote> The file that encodes this document is stored in the fossil source tree under the name "<b>www/embeddeddoc.wiki</b>" and so that name forms the last part of the URL for this document. |
| ︙ | ︙ |
Changes to www/faq.tcl.
| ︙ | ︙ | |||
126 127 128 129 130 131 132 |
}
faq {
How do I make a clone of the fossil self-hosting repository?
} {
Any of the following commands should work:
<blockquote><pre>
| | | 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 |
}
faq {
How do I make a clone of the fossil self-hosting repository?
} {
Any of the following commands should work:
<blockquote><pre>
fossil [/help/clone|clone] http://fossil-scm.org/ fossil.fossil
fossil [/help/clone|clone] http://www2.fossil-scm.org/ fossil.fossil
fossil [/help/clone|clone] http://www3.fossil-scm.org/site.cgi fossil.fossil
</pre></blockquote>
Once you have the repository cloned, you can open a local check-out
as follows:
<blockquote><pre>
mkdir src; cd src; fossil [/help/open|open] ../fossil.fossil
|
| ︙ | ︙ |
Changes to www/faq.wiki.
| ︙ | ︙ | |||
131 132 133 134 135 136 137 | <blockquote>See the article on [./shunning.wiki | "shunning"] for details.</blockquote></li> <a name="q7"></a> <p><b>(7) How do I make a clone of the fossil self-hosting repository?</b></p> <blockquote>Any of the following commands should work: <blockquote><pre> | | | 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 | <blockquote>See the article on [./shunning.wiki | "shunning"] for details.</blockquote></li> <a name="q7"></a> <p><b>(7) How do I make a clone of the fossil self-hosting repository?</b></p> <blockquote>Any of the following commands should work: <blockquote><pre> fossil [/help/clone|clone] http://fossil-scm.org/ fossil.fossil fossil [/help/clone|clone] http://www2.fossil-scm.org/ fossil.fossil fossil [/help/clone|clone] http://www3.fossil-scm.org/site.cgi fossil.fossil </pre></blockquote> Once you have the repository cloned, you can open a local check-out as follows: <blockquote><pre> mkdir src; cd src; fossil [/help/open|open] ../fossil.fossil |
| ︙ | ︙ |
Changes to www/fossil-v-git.wiki.
| ︙ | ︙ | |||
330 331 332 333 334 335 336 | Fossil's user-visible functionality. Fossil isn't entirely C and SQL code. Its web UI [./javascript.md | uses JavaScript where necessary]. The server-side UI scripting uses a custom minimal [https://en.wikipedia.org/wiki/Tcl|Tcl] dialect called | | | 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 | Fossil's user-visible functionality. Fossil isn't entirely C and SQL code. Its web UI [./javascript.md | uses JavaScript where necessary]. The server-side UI scripting uses a custom minimal [https://en.wikipedia.org/wiki/Tcl|Tcl] dialect called [https://fossil-scm.org/xfer/doc/trunk/www/th1.md|TH1], which is embedded into Fossil itself. Fossil's build system and test suite are largely based on Tcl.⁵ All of this is quite portable. About half of Git's code is POSIX C, and about a third is POSIX shell code. This is largely why the so-called "Git for Windows" distributions (both [https://git-scm.com/download/win|first-party] and [https://gitforwindows.org/|third-party]) are actually an |
| ︙ | ︙ | |||
942 943 944 945 946 947 948 |
still not include them; Fossil tickets do not become GitHub issues,
for example.
<li><p>The <tt>fossil-scm.org</tt> web site is actually hosted in
several parts, so that it is not strictly true that "everything" on
it is in the self-hosting Fossil project repo. The web forum is
hosted as [https://fossil-scm.org/forum/|a separate Fossil repo]
| | | 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 |
still not include them; Fossil tickets do not become GitHub issues,
for example.
<li><p>The <tt>fossil-scm.org</tt> web site is actually hosted in
several parts, so that it is not strictly true that "everything" on
it is in the self-hosting Fossil project repo. The web forum is
hosted as [https://fossil-scm.org/forum/|a separate Fossil repo]
from the [https://fossil-scm.org/home/|main Fossil self-hosting
repo] for administration reasons, and the Download page content
isn't normally synchronized with a "<tt>fossil clone</tt>" command unless
you add the "-u" option. (See "[./aboutdownload.wiki|How the
Download Page Works]" for details.)
Chat history is deliberately not synced as
chat messages are intended to be ephemeral.
There may also be some purely
|
| ︙ | ︙ |
Changes to www/globs.md.
| ︙ | ︙ | |||
576 577 578 579 580 581 582 | The implementation of the Fossil-specific glob pattern handling is here: :File |:Description -------------------------------------------------------------------------------- [`src/glob.c`][] | pattern list loading, parsing, and generic matching code [`src/file.c`][] | application of glob patterns to file names | | | | 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 | The implementation of the Fossil-specific glob pattern handling is here: :File |:Description -------------------------------------------------------------------------------- [`src/glob.c`][] | pattern list loading, parsing, and generic matching code [`src/file.c`][] | application of glob patterns to file names [`src/glob.c`]: https://fossil-scm.org/home/file/src/glob.c [`src/file.c`]: https://fossil-scm.org/home/file/src/file.c See the [Adding Features to Fossil][aff] document for broader details about finding and working with such code. The actual pattern matching leverages the `GLOB` operator in SQLite, so you may find [its documentation][gdoc], [source code][gsrc] and [test harness][gtst] helpful. |
| ︙ | ︙ |
Changes to www/hints.wiki.
| ︙ | ︙ | |||
29 30 31 32 33 34 35 |
6. You can manually add a "c=CHECKIN" query parameter to the timeline
URL to get a snapshot of what was going on about the time of some
check-in. The "CHECKIN" can be
[./checkin_names.wiki | any valid check-in or version name], including
tags, branch names, and dates. For example, to see what was going
on in the Fossil repository on 2008-01-01, visit
| | | | | 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
6. You can manually add a "c=CHECKIN" query parameter to the timeline
URL to get a snapshot of what was going on about the time of some
check-in. The "CHECKIN" can be
[./checkin_names.wiki | any valid check-in or version name], including
tags, branch names, and dates. For example, to see what was going
on in the Fossil repository on 2008-01-01, visit
[http://fossil-scm.org/home/timeline?c=2008-01-01].
7. Further to the previous two hints, there are lots of query parameters
that you can add to timeline pages. The available query parameters
are tersely documented [/help?cmd=/timeline | here].
8. You can run "[/help?cmd=test-diff | fossil test-diff --tk $file1 $file2]"
to get a pop-up window with side-by-side diffs of two files, even if
neither of the two files is part of any Fossil repository. Note that
this command is "test-diff", not "diff".
9. On web pages showing the content of a file (for example
[http://fossil-scm.org/home/artifact/c7dd1de9f]) you can manually
add a query parameter of the form "ln=FROM,TO" to the URL that
will cause the range of lines indicated to be highlighted. This
is useful in pointing out a few lines of code using a hyperlink
in an email or text message. Example:
[http://fossil-scm.org/home/artifact/c7dd1de9f?ln=28,30].
Adding the "ln" query parameter without any argument simply turns
on line numbers. This feature only works right with files with
a mimetype of text/plain, of course.
10. When editing documentation to be checked in as managed files, you can
preview what the documentation will look like by using the special
"ckout" branch name in the "doc" URL while running "fossil ui".
|
| ︙ | ︙ |
Changes to www/javascript.md.
| ︙ | ︙ | |||
314 315 316 317 318 319 320 | tags that replace the graph with a column of checkboxes that control what a series of form submit buttons do when clicked, replicating the current JavaScript-based features of the graph using client-server round-trips. For example, you could click two of those checkboxes and then a button labeled “Diff Selected” to replicate the current “click two nodes to diff them” feature. | | | 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 | tags that replace the graph with a column of checkboxes that control what a series of form submit buttons do when clicked, replicating the current JavaScript-based features of the graph using client-server round-trips. For example, you could click two of those checkboxes and then a button labeled “Diff Selected” to replicate the current “click two nodes to diff them” feature. [wt]: https://fossil-scm.org/home/timeline ### <a id="wedit"></a>The New Wiki Editor The [new wiki editor][fwt] added in Fossil 2.12 has many new features, a few of which are impossible to get without use of JavaScript. |
| ︙ | ︙ | |||
444 445 446 447 448 449 450 | visible, then copying the resulting URL to share your selection with others. _Workaround:_ These interactive features would be difficult and expensive (in terms of network I/O) to implement without JavaScript. A far simpler alternative is to manually edit the URL, per above. | | | 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 | visible, then copying the resulting URL to share your selection with others. _Workaround:_ These interactive features would be difficult and expensive (in terms of network I/O) to implement without JavaScript. A far simpler alternative is to manually edit the URL, per above. [mainc]: https://fossil-scm.org/home/artifact?ln&name=87d67e745 ### <a id="sxsdiff"></a>Side-by-Side Diff Mode The default “diff” view is a side-by-side mode. If either of the boxes of output — the “from” and “to” versions of the repo contents for that check-in — requires a horizontal scroll bar given the box content, font |
| ︙ | ︙ | |||
481 482 483 484 485 486 487 | on folders so they fold and unfold without needing to reload the entire page. _Graceful Fallback:_ When JavaScript is disabled, clicks on folders reload the page showing the folder contents instead. You then have to use the browser’s Back button to return to the higher folder level. | | | 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 | on folders so they fold and unfold without needing to reload the entire page. _Graceful Fallback:_ When JavaScript is disabled, clicks on folders reload the page showing the folder contents instead. You then have to use the browser’s Back button to return to the higher folder level. [tv]: https://fossil-scm.org/home/dir?type=tree ### <a id="hash"></a>Version Hashes In several places where the Fossil web UI shows a check-in hash or similar, hovering over that check-in shows a tooltip with details about the type of artifact the hash refers to and allows you to click to copy |
| ︙ | ︙ | |||
604 605 606 607 608 609 610 | 1) Features the developers themselves want to have and/or work on. 2) Features end users request which catch the interest of one or more developers, provided the developer(s) in question are in a position to expend the effort. 3) Features end users and co-contributors can convince a developer into | | | 604 605 606 607 608 609 610 611 612 613 614 615 616 617 | 1) Features the developers themselves want to have and/or work on. 2) Features end users request which catch the interest of one or more developers, provided the developer(s) in question are in a position to expend the effort. 3) Features end users and co-contributors can convince a developer into coding even when they really don't want to. 𘘉 In all of this, Fossil's project lead understandably has the final say-so in whether any given feature indeed gets merged into the mainline trunk. Development of any given feature, no matter how much effort was involved, does not guarantee its eventual inclusion into the public releases. |
Changes to www/makefile.wiki.
1 2 3 4 5 6 7 | <title>The Fossil Build Process</title> <h1>1.0 Introduction</h1> The build process for Fossil is tricky in that the source code needs to be processed by three different preprocessor programs before it is compiled. Most users will download a | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <title>The Fossil Build Process</title> <h1>1.0 Introduction</h1> The build process for Fossil is tricky in that the source code needs to be processed by three different preprocessor programs before it is compiled. Most users will download a [https://fossil-scm.org/home/uv/download.html | precompiled binary] so this is of no consequence to them, and even those who want to compile the code themselves can use one of the [./build.wiki | existing makefiles]. So must people do not need to be concerned with the build complexities of Fossil. But hard-core developers who desire a deep understanding of how Fossil is put together can benefit from reviewing this article. |
| ︙ | ︙ |
Changes to www/mkindex.tcl.
| ︙ | ︙ | |||
153 154 155 156 157 158 159 | <li> <a href='$ROOT/help'>Built-in help for commands and webpages</a> <li> <a href='history.md'>Purpose and History of Fossil</a> <li> <a href='build.wiki'>Compiling and installing Fossil</a> <li> <a href='../COPYRIGHT-BSD2.txt'>License</a> <li> <a href='userlinks.wiki'>Miscellaneous Docs for Fossil Users</a> <li> <a href='hacker-howto.wiki'>Fossil Developer's Guide</a> <li> <a href='$ROOT/wiki?name=To+Do+List'>To Do List (Wiki)</a> | | | 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 |
<li> <a href='$ROOT/help'>Built-in help for commands and webpages</a>
<li> <a href='history.md'>Purpose and History of Fossil</a>
<li> <a href='build.wiki'>Compiling and installing Fossil</a>
<li> <a href='../COPYRIGHT-BSD2.txt'>License</a>
<li> <a href='userlinks.wiki'>Miscellaneous Docs for Fossil Users</a>
<li> <a href='hacker-howto.wiki'>Fossil Developer's Guide</a>
<li> <a href='$ROOT/wiki?name=To+Do+List'>To Do List (Wiki)</a>
<li> <a href='http://fossil-scm.org/schimpf-book/home'>Jim Schimpf's
book</a>
</ul>
<a name="pindex"></a>
<h2>Permuted Index:</h2>
<ul>}
foreach entry $permindex {
foreach {title file bold} $entry break
|
| ︙ | ︙ |
Changes to www/permutedindex.html.
| ︙ | ︙ | |||
12 13 14 15 16 17 18 | <li> <a href='$ROOT/help'>Built-in help for commands and webpages</a> <li> <a href='history.md'>Purpose and History of Fossil</a> <li> <a href='build.wiki'>Compiling and installing Fossil</a> <li> <a href='../COPYRIGHT-BSD2.txt'>License</a> <li> <a href='userlinks.wiki'>Miscellaneous Docs for Fossil Users</a> <li> <a href='hacker-howto.wiki'>Fossil Developer's Guide</a> <li> <a href='$ROOT/wiki?name=To+Do+List'>To Do List (Wiki)</a> | | | 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <li> <a href='$ROOT/help'>Built-in help for commands and webpages</a> <li> <a href='history.md'>Purpose and History of Fossil</a> <li> <a href='build.wiki'>Compiling and installing Fossil</a> <li> <a href='../COPYRIGHT-BSD2.txt'>License</a> <li> <a href='userlinks.wiki'>Miscellaneous Docs for Fossil Users</a> <li> <a href='hacker-howto.wiki'>Fossil Developer's Guide</a> <li> <a href='$ROOT/wiki?name=To+Do+List'>To Do List (Wiki)</a> <li> <a href='http://fossil-scm.org/schimpf-book/home'>Jim Schimpf's book</a> </ul> <a name="pindex"></a> <h2>Permuted Index:</h2> <ul> <li><a href="fiveminutes.wiki">5 Minutes as a Single User — Up and Running in</a></li> <li><a href="fossil-from-msvc.wiki">2010 IDE — Integrating Fossil in the Microsoft Express</a></li> |
| ︙ | ︙ |
Changes to www/qandc.wiki.
| ︙ | ︙ | |||
47 48 49 50 51 52 53 |
Fossil is an all-in-one turnkey solution. </li>
</ol>
</blockquote>
<b>Love the concept here. Anyone using this for real work yet?</b>
<blockquote>
| | | | 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
Fossil is an all-in-one turnkey solution. </li>
</ol>
</blockquote>
<b>Love the concept here. Anyone using this for real work yet?</b>
<blockquote>
Fossil is <a href="http://fossil-scm.org/">self-hosting</a>.
In fact, this page was probably delivered
to your web-browser via a working fossil instance. The same virtual
machine that hosts http://fossil-scm.org/
(a <a href="http://www.linode.com/">Linode 720</a>)
also hosts 24 other fossil repositories for various small projects.
The documentation files for
<a href="http://www.sqlite.org/">SQLite</a> are hosted in a
fossil repository <a href="http://www.sqlite.org/docsrc/">here</a>,
for example.
Other projects are also adopting fossil. But fossil does not yet have
|
| ︙ | ︙ |
Changes to www/quickstart.wiki.
1 2 3 4 5 6 7 8 9 10 | <title>Fossil Quick Start Guide</title> <h1 align="center">Fossil Quick Start</h1> <p>This is a guide to help you get started using the Fossil [https://en.wikipedia.org/wiki/Distributed_version_control|Distributed Version Control System] quickly and painlessly.</p> <h2 id="install">Installing</h2> <p>Fossil is a single self-contained C program. You need to either download a | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <title>Fossil Quick Start Guide</title> <h1 align="center">Fossil Quick Start</h1> <p>This is a guide to help you get started using the Fossil [https://en.wikipedia.org/wiki/Distributed_version_control|Distributed Version Control System] quickly and painlessly.</p> <h2 id="install">Installing</h2> <p>Fossil is a single self-contained C program. You need to either download a [https://fossil-scm.org/home/uv/download.html|precompiled binary] or <a href="build.wiki">compile it yourself</a> from sources. Install Fossil by putting the fossil binary someplace on your $PATH.</p> You can test that Fossil is present and working like this: <blockquote> |
| ︙ | ︙ | |||
73 74 75 76 77 78 79 | <p>The <i>URL</i> specifies the fossil repository you want to clone. The <i>repository-filename</i> is the new local filename into which the cloned repository will be written. For example, to clone the source code of Fossil itself: <blockquote> | | | 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
<p>The <i>URL</i> specifies the fossil repository
you want to clone. The <i>repository-filename</i> is the new local
filename into which the cloned repository will be written. For
example, to clone the source code of Fossil itself:
<blockquote>
<b>fossil clone https://fossil-scm.org/ myclone.fossil</b>
</blockquote>
If your logged-in username is 'exampleuser', you should see output something like this:
<blockquote>
<b><tt>
Round-trips: 8 Artifacts sent: 0 received: 39421<br>
|
| ︙ | ︙ |
Changes to www/selfhost.wiki.
1 2 3 4 5 | <title>Fossil Self-Hosting Repositories</title> Fossil has self-hosted since 2007-07-21. As of 2017-07-25 there are three publicly accessible repositories for the Fossil source code: | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 | <title>Fossil Self-Hosting Repositories</title> Fossil has self-hosted since 2007-07-21. As of 2017-07-25 there are three publicly accessible repositories for the Fossil source code: 1. [https://fossil-scm.org/] 2. [https://www2.fossil-scm.org/] 3. [https://www3.fossil-scm.org/site.cgi] The canonical repository is (1). Repositories (2) and (3) automatically stay in synchronization with (1) via a <a href="http://en.wikipedia.org/wiki/Cron">cron job</a> that invokes "fossil sync" at regular intervals. |
| ︙ | ︙ |
Changes to www/ssl.wiki.
| ︙ | ︙ | |||
123 124 125 126 127 128 129 | If you are cloning from or syncing to Fossil servers that use a certificate signed by a well-known CA or one of its delegates, Fossil still has to know which CA roots to trust. When this fails, you get an error message that looks like this in Fossil 2.11 and newer: <pre> | | | 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 |
If you are cloning from or syncing to Fossil servers that use a
certificate signed by a well-known CA or one of its delegates, Fossil
still has to know which CA roots to trust. When this fails, you get an
error message that looks like this in Fossil 2.11 and newer:
<pre>
Unable to verify SSL cert from fossil-scm.org
subject: CN = sqlite.org
issuer: C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
sha256: bf26092dd97df6e4f7bf1926072e7e8d200129e1ffb8ef5276c1e5dd9bc95d52
accept this cert and continue (y/N)?
</pre>
In older versions, the message was much longer and began with this line:
|
| ︙ | ︙ |
Changes to www/unvers.wiki.
1 2 3 4 5 6 7 8 9 10 11 12 13 | <title>Unversioned Content</title> <h1 align="center">Unversioned Content</h1> "Unversioned content" or "unversioned files" are files stored in a Fossil repository without history. Only the newest version of each unversioned file is retained. Though history is omitted, unversioned content is synced between repositories. In the event of a conflict during a sync, the most recent version of each unversioned file is retained and older versions are discarded. Unversioned files are useful for storing ephemeral content such as builds or frequently changing web pages. | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <title>Unversioned Content</title> <h1 align="center">Unversioned Content</h1> "Unversioned content" or "unversioned files" are files stored in a Fossil repository without history. Only the newest version of each unversioned file is retained. Though history is omitted, unversioned content is synced between repositories. In the event of a conflict during a sync, the most recent version of each unversioned file is retained and older versions are discarded. Unversioned files are useful for storing ephemeral content such as builds or frequently changing web pages. The [https://fossil-scm.org/home/uv/download.html|download] page of the self-hosting Fossil repository is stored as unversioned content, for example. <h2>Accessing Unversioned Files</h2> Unversioned files are <u>not</u> a part of a check-out. Unversioned files are intended to be accessible as web pages using |
| ︙ | ︙ |