Diff
Not logged in

Differences From:

File www/fileformat.html part of check-in [01e7596a98] - File format document change: UUIDs use lowercase not uppercase hex. by drh on 2007-07-24 18:15:40. [view]

To:

File art/concept1.dia part of check-in [9b30224db7] - Merging formatting changes to timeline and concepts documentation by aku on 2007-08-25 04:02:27. Also file art/concept2.dia part of check-in [9b30224db7] - Merging formatting changes to timeline and concepts documentation by aku on 2007-08-25 04:02:27. Also file src/main.c part of check-in [9b30224db7] - Merging formatting changes to timeline and concepts documentation by aku on 2007-08-25 04:02:27. Also file src/setup.c part of check-in [9b30224db7] - Merging formatting changes to timeline and concepts documentation by aku on 2007-08-25 04:02:27. Also file src/timeline.c part of check-in [9b30224db7] - Merging formatting changes to timeline and concepts documentation by aku on 2007-08-25 04:02:27. Also file www/concept1.gif part of check-in [9b30224db7] - Merging formatting changes to timeline and concepts documentation by aku on 2007-08-25 04:02:27. Also file www/concept2.gif part of check-in [9b30224db7] - Merging formatting changes to timeline and concepts documentation by aku on 2007-08-25 04:02:27. Also file www/concepts.html part of check-in [9b30224db7] - Merging formatting changes to timeline and concepts documentation by aku on 2007-08-25 04:02:27. Also file www/fileformat.html part of check-in [9b30224db7] - Merging formatting changes to timeline and concepts documentation by aku on 2007-08-25 04:02:27. Also file www/index.html part of check-in [9b30224db7] - Merging formatting changes to timeline and concepts documentation by aku on 2007-08-25 04:02:27. Also file www/quickstart.html part of check-in [9b30224db7] - Merging formatting changes to timeline and concepts documentation by aku on 2007-08-25 04:02:27. [view]

@@ -1,179 +1,1 @@
-<html>
-<head>
-<title>Fossil File Format</title>
-</head>
-<body bgcolor="white">
-<h1 align="center">
-Fossil File Formats
-</h1>
-
-<p>
-The global state of a fossil repository is determined by an unordered
-set of files.  Some files used to represent wiki pages, trouble tickets,
-and the special "manifest" file has a specific and well-defined format.
-Other files are just the content of the files.  Files can be text or
-binary.
-</p>
-
-<p>
-Each file in the repository is named by its SHA1 hash.
-Some files have a particular format which qualifies them
-as "manifests".  A manifest assigns filenames to a subset
-of the files in the repository, in order to provide a
-snapshot of the state of the project at a point in time.
-Each manifest file corresponds to a version or baseline
-of the project.
-</p>
-
-<h2>1.0 The Manifest File</h2>
-
-<p>
-Any file in the repository that follows the syntactic rules
-of a manifest is a manifest.  Note that a manifest can
-be both a real manifest and also a content file, though this
-is rare.
-</p>
-
-<p>
-A manifest is a line-oriented text file.  Newline characters
-(ASCII 0x0a) separate lines.  Each line begins with a single
-character "line type".  Zero or more arguments may follow
-the line type.  All arguments are separated from each other
-and from the line-type character by a single space
-character.  There is no surplus white space between arguments
-and no leading or trailing whitespace except for the newline
-character that acts as the line separator.
-</p>
-
-<p>
-All lines of the manifest occur in strict sorted lexigraphical order.
-No line may be duplicated.
-The entire manifest file may be PGP clear-signed, but otherwise it
-may contain no additional text or data beyond what is described here.
-</p>
-
-<p>
-Allowed lines in the manifest are as follows:
-</p>
-
-<blockquote>
-<b>C</b> <i>checkin-comment</i><br>
-<b>D</b> <i>time-and-date-stamp</i><br>
-<b>F</b> <i>filename</i> <i>SHA1-hash</i><br>
-<b>P</b> <i>SHA1-hash</i>+<br>
-<b>R</b> <i>repository-checksum</i><br>
-<b>U</b> <i>user-login</i><br>
-<b>Z</b> <i>manifest-checksum</i>
-</blockquote>
-
-<p>
-A manifest must have exactly one C-line.  The sole argument to
-the C-line is a check-in comment that describes the baseline that
-the manifest defines.  The check-in comment is text.  The following
-escape sequences are applied to the text:
-A space (ASCII 0x20) is represented as "\s" (ASCII 0x5C, 0x73).  A
-newline (ASCII 0x0a) is "\n" (ASCII 0x6C, x6E).  A backslash
-(ASCII 0x5C) is represented as two backslashes "\\".  Apart from
-space and newline, no other whitespace characters are allowed in
-the check-in comment.  Nor are any unprintable characters allowed
-in the comment.
-</p>
-
-<p>
-A manifest must have exactly one D-line.  The sole argument to
-the D-line is a date-time stamp in the ISO8601 format.  The
-date and time should be in coordinated universal time (UTC).
-The format is:
-</p>
-
-<blockquote>
-<i>YYYY</i><b>-</b><i>MM</i><b>-</b><i>DD</i><b>T</b><i>HH</i><b>:</b><i>MM</i><b>:</b><i>SS</i>
-</blockquote>
-
-<p>
-A manifest has zero or more F-lines.  Each F-line defines a file
-(other than the manifest itself) which is part of the baseline that
-the manifest defines.  There are two arguments.  The first argment
-is the pathname of the file in the baseline relative to the root
-of the project file hierarchy.  No ".." or "." directories are allowed
-within the filename.  Space characters are escaped as in C-line
-comment text.  Backslash characters and newlines are not allowed
-within filenames.  The directory separator character is a forward
-slash (ASCII 0x2F).  The second argument to the F-line is the
-full 40-character hexadecimal SHA1 hash of the file content.
-Upper-case letters ABCDEF are used for the higher digits of the
-hexadecimal.
-</p>
-
-<p>
-A manifest has zero or one P-lines.  Most manifests have one P-line.
-The P-line has a varying number of arguments that
-defines other manifests from which the current manifest
-is derived.  Each argument is an 40-character lowercase
-hexadecimal SHA1 of the predecessor manifest.  All arguments
-to the P-line must be unique to that line.
-The first predecessor is the manifests direct ancestor.
-Other arguments define manifests with which the first was
-merged to yield the current manifest.  Most manifests have
-a P-line with a single argument.  The first manifest in the
-project has no ancestors and thus has no P-line.
-</p>
-
-<p>
-A manifest may optionally have a single R-line.  The R-line has
-a single argument which is the MD5 checksum of all files in
-the baseline except the manifest itself.  The checksum is expressed
-as 32-characters of lowercase hexadecimal.   The checksum is
-computed as follows:  For each file in the baseline (except for
-the manifest itself) in strict sorted lexigraphical order,
-take the pathname of the file relative to the root of the
-repository, append a single space (ASCII 0x20), the
-size of the file in ASCII decimal, a single newline
-character (ASCII 0x0A), and the complete text of the file.
-Compute the MD5 checksum of the the result.
-</p>
-
-<p>
-Each manifest has a single U-line.  The argument to the U-line is
-the login of the user who created the manifest.  The login name
-is encoded using the same character escapes as is used for the
-check-in comment argument to the C-line.
-</p>
-
-<p>
-A manifest has an option Z-line as its last line.  The argument
-to the Z-line is a 32-character lowercase hexadecimal MD5 hash
-of all prior lines of the manifest up to and including the newline
-character that immediately preceeds the "Z".  The Z-line is just
-a sanity check to prove that the manifest is well-formed and
-consistent.
-</p>
-
-<h2>2.0 Trouble Tickets</h2>
-
-<p>
-Each trouble ticket is a file in the repository and appears in
-a manifest for every baseline in which the ticket exists.
-Trouble tickets occur in a specific subdirectory of the file
-heirarchy.  The name of the subdirectory that contains tickets
-is part of the local state of each repository.  The filename
-of each trouble ticket has a ".tkt" suffix.  The trouble ticket
-has a particular file format defined below.
-</p>
-
-<i>To be continued...</i>
-
-<h2>3.0 Wiki Pages</h2>
-
-<p>
-Each wiki is a file in the repository and appears in
-a manifest for every baseline in which that wiki page exists.
-Wiki pages occur in a specific subdirectory of the file
-heirarchy.  The name of the subdirectory that contains wiki pages
-is part of the local state of each repository.  The filename
-of each wiki page has a ".wiki" suffix.  The base name of
-the file is the name of the wiki page.  The wiki pages
-have a particular file format defined below.
-</p>
-
-<i>To be continued...</i>
+