Artifact 3e2ac76c49327ffea2eeb3f790f3a1b50452b393:
File
www/fileformat.wiki
part of check-in
[2bde9f9b3d]
- Add "ci" as an alias for "commit". Make provisions for a future "fossil mv"
command.
by
drh on
2008-10-21 06:10:33.
0000: 3c 68 31 20 61 6c 69 67 6e 3d 22 63 65 6e 74 65 <h1 align="cente
0010: 72 22 3e 0a 46 6f 73 73 69 6c 20 46 69 6c 65 20 r">.Fossil File
0020: 46 6f 72 6d 61 74 73 0a 3c 2f 68 31 3e 0a 0a 3c Formats.</h1>..<
0030: 70 3e 54 68 65 20 73 74 61 74 65 20 6f 66 20 61 p>The state of a
0040: 20 66 6f 73 73 69 6c 20 72 65 70 6f 73 69 74 6f fossil reposito
0050: 72 79 20 69 73 20 6b 65 70 74 20 73 69 6d 70 6c ry is kept simpl
0060: 65 20 73 6f 20 74 68 61 74 20 69 74 20 63 61 6e e so that it can
0070: 0a 65 6e 64 75 72 65 20 69 6e 20 75 73 65 66 75 .endure in usefu
0080: 6c 20 66 6f 72 6d 20 66 6f 72 20 64 65 63 61 64 l form for decad
0090: 65 73 20 6f 72 20 63 65 6e 74 75 72 69 65 73 2e es or centuries.
00a0: 20 0a 41 20 66 6f 73 73 69 6c 20 72 65 70 6f 73 .A fossil repos
00b0: 69 74 6f 72 79 20 69 73 20 69 6e 74 65 6e 64 65 itory is intende
00c0: 64 20 74 6f 20 62 65 20 72 65 61 64 61 62 6c 65 d to be readable
00d0: 2c 0a 73 65 61 72 63 68 61 62 6c 65 2c 20 61 6e ,.searchable, an
00e0: 64 20 65 78 74 65 6e 73 69 62 6c 65 20 62 79 20 d extensible by
00f0: 70 65 6f 70 6c 65 20 6e 6f 74 20 79 65 74 20 62 people not yet b
0100: 6f 72 6e 2e 3c 2f 70 3e 0a 0a 3c 70 3e 0a 54 68 orn.</p>..<p>.Th
0110: 65 20 67 6c 6f 62 61 6c 20 73 74 61 74 65 20 6f e global state o
0120: 66 20 61 20 66 6f 73 73 69 6c 20 72 65 70 6f 73 f a fossil repos
0130: 69 74 6f 72 79 20 69 73 20 64 65 74 65 72 6d 69 itory is determi
0140: 6e 65 64 20 62 79 20 61 6e 20 75 6e 6f 72 64 65 ned by an unorde
0150: 72 65 64 0a 73 65 74 20 6f 66 20 3c 69 3e 61 72 red.set of <i>ar
0160: 74 69 66 61 63 74 73 3c 2f 69 3e 2e 0a 41 6e 20 tifacts</i>..An
0170: 61 72 74 69 66 61 63 74 20 6d 69 67 68 74 20 62 artifact might b
0180: 65 20 61 20 73 6f 75 72 63 65 20 63 6f 64 65 20 e a source code
0190: 66 69 6c 65 2c 20 74 68 65 20 74 65 78 74 20 6f file, the text o
01a0: 66 20 61 20 77 69 6b 69 20 70 61 67 65 2c 0a 70 f a wiki page,.p
01b0: 61 72 74 20 6f 66 20 61 20 74 72 6f 75 62 6c 65 art of a trouble
01c0: 20 74 69 63 6b 65 74 2c 20 6f 72 20 6f 6e 65 20 ticket, or one
01d0: 6f 66 20 73 65 76 65 72 61 6c 20 73 70 65 63 69 of several speci
01e0: 61 6c 20 63 6f 6e 74 72 6f 6c 20 61 72 74 69 66 al control artif
01f0: 61 63 74 73 0a 75 73 65 64 20 74 6f 20 73 68 6f acts.used to sho
0200: 77 20 74 68 65 20 72 65 6c 61 74 69 6f 6e 73 68 w the relationsh
0210: 69 70 73 20 62 65 74 77 65 65 6e 20 6f 74 68 65 ips between othe
0220: 72 20 61 72 74 69 66 61 63 74 73 20 77 69 74 68 r artifacts with
0230: 69 6e 20 74 68 65 0a 70 72 6f 6a 65 63 74 2e 20 in the.project.
0240: 20 45 61 63 68 20 61 72 74 69 66 61 63 74 20 69 Each artifact i
0250: 73 20 6e 6f 72 6d 61 6c 6c 79 20 72 65 70 72 65 s normally repre
0260: 73 65 6e 74 65 64 20 6f 6e 20 64 69 73 6b 20 61 sented on disk a
0270: 73 20 61 20 73 65 70 61 72 61 74 65 0a 66 69 6c s a separate.fil
0280: 65 2e 20 20 41 72 74 69 66 61 63 74 73 20 63 61 e. Artifacts ca
0290: 6e 20 62 65 20 74 65 78 74 20 6f 72 20 62 69 6e n be text or bin
02a0: 61 72 79 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 0a 45 ary..</p>..<p>.E
02b0: 61 63 68 20 61 72 74 69 66 61 63 74 20 69 6e 20 ach artifact in
02c0: 74 68 65 20 72 65 70 6f 73 69 74 6f 72 79 20 69 the repository i
02d0: 73 20 6e 61 6d 65 64 20 62 79 20 69 74 73 20 53 s named by its S
02e0: 48 41 31 20 68 61 73 68 2e 0a 4e 6f 20 70 72 65 HA1 hash..No pre
02f0: 66 69 78 65 73 20 6f 72 20 6d 65 74 61 20 69 6e fixes or meta in
0300: 66 6f 72 6d 61 74 69 6f 6e 20 69 73 20 61 64 64 formation is add
0310: 65 64 20 74 6f 20 61 20 61 72 74 69 66 61 63 74 ed to a artifact
0320: 20 62 65 66 6f 72 65 0a 69 74 73 20 68 61 73 68 before.its hash
0330: 20 69 73 20 63 6f 6d 70 75 74 65 64 2e 20 20 54 is computed. T
0340: 68 65 20 6e 61 6d 65 20 6f 66 20 61 20 61 72 74 he name of a art
0350: 69 66 61 63 74 20 69 6e 20 74 68 65 20 72 65 70 ifact in the rep
0360: 6f 73 69 74 6f 72 79 0a 69 73 20 65 78 61 63 74 ository.is exact
0370: 6c 79 20 74 68 65 20 73 61 6d 65 20 53 48 41 31 ly the same SHA1
0380: 20 68 61 73 68 20 74 68 61 74 20 69 73 20 63 6f hash that is co
0390: 6d 70 75 74 65 64 20 62 79 20 73 68 61 31 73 75 mputed by sha1su
03a0: 6d 20 0a 6f 6e 20 74 68 65 20 66 69 6c 65 20 61 m .on the file a
03b0: 73 20 69 74 20 65 78 69 73 74 73 20 69 6e 20 79 s it exists in y
03c0: 6f 75 72 20 73 6f 75 72 63 65 20 74 72 65 65 2e our source tree.
03d0: 3c 2f 70 3e 0a 0a 3c 70 3e 0a 53 6f 6d 65 20 61 </p>..<p>.Some a
03e0: 72 74 69 66 61 63 74 73 20 68 61 76 65 20 61 20 rtifacts have a
03f0: 70 61 72 74 69 63 75 6c 61 72 20 66 6f 72 6d 61 particular forma
0400: 74 20 77 68 69 63 68 20 67 69 76 65 73 20 74 68 t which gives th
0410: 65 6d 20 73 70 65 63 69 61 6c 0a 6d 65 61 6e 69 em special.meani
0420: 6e 67 20 74 6f 20 66 6f 73 73 69 6c 2e 20 20 46 ng to fossil. F
0430: 6f 73 73 69 6c 20 72 65 63 6f 67 6e 69 7a 65 73 ossil recognizes
0440: 3a 3c 2f 70 3e 0a 0a 3c 75 6c 3e 0a 3c 6c 69 3e :</p>..<ul>.<li>
0450: 20 4d 61 6e 69 66 65 73 74 73 20 3c 2f 6c 69 3e Manifests </li>
0460: 0a 3c 6c 69 3e 20 43 6c 75 73 74 65 72 73 20 3c .<li> Clusters <
0470: 2f 6c 69 3e 0a 3c 6c 69 3e 20 43 6f 6e 74 72 6f /li>.<li> Contro
0480: 6c 20 41 72 74 69 66 61 63 74 73 20 3c 2f 6c 69 l Artifacts </li
0490: 3e 0a 3c 6c 69 3e 20 57 69 6b 69 20 50 61 67 65 >.<li> Wiki Page
04a0: 73 20 3c 2f 6c 69 3e 0a 3c 6c 69 3e 20 54 69 63 s </li>.<li> Tic
04b0: 6b 65 74 20 43 68 61 6e 67 65 73 20 3c 2f 6c 69 ket Changes </li
04c0: 3e 0a 3c 2f 75 6c 3e 0a 0a 3c 70 3e 54 68 65 73 >.</ul>..<p>Thes
04d0: 65 20 66 69 76 65 20 61 72 74 69 66 61 63 74 20 e five artifact
04e0: 74 79 70 65 73 20 61 72 65 20 64 65 73 63 72 69 types are descri
04f0: 62 65 64 20 69 6e 20 74 68 65 20 73 65 71 75 65 bed in the seque
0500: 6c 2e 3c 2f 70 3e 0a 0a 3c 70 3e 49 6e 20 74 68 l.</p>..<p>In th
0510: 65 20 63 75 72 72 65 6e 74 20 69 6d 70 6c 65 6d e current implem
0520: 65 6e 74 61 74 69 6f 6e 20 28 61 73 20 6f 66 20 entation (as of
0530: 32 30 30 38 2d 31 30 2d 30 34 29 20 74 68 65 20 2008-10-04) the
0540: 61 72 74 69 66 61 63 74 73 20 74 68 61 74 0a 6d artifacts that.m
0550: 61 6b 65 20 75 70 20 61 20 66 6f 73 73 69 6c 20 ake up a fossil
0560: 72 65 70 6f 73 69 74 6f 72 79 20 61 72 65 20 73 repository are s
0570: 74 6f 72 65 64 20 69 6e 20 69 6e 20 61 73 20 64 tored in in as d
0580: 65 6c 74 61 2d 20 61 6e 64 20 7a 6c 69 62 2d 63 elta- and zlib-c
0590: 6f 6d 70 72 65 73 73 65 64 0a 62 6c 6f 62 73 20 ompressed.blobs
05a0: 69 6e 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 68 in an <a href="h
05b0: 74 74 70 3a 2f 2f 77 77 77 2e 73 71 6c 69 74 65 ttp://www.sqlite
05c0: 2e 6f 72 67 2f 22 3e 53 51 4c 69 74 65 3c 2f 61 .org/">SQLite</a
05d0: 3e 20 64 61 74 61 62 61 73 65 2e 20 20 54 68 69 > database. Thi
05e0: 73 0a 69 73 20 61 6e 20 69 6d 70 6c 65 6d 65 6e s.is an implemen
05f0: 74 61 74 69 6f 6e 20 64 65 74 61 69 6c 20 61 6e tation detail an
0600: 64 20 6d 69 67 68 74 20 63 68 61 6e 67 65 20 69 d might change i
0610: 6e 20 61 20 66 75 74 75 72 65 20 72 65 6c 65 61 n a future relea
0620: 73 65 2e 20 20 46 6f 72 0a 74 68 65 20 70 75 72 se. For.the pur
0630: 70 6f 73 65 20 6f 66 20 74 68 69 73 20 61 72 74 pose of this art
0640: 69 63 6c 65 20 22 66 69 6c 65 20 66 6f 72 6d 61 icle "file forma
0650: 74 22 20 6d 65 61 6e 73 20 74 68 65 20 66 6f 72 t" means the for
0660: 6d 61 74 20 6f 66 20 74 68 65 20 61 72 74 69 66 mat of the artif
0670: 61 63 74 73 2c 0a 6e 6f 74 20 68 6f 77 20 74 68 acts,.not how th
0680: 65 20 61 72 74 69 66 61 63 74 73 20 61 72 65 20 e artifacts are
0690: 73 74 6f 72 65 64 20 6f 6e 20 64 69 73 6b 2e 20 stored on disk.
06a0: 20 49 74 20 69 73 20 74 68 65 20 61 72 74 69 66 It is the artif
06b0: 61 63 74 20 66 6f 72 6d 61 74 20 74 68 61 74 0a act format that.
06c0: 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 62 is intended to b
06d0: 65 20 65 6e 64 75 72 69 6e 67 2e 20 20 54 68 65 e enduring. The
06e0: 20 73 70 65 63 69 66 69 63 73 20 6f 66 20 68 6f specifics of ho
06f0: 77 20 61 72 74 69 66 61 63 74 73 20 61 72 65 20 w artifacts are
0700: 73 74 6f 72 65 64 20 6f 6e 0a 64 69 73 6b 2c 20 stored on.disk,
0710: 74 68 6f 75 67 68 20 73 74 61 62 6c 65 2c 20 69 though stable, i
0720: 73 20 6e 6f 74 20 69 6e 74 65 6e 64 65 64 20 74 s not intended t
0730: 6f 20 68 61 76 65 20 61 73 20 6c 6f 6e 67 20 61 o have as long a
0740: 20 6c 69 66 65 73 70 61 6e 20 61 73 20 74 68 65 lifespan as the
0750: 0a 61 72 74 69 66 61 63 74 20 66 6f 72 6d 61 74 .artifact format
0760: 2e 3c 2f 70 3e 0a 0a 3c 68 32 3e 31 2e 30 20 54 .</p>..<h2>1.0 T
0770: 68 65 20 4d 61 6e 69 66 65 73 74 3c 2f 68 32 3e he Manifest</h2>
0780: 0a 0a 3c 70 3e 41 20 6d 61 6e 69 66 65 73 74 20 ..<p>A manifest
0790: 64 65 66 69 6e 65 73 20 61 20 62 61 73 65 6c 69 defines a baseli
07a0: 6e 65 20 6f 72 20 76 65 72 73 69 6f 6e 20 6f 66 ne or version of
07b0: 20 74 68 65 20 70 72 6f 6a 65 63 74 0a 73 6f 75 the project.sou
07c0: 72 63 65 20 74 72 65 65 2e 20 20 54 68 65 20 6d rce tree. The m
07d0: 61 6e 69 66 65 73 74 20 63 6f 6e 74 61 69 6e 73 anifest contains
07e0: 20 61 20 6c 69 73 74 20 6f 66 20 61 72 74 69 66 a list of artif
07f0: 61 63 74 73 20 66 6f 72 0a 65 61 63 68 20 66 69 acts for.each fi
0800: 6c 65 20 69 6e 20 74 68 65 20 70 72 6f 6a 65 63 le in the projec
0810: 74 20 61 6e 64 20 74 68 65 20 63 6f 72 72 65 73 t and the corres
0820: 70 6f 6e 64 69 6e 67 20 66 69 6c 65 6e 61 6d 65 ponding filename
0830: 73 2c 20 61 73 0a 77 65 6c 6c 20 61 73 20 69 6e s, as.well as in
0840: 66 6f 72 6d 61 74 69 6f 6e 20 73 75 63 68 20 61 formation such a
0850: 73 20 70 61 72 65 6e 74 20 62 61 73 65 6c 69 6e s parent baselin
0860: 65 73 2c 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 es, the name of
0870: 74 68 65 0a 70 72 6f 67 72 61 6d 6d 65 72 20 77 the.programmer w
0880: 68 6f 20 63 72 65 61 74 65 64 20 74 68 65 20 62 ho created the b
0890: 61 73 65 6c 69 6e 65 2c 20 74 68 65 20 64 61 74 aseline, the dat
08a0: 65 20 61 6e 64 20 74 69 6d 65 20 77 68 65 6e 0a e and time when.
08b0: 74 68 65 20 62 61 73 65 6c 69 6e 65 20 77 61 73 the baseline was
08c0: 20 63 72 65 61 74 65 64 2c 20 61 6e 64 20 61 6e created, and an
08d0: 79 20 63 68 65 63 6b 2d 69 6e 20 63 6f 6d 6d 65 y check-in comme
08e0: 6e 74 73 20 61 73 73 6f 63 69 61 74 65 64 0a 77 nts associated.w
08f0: 69 74 68 20 74 68 65 20 62 61 73 65 6c 69 6e 65 ith the baseline
0900: 2e 3c 2f 70 3e 0a 0a 3c 70 3e 0a 41 6e 79 20 61 .</p>..<p>.Any a
0910: 72 74 69 66 61 63 74 20 69 6e 20 74 68 65 20 72 rtifact in the r
0920: 65 70 6f 73 69 74 6f 72 79 20 74 68 61 74 20 66 epository that f
0930: 6f 6c 6c 6f 77 73 20 74 68 65 20 73 79 6e 74 61 ollows the synta
0940: 63 74 69 63 20 72 75 6c 65 73 0a 6f 66 20 61 20 ctic rules.of a
0950: 6d 61 6e 69 66 65 73 74 20 69 73 20 61 20 6d 61 manifest is a ma
0960: 6e 69 66 65 73 74 2e 20 20 4e 6f 74 65 20 74 68 nifest. Note th
0970: 61 74 20 61 20 6d 61 6e 69 66 65 73 74 20 63 61 at a manifest ca
0980: 6e 0a 62 65 20 62 6f 74 68 20 61 20 72 65 61 6c n.be both a real
0990: 20 6d 61 6e 69 66 65 73 74 20 61 6e 64 20 61 6c manifest and al
09a0: 73 6f 20 61 20 63 6f 6e 74 65 6e 74 20 66 69 6c so a content fil
09b0: 65 2c 20 74 68 6f 75 67 68 20 74 68 69 73 0a 69 e, though this.i
09c0: 73 20 72 61 72 65 2e 0a 3c 2f 70 3e 0a 0a 3c 70 s rare..</p>..<p
09d0: 3e 0a 41 20 6d 61 6e 69 66 65 73 74 20 69 73 20 >.A manifest is
09e0: 61 20 74 65 78 74 20 66 69 6c 65 2e 20 20 4e 65 a text file. Ne
09f0: 77 6c 69 6e 65 20 63 68 61 72 61 63 74 65 72 73 wline characters
0a00: 0a 28 41 53 43 49 49 20 30 78 30 61 29 20 73 65 .(ASCII 0x0a) se
0a10: 70 61 72 61 74 65 20 74 68 65 20 66 69 6c 65 20 parate the file
0a20: 69 6e 74 6f 20 22 63 61 72 64 73 22 2e 0a 45 61 into "cards"..Ea
0a30: 63 68 20 63 61 72 64 20 62 65 67 69 6e 73 20 77 ch card begins w
0a40: 69 74 68 20 61 20 73 69 6e 67 6c 65 0a 63 68 61 ith a single.cha
0a50: 72 61 63 74 65 72 20 22 63 61 72 64 20 74 79 70 racter "card typ
0a60: 65 22 2e 20 20 5a 65 72 6f 20 6f 72 20 6d 6f 72 e". Zero or mor
0a70: 65 20 61 72 67 75 6d 65 6e 74 73 20 6d 61 79 20 e arguments may
0a80: 66 6f 6c 6c 6f 77 0a 74 68 65 20 63 61 72 64 20 follow.the card
0a90: 74 79 70 65 2e 20 20 41 6c 6c 20 61 72 67 75 6d type. All argum
0aa0: 65 6e 74 73 20 61 72 65 20 73 65 70 61 72 61 74 ents are separat
0ab0: 65 64 20 66 72 6f 6d 20 65 61 63 68 20 6f 74 68 ed from each oth
0ac0: 65 72 0a 61 6e 64 20 66 72 6f 6d 20 74 68 65 20 er.and from the
0ad0: 63 61 72 64 2d 74 79 70 65 20 63 68 61 72 61 63 card-type charac
0ae0: 74 65 72 20 62 79 20 61 20 73 69 6e 67 6c 65 20 ter by a single
0af0: 73 70 61 63 65 0a 63 68 61 72 61 63 74 65 72 2e space.character.
0b00: 20 20 54 68 65 72 65 20 69 73 20 6e 6f 20 73 75 There is no su
0b10: 72 70 6c 75 73 20 77 68 69 74 65 20 73 70 61 63 rplus white spac
0b20: 65 20 62 65 74 77 65 65 6e 20 61 72 67 75 6d 65 e between argume
0b30: 6e 74 73 0a 61 6e 64 20 6e 6f 20 6c 65 61 64 69 nts.and no leadi
0b40: 6e 67 20 6f 72 20 74 72 61 69 6c 69 6e 67 20 77 ng or trailing w
0b50: 68 69 74 65 73 70 61 63 65 20 65 78 63 65 70 74 hitespace except
0b60: 20 66 6f 72 20 74 68 65 20 6e 65 77 6c 69 6e 65 for the newline
0b70: 20 0a 63 68 61 72 61 63 74 65 72 20 74 68 61 74 .character that
0b80: 20 61 63 74 73 20 61 73 20 74 68 65 20 63 61 72 acts as the car
0b90: 64 20 73 65 70 61 72 61 74 6f 72 2e 0a 3c 2f 70 d separator..</p
0ba0: 3e 0a 0a 3c 70 3e 0a 41 6c 6c 20 63 61 72 64 73 >..<p>.All cards
0bb0: 20 6f 66 20 74 68 65 20 6d 61 6e 69 66 65 73 74 of the manifest
0bc0: 20 6f 63 63 75 72 20 69 6e 20 73 74 72 69 63 74 occur in strict
0bd0: 20 73 6f 72 74 65 64 20 6c 65 78 69 63 6f 67 72 sorted lexicogr
0be0: 61 70 68 69 63 61 6c 20 6f 72 64 65 72 2e 0a 4e aphical order..N
0bf0: 6f 20 63 61 72 64 20 6d 61 79 20 62 65 20 64 75 o card may be du
0c00: 70 6c 69 63 61 74 65 64 2e 0a 54 68 65 20 65 6e plicated..The en
0c10: 74 69 72 65 20 6d 61 6e 69 66 65 73 74 20 6d 61 tire manifest ma
0c20: 79 20 62 65 20 50 47 50 20 63 6c 65 61 72 2d 73 y be PGP clear-s
0c30: 69 67 6e 65 64 2c 20 62 75 74 20 6f 74 68 65 72 igned, but other
0c40: 77 69 73 65 20 69 74 0a 6d 61 79 20 63 6f 6e 74 wise it.may cont
0c50: 61 69 6e 20 6e 6f 20 61 64 64 69 74 69 6f 6e 61 ain no additiona
0c60: 6c 20 74 65 78 74 20 6f 72 20 64 61 74 61 20 62 l text or data b
0c70: 65 79 6f 6e 64 20 77 68 61 74 20 69 73 20 64 65 eyond what is de
0c80: 73 63 72 69 62 65 64 20 68 65 72 65 2e 0a 3c 2f scribed here..</
0c90: 70 3e 0a 0a 3c 70 3e 0a 41 6c 6c 6f 77 65 64 20 p>..<p>.Allowed
0ca0: 63 61 72 64 73 20 69 6e 20 74 68 65 20 6d 61 6e cards in the man
0cb0: 69 66 65 73 74 20 61 72 65 20 61 73 20 66 6f 6c ifest are as fol
0cc0: 6c 6f 77 73 3a 0a 3c 2f 70 3e 0a 0a 3c 62 6c 6f lows:.</p>..<blo
0cd0: 63 6b 71 75 6f 74 65 3e 0a 3c 62 3e 43 3c 2f 62 ckquote>.<b>C</b
0ce0: 3e 20 3c 69 3e 63 68 65 63 6b 69 6e 2d 63 6f 6d > <i>checkin-com
0cf0: 6d 65 6e 74 3c 2f 69 3e 3c 62 72 3e 0a 3c 62 3e ment</i><br>.<b>
0d00: 44 3c 2f 62 3e 20 3c 69 3e 74 69 6d 65 2d 61 6e D</b> <i>time-an
0d10: 64 2d 64 61 74 65 2d 73 74 61 6d 70 3c 2f 69 3e d-date-stamp</i>
0d20: 3c 62 72 3e 0a 3c 62 3e 46 3c 2f 62 3e 20 3c 69 <br>.<b>F</b> <i
0d30: 3e 66 69 6c 65 6e 61 6d 65 3c 2f 69 3e 20 3c 69 >filename</i> <i
0d40: 3e 53 48 41 31 2d 68 61 73 68 3c 2f 69 3e 20 3c >SHA1-hash</i> <
0d50: 69 3e 70 65 72 6d 69 73 73 69 6f 6e 73 3c 2f 69 i>permissions</i
0d60: 3e 20 3c 69 3e 6f 6c 64 2d 6e 61 6d 65 3c 2f 69 > <i>old-name</i
0d70: 3e 3c 62 72 3e 0a 3c 62 3e 50 3c 2f 62 3e 20 3c ><br>.<b>P</b> <
0d80: 69 3e 53 48 41 31 2d 68 61 73 68 3c 2f 69 3e 2b i>SHA1-hash</i>+
0d90: 3c 62 72 3e 0a 3c 62 3e 52 3c 2f 62 3e 20 3c 69 <br>.<b>R</b> <i
0da0: 3e 72 65 70 6f 73 69 74 6f 72 79 2d 63 68 65 63 >repository-chec
0db0: 6b 73 75 6d 3c 2f 69 3e 3c 62 72 3e 0a 3c 62 3e ksum</i><br>.<b>
0dc0: 55 3c 2f 62 3e 20 3c 69 3e 75 73 65 72 2d 6c 6f U</b> <i>user-lo
0dd0: 67 69 6e 3c 2f 69 3e 3c 62 72 3e 0a 3c 62 3e 5a gin</i><br>.<b>Z
0de0: 3c 2f 62 3e 20 3c 69 3e 6d 61 6e 69 66 65 73 74 </b> <i>manifest
0df0: 2d 63 68 65 63 6b 73 75 6d 3c 2f 69 3e 0a 3c 2f -checksum</i>.</
0e00: 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a 0a 3c 70 3e blockquote>..<p>
0e10: 0a 41 20 6d 61 6e 69 66 65 73 74 20 6d 75 73 74 .A manifest must
0e20: 20 68 61 76 65 20 65 78 61 63 74 6c 79 20 6f 6e have exactly on
0e30: 65 20 43 2d 63 61 72 64 2e 20 20 54 68 65 20 73 e C-card. The s
0e40: 6f 6c 65 20 61 72 67 75 6d 65 6e 74 20 74 6f 0a ole argument to.
0e50: 74 68 65 20 43 2d 63 61 72 64 20 69 73 20 61 20 the C-card is a
0e60: 63 68 65 63 6b 2d 69 6e 20 63 6f 6d 6d 65 6e 74 check-in comment
0e70: 20 74 68 61 74 20 64 65 73 63 72 69 62 65 73 20 that describes
0e80: 74 68 65 20 63 68 65 63 6b 2d 69 6e 20 74 68 61 the check-in tha
0e90: 74 0a 74 68 65 20 6d 61 6e 69 66 65 73 74 20 64 t.the manifest d
0ea0: 65 66 69 6e 65 73 2e 20 20 54 68 65 20 63 68 65 efines. The che
0eb0: 63 6b 2d 69 6e 20 63 6f 6d 6d 65 6e 74 20 69 73 ck-in comment is
0ec0: 20 74 65 78 74 2e 20 20 54 68 65 20 66 6f 6c 6c text. The foll
0ed0: 6f 77 69 6e 67 0a 65 73 63 61 70 65 20 73 65 71 owing.escape seq
0ee0: 75 65 6e 63 65 73 20 61 72 65 20 61 70 70 6c 69 uences are appli
0ef0: 65 64 20 74 6f 20 74 68 65 20 74 65 78 74 3a 0a ed to the text:.
0f00: 41 20 73 70 61 63 65 20 28 41 53 43 49 49 20 30 A space (ASCII 0
0f10: 78 32 30 29 20 69 73 20 72 65 70 72 65 73 65 6e x20) is represen
0f20: 74 65 64 20 61 73 20 22 5c 73 22 20 28 41 53 43 ted as "\s" (ASC
0f30: 49 49 20 30 78 35 43 2c 20 30 78 37 33 29 2e 20 II 0x5C, 0x73).
0f40: 20 41 0a 6e 65 77 6c 69 6e 65 20 28 41 53 43 49 A.newline (ASCI
0f50: 49 20 30 78 30 61 29 20 69 73 20 22 5c 6e 22 20 I 0x0a) is "\n"
0f60: 28 41 53 43 49 49 20 30 78 36 43 2c 20 78 36 45 (ASCII 0x6C, x6E
0f70: 29 2e 20 20 41 20 62 61 63 6b 73 6c 61 73 68 20 ). A backslash
0f80: 0a 28 41 53 43 49 49 20 30 78 35 43 29 20 69 73 .(ASCII 0x5C) is
0f90: 20 72 65 70 72 65 73 65 6e 74 65 64 20 61 73 20 represented as
0fa0: 74 77 6f 20 62 61 63 6b 73 6c 61 73 68 65 73 20 two backslashes
0fb0: 22 5c 5c 22 2e 20 20 41 70 61 72 74 20 66 72 6f "\\". Apart fro
0fc0: 6d 0a 73 70 61 63 65 20 61 6e 64 20 6e 65 77 6c m.space and newl
0fd0: 69 6e 65 2c 20 6e 6f 20 6f 74 68 65 72 20 77 68 ine, no other wh
0fe0: 69 74 65 73 70 61 63 65 20 63 68 61 72 61 63 74 itespace charact
0ff0: 65 72 73 20 61 72 65 20 61 6c 6c 6f 77 65 64 20 ers are allowed
1000: 69 6e 0a 74 68 65 20 63 68 65 63 6b 2d 69 6e 20 in.the check-in
1010: 63 6f 6d 6d 65 6e 74 2e 20 20 4e 6f 72 20 61 72 comment. Nor ar
1020: 65 20 61 6e 79 20 75 6e 70 72 69 6e 74 61 62 6c e any unprintabl
1030: 65 20 63 68 61 72 61 63 74 65 72 73 20 61 6c 6c e characters all
1040: 6f 77 65 64 0a 69 6e 20 74 68 65 20 63 6f 6d 6d owed.in the comm
1050: 65 6e 74 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 0a 41 ent..</p>..<p>.A
1060: 20 6d 61 6e 69 66 65 73 74 20 6d 75 73 74 20 68 manifest must h
1070: 61 76 65 20 65 78 61 63 74 6c 79 20 6f 6e 65 20 ave exactly one
1080: 44 2d 63 61 72 64 2e 20 20 54 68 65 20 73 6f 6c D-card. The sol
1090: 65 20 61 72 67 75 6d 65 6e 74 20 74 6f 0a 74 68 e argument to.th
10a0: 65 20 44 2d 63 61 72 64 20 69 73 20 61 20 64 61 e D-card is a da
10b0: 74 65 2d 74 69 6d 65 20 73 74 61 6d 70 20 69 6e te-time stamp in
10c0: 20 74 68 65 20 49 53 4f 38 36 30 31 20 66 6f 72 the ISO8601 for
10d0: 6d 61 74 2e 20 20 54 68 65 0a 64 61 74 65 20 61 mat. The.date a
10e0: 6e 64 20 74 69 6d 65 20 73 68 6f 75 6c 64 20 62 nd time should b
10f0: 65 20 69 6e 20 63 6f 6f 72 64 69 6e 61 74 65 64 e in coordinated
1100: 20 75 6e 69 76 65 72 73 61 6c 20 74 69 6d 65 20 universal time
1110: 28 55 54 43 29 2e 0a 54 68 65 20 66 6f 72 6d 61 (UTC)..The forma
1120: 74 20 69 73 3a 0a 3c 2f 70 3e 0a 0a 3c 62 6c 6f t is:.</p>..<blo
1130: 63 6b 71 75 6f 74 65 3e 0a 3c 69 3e 59 59 59 59 ckquote>.<i>YYYY
1140: 3c 2f 69 3e 3c 62 3e 2d 3c 2f 62 3e 3c 69 3e 4d </i><b>-</b><i>M
1150: 4d 3c 2f 69 3e 3c 62 3e 2d 3c 2f 62 3e 3c 69 3e M</i><b>-</b><i>
1160: 44 44 3c 2f 69 3e 3c 62 3e 54 3c 2f 62 3e 3c 69 DD</i><b>T</b><i
1170: 3e 48 48 3c 2f 69 3e 3c 62 3e 3a 3c 2f 62 3e 3c >HH</i><b>:</b><
1180: 69 3e 4d 4d 3c 2f 69 3e 3c 62 3e 3a 3c 2f 62 3e i>MM</i><b>:</b>
1190: 3c 69 3e 53 53 3c 2f 69 3e 0a 3c 2f 62 6c 6f 63 <i>SS</i>.</bloc
11a0: 6b 71 75 6f 74 65 3e 0a 0a 3c 70 3e 0a 41 20 6d kquote>..<p>.A m
11b0: 61 6e 69 66 65 73 74 20 68 61 73 20 7a 65 72 6f anifest has zero
11c0: 20 6f 72 20 6d 6f 72 65 20 46 2d 63 61 72 64 73 or more F-cards
11d0: 2e 20 20 45 61 63 68 20 46 2d 63 61 72 64 20 64 . Each F-card d
11e0: 65 66 69 6e 65 73 20 61 20 66 69 6c 65 0a 28 6f efines a file.(o
11f0: 74 68 65 72 20 74 68 61 6e 20 74 68 65 20 6d 61 ther than the ma
1200: 6e 69 66 65 73 74 20 69 74 73 65 6c 66 29 20 77 nifest itself) w
1210: 68 69 63 68 20 69 73 20 70 61 72 74 20 6f 66 20 hich is part of
1220: 74 68 65 20 62 61 73 65 6c 69 6e 65 20 74 68 61 the baseline tha
1230: 74 0a 74 68 65 20 6d 61 6e 69 66 65 73 74 20 64 t.the manifest d
1240: 65 66 69 6e 65 73 2e 20 20 54 68 65 72 65 20 61 efines. There a
1250: 72 65 20 74 77 6f 2c 20 74 68 72 65 65 2c 20 6f re two, three, o
1260: 72 20 74 68 72 65 65 20 61 72 67 75 6d 65 6e 74 r three argument
1270: 73 2e 0a 54 68 65 20 66 69 72 73 74 20 61 72 67 s..The first arg
1280: 6d 65 6e 74 0a 69 73 20 74 68 65 20 70 61 74 68 ment.is the path
1290: 6e 61 6d 65 20 6f 66 20 74 68 65 20 66 69 6c 65 name of the file
12a0: 20 69 6e 20 74 68 65 20 62 61 73 65 6c 69 6e 65 in the baseline
12b0: 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 65 relative to the
12c0: 20 72 6f 6f 74 0a 6f 66 20 74 68 65 20 70 72 6f root.of the pro
12d0: 6a 65 63 74 20 66 69 6c 65 20 68 69 65 72 61 72 ject file hierar
12e0: 63 68 79 2e 20 20 4e 6f 20 22 2e 2e 22 20 6f 72 chy. No ".." or
12f0: 20 22 2e 22 20 64 69 72 65 63 74 6f 72 69 65 73 "." directories
1300: 20 61 72 65 20 61 6c 6c 6f 77 65 64 0a 77 69 74 are allowed.wit
1310: 68 69 6e 20 74 68 65 20 66 69 6c 65 6e 61 6d 65 hin the filename
1320: 2e 20 20 53 70 61 63 65 20 63 68 61 72 61 63 74 . Space charact
1330: 65 72 73 20 61 72 65 20 65 73 63 61 70 65 64 20 ers are escaped
1340: 61 73 20 69 6e 20 43 2d 63 61 72 64 0a 63 6f 6d as in C-card.com
1350: 6d 65 6e 74 20 74 65 78 74 2e 20 20 42 61 63 6b ment text. Back
1360: 73 6c 61 73 68 20 63 68 61 72 61 63 74 65 72 73 slash characters
1370: 20 61 6e 64 20 6e 65 77 6c 69 6e 65 73 20 61 72 and newlines ar
1380: 65 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 0a 77 69 e not allowed.wi
1390: 74 68 69 6e 20 66 69 6c 65 6e 61 6d 65 73 2e 20 thin filenames.
13a0: 20 54 68 65 20 64 69 72 65 63 74 6f 72 79 20 73 The directory s
13b0: 65 70 61 72 61 74 6f 72 20 63 68 61 72 61 63 74 eparator charact
13c0: 65 72 20 69 73 20 61 20 66 6f 72 77 61 72 64 0a er is a forward.
13d0: 73 6c 61 73 68 20 28 41 53 43 49 49 20 30 78 32 slash (ASCII 0x2
13e0: 46 29 2e 20 20 54 68 65 20 73 65 63 6f 6e 64 20 F). The second
13f0: 61 72 67 75 6d 65 6e 74 20 74 6f 20 74 68 65 20 argument to the
1400: 46 2d 63 61 72 64 20 69 73 20 74 68 65 0a 66 75 F-card is the.fu
1410: 6c 6c 20 34 30 2d 63 68 61 72 61 63 74 65 72 20 ll 40-character
1420: 6c 6f 77 65 72 2d 63 61 73 65 20 68 65 78 61 64 lower-case hexad
1430: 65 63 69 6d 61 6c 20 53 48 41 31 20 68 61 73 68 ecimal SHA1 hash
1440: 20 6f 66 20 74 68 65 20 63 6f 6e 74 65 6e 74 0a of the content.
1450: 61 72 74 69 66 61 63 74 2e 20 20 54 68 65 20 6f artifact. The o
1460: 70 74 69 6f 6e 61 6c 20 33 72 64 20 61 72 67 75 ptional 3rd argu
1470: 6d 65 6e 74 20 64 65 66 69 6e 65 73 20 61 6e 79 ment defines any
1480: 20 73 70 65 63 69 61 6c 20 61 63 63 65 73 73 20 special access
1490: 0a 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 73 73 .permissions ass
14a0: 6f 63 69 61 74 65 64 20 77 69 74 68 20 74 68 65 ociated with the
14b0: 20 66 69 6c 65 2e 20 20 54 68 65 20 6f 6e 6c 79 file. The only
14c0: 20 73 70 65 63 69 61 6c 20 63 6f 64 65 20 63 75 special code cu
14d0: 72 72 65 6e 74 6c 79 0a 64 65 66 69 6e 65 64 20 rrently.defined
14e0: 69 73 20 22 78 22 20 77 68 69 63 68 20 6d 65 61 is "x" which mea
14f0: 6e 73 20 74 68 61 74 20 74 68 65 20 66 69 6c 65 ns that the file
1500: 20 69 73 20 65 78 65 63 75 74 61 62 6c 65 2e 20 is executable.
1510: 20 41 6c 6c 20 66 69 6c 65 73 20 61 72 65 0a 61 All files are.a
1520: 6c 77 61 79 73 20 72 65 61 64 61 62 6c 65 20 61 lways readable a
1530: 6e 64 20 77 72 69 74 61 62 6c 65 2e 20 20 54 68 nd writable. Th
1540: 69 73 20 63 61 6e 20 62 65 20 65 78 70 72 65 73 is can be expres
1550: 73 65 64 20 62 79 20 22 77 22 20 70 65 72 6d 69 sed by "w" permi
1560: 73 73 69 6f 6e 0a 69 66 20 64 65 73 69 72 65 64 ssion.if desired
1570: 20 62 75 74 20 69 73 20 6f 70 74 69 6f 6e 61 6c but is optional
1580: 2e 0a 54 68 65 20 6f 70 74 69 6f 6e 61 6c 20 34 ..The optional 4
1590: 74 68 20 61 72 67 75 6d 65 6e 74 20 69 73 20 74 th argument is t
15a0: 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 73 he name of the s
15b0: 61 6d 65 20 66 69 6c 65 20 61 73 20 69 74 20 65 ame file as it e
15c0: 78 69 73 74 65 64 20 69 6e 0a 74 68 65 20 70 61 xisted in.the pa
15d0: 72 65 6e 74 20 62 61 73 65 6c 69 6e 65 2e 20 20 rent baseline.
15e0: 49 66 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 If the name of t
15f0: 68 65 20 66 69 6c 65 20 69 73 20 75 6e 63 68 61 he file is uncha
1600: 6e 67 65 64 20 66 72 6f 6d 20 69 74 73 0a 70 61 nged from its.pa
1610: 72 65 6e 74 2c 20 74 68 65 6e 20 74 68 65 20 34 rent, then the 4
1620: 74 68 20 61 72 67 75 6d 65 6e 74 20 69 73 20 6f th argument is o
1630: 6d 69 74 74 65 64 2e 0a 3c 2f 70 3e 0a 0a 3c 70 mitted..</p>..<p
1640: 3e 0a 41 20 6d 61 6e 69 66 65 73 74 20 68 61 73 >.A manifest has
1650: 20 7a 65 72 6f 20 6f 72 20 6d 6f 72 65 20 4e 2d zero or more N-
1660: 63 61 72 64 73 2e 20 20 45 61 63 68 20 4e 20 63 cards. Each N c
1670: 61 72 64 20 72 65 63 6f 72 64 73 20 61 20 6e 61 ard records a na
1680: 6d 65 20 63 68 61 6e 67 65 73 0a 74 6f 20 6f 6e me changes.to on
1690: 65 20 6f 66 20 74 68 65 20 66 69 6c 65 73 20 69 e of the files i
16a0: 6e 20 74 68 65 20 6d 61 6e 69 66 65 73 74 2e 20 n the manifest.
16b0: 20 54 68 65 20 66 69 72 73 74 20 61 72 67 75 6d The first argum
16c0: 65 6e 74 20 74 6f 20 74 68 65 20 4e 20 63 6f 64 ent to the N cod
16d0: 65 20 69 73 0a 74 68 65 20 6e 61 6d 65 20 6f 66 e is.the name of
16e0: 20 74 68 65 20 66 69 6c 65 20 69 6e 20 74 68 65 the file in the
16f0: 20 70 61 72 65 6e 74 20 62 61 73 65 6c 69 6e 65 parent baseline
1700: 2e 20 20 54 68 65 20 73 65 63 6f 6e 64 20 61 72 . The second ar
1710: 67 75 6d 65 6e 74 20 69 73 20 74 68 65 0a 6e 61 gument is the.na
1720: 6d 65 20 6f 66 20 74 68 65 20 66 69 6c 65 20 69 me of the file i
1730: 6e 20 74 68 65 20 62 61 73 65 6c 69 6e 65 20 64 n the baseline d
1740: 65 66 69 6e 65 64 20 62 79 20 74 68 65 20 6d 61 efined by the ma
1750: 6e 69 66 65 73 74 2e 0a 3c 2f 70 3e 0a 0a 3c 70 nifest..</p>..<p
1760: 3e 0a 41 20 6d 61 6e 69 66 65 73 74 20 68 61 73 >.A manifest has
1770: 20 7a 65 72 6f 20 6f 72 20 6f 6e 65 20 50 2d 63 zero or one P-c
1780: 61 72 64 73 2e 20 20 4d 6f 73 74 20 6d 61 6e 69 ards. Most mani
1790: 66 65 73 74 73 20 68 61 76 65 20 6f 6e 65 20 50 fests have one P
17a0: 2d 63 61 72 64 2e 0a 54 68 65 20 50 2d 63 61 72 -card..The P-car
17b0: 64 20 68 61 73 20 61 20 76 61 72 79 69 6e 67 20 d has a varying
17c0: 6e 75 6d 62 65 72 20 6f 66 20 61 72 67 75 6d 65 number of argume
17d0: 6e 74 73 20 74 68 61 74 0a 64 65 66 69 6e 65 73 nts that.defines
17e0: 20 6f 74 68 65 72 20 6d 61 6e 69 66 65 73 74 73 other manifests
17f0: 20 66 72 6f 6d 20 77 68 69 63 68 20 74 68 65 20 from which the
1800: 63 75 72 72 65 6e 74 20 6d 61 6e 69 66 65 73 74 current manifest
1810: 0a 69 73 20 64 65 72 69 76 65 64 2e 20 20 45 61 .is derived. Ea
1820: 63 68 20 61 72 67 75 6d 65 6e 74 20 69 73 20 61 ch argument is a
1830: 6e 20 34 30 2d 63 68 61 72 61 63 74 65 72 20 6c n 40-character l
1840: 6f 77 65 72 63 61 73 65 20 0a 68 65 78 61 64 65 owercase .hexade
1850: 63 69 6d 61 6c 20 53 48 41 31 20 6f 66 20 74 68 cimal SHA1 of th
1860: 65 20 70 72 65 64 65 63 65 73 73 6f 72 20 6d 61 e predecessor ma
1870: 6e 69 66 65 73 74 2e 20 20 41 6c 6c 20 61 72 67 nifest. All arg
1880: 75 6d 65 6e 74 73 0a 74 6f 20 74 68 65 20 50 2d uments.to the P-
1890: 63 61 72 64 20 6d 75 73 74 20 62 65 20 75 6e 69 card must be uni
18a0: 71 75 65 20 74 6f 20 74 68 61 74 20 6c 69 6e 65 que to that line
18b0: 2e 0a 54 68 65 20 66 69 72 73 74 20 70 72 65 64 ..The first pred
18c0: 65 63 65 73 73 6f 72 20 69 73 20 74 68 65 20 64 ecessor is the d
18d0: 69 72 65 63 74 20 61 6e 63 65 73 74 6f 72 20 6f irect ancestor o
18e0: 66 20 74 68 65 20 6d 61 6e 69 66 65 73 74 2e 0a f the manifest..
18f0: 4f 74 68 65 72 20 61 72 67 75 6d 65 6e 74 73 20 Other arguments
1900: 64 65 66 69 6e 65 20 6d 61 6e 69 66 65 73 74 73 define manifests
1910: 20 77 69 74 68 20 77 68 69 63 68 20 74 68 65 20 with which the
1920: 66 69 72 73 74 20 77 61 73 0a 6d 65 72 67 65 64 first was.merged
1930: 20 74 6f 20 79 69 65 6c 64 20 74 68 65 20 63 75 to yield the cu
1940: 72 72 65 6e 74 20 6d 61 6e 69 66 65 73 74 2e 20 rrent manifest.
1950: 20 4d 6f 73 74 20 6d 61 6e 69 66 65 73 74 73 20 Most manifests
1960: 68 61 76 65 0a 61 20 50 2d 63 61 72 64 20 77 69 have.a P-card wi
1970: 74 68 20 61 20 73 69 6e 67 6c 65 20 61 72 67 75 th a single argu
1980: 6d 65 6e 74 2e 20 20 54 68 65 20 66 69 72 73 74 ment. The first
1990: 20 6d 61 6e 69 66 65 73 74 20 69 6e 20 74 68 65 manifest in the
19a0: 0a 70 72 6f 6a 65 63 74 20 68 61 73 20 6e 6f 20 .project has no
19b0: 61 6e 63 65 73 74 6f 72 73 20 61 6e 64 20 74 68 ancestors and th
19c0: 75 73 20 68 61 73 20 6e 6f 20 50 2d 63 61 72 64 us has no P-card
19d0: 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 0a 41 20 6d 61 ..</p>..<p>.A ma
19e0: 6e 69 66 65 73 74 20 6d 61 79 20 6f 70 74 69 6f nifest may optio
19f0: 6e 61 6c 6c 79 20 68 61 76 65 20 61 20 73 69 6e nally have a sin
1a00: 67 6c 65 20 52 2d 63 61 72 64 2e 20 20 54 68 65 gle R-card. The
1a10: 20 52 2d 63 61 72 64 20 68 61 73 0a 61 20 73 69 R-card has.a si
1a20: 6e 67 6c 65 20 61 72 67 75 6d 65 6e 74 20 77 68 ngle argument wh
1a30: 69 63 68 20 69 73 20 74 68 65 20 4d 44 35 20 63 ich is the MD5 c
1a40: 68 65 63 6b 73 75 6d 20 6f 66 20 61 6c 6c 20 66 hecksum of all f
1a50: 69 6c 65 73 20 69 6e 20 0a 74 68 65 20 62 61 73 iles in .the bas
1a60: 65 6c 69 6e 65 20 65 78 63 65 70 74 20 74 68 65 eline except the
1a70: 20 6d 61 6e 69 66 65 73 74 20 69 74 73 65 6c 66 manifest itself
1a80: 2e 20 20 54 68 65 20 63 68 65 63 6b 73 75 6d 20 . The checksum
1a90: 69 73 20 65 78 70 72 65 73 73 65 64 0a 61 73 20 is expressed.as
1aa0: 33 32 2d 63 68 61 72 61 63 74 65 72 73 20 6f 66 32-characters of
1ab0: 20 6c 6f 77 65 72 63 61 73 65 20 68 65 78 61 64 lowercase hexad
1ac0: 65 63 69 6d 61 6c 2e 20 20 20 54 68 65 20 63 68 ecimal. The ch
1ad0: 65 63 6b 73 75 6d 20 69 73 0a 63 6f 6d 70 75 74 ecksum is.comput
1ae0: 65 64 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 20 20 ed as follows:
1af0: 46 6f 72 20 65 61 63 68 20 66 69 6c 65 20 69 6e For each file in
1b00: 20 74 68 65 20 62 61 73 65 6c 69 6e 65 20 28 65 the baseline (e
1b10: 78 63 65 70 74 20 66 6f 72 0a 74 68 65 20 6d 61 xcept for.the ma
1b20: 6e 69 66 65 73 74 20 69 74 73 65 6c 66 29 20 69 nifest itself) i
1b30: 6e 20 73 74 72 69 63 74 20 73 6f 72 74 65 64 20 n strict sorted
1b40: 6c 65 78 69 63 6f 67 72 61 70 68 69 63 61 6c 20 lexicographical
1b50: 6f 72 64 65 72 2c 20 0a 74 61 6b 65 20 74 68 65 order, .take the
1b60: 20 70 61 74 68 6e 61 6d 65 20 6f 66 20 74 68 65 pathname of the
1b70: 20 66 69 6c 65 20 72 65 6c 61 74 69 76 65 20 74 file relative t
1b80: 6f 20 74 68 65 20 72 6f 6f 74 20 6f 66 20 74 68 o the root of th
1b90: 65 0a 72 65 70 6f 73 69 74 6f 72 79 2c 20 61 70 e.repository, ap
1ba0: 70 65 6e 64 20 61 20 73 69 6e 67 6c 65 20 73 70 pend a single sp
1bb0: 61 63 65 20 28 41 53 43 49 49 20 30 78 32 30 29 ace (ASCII 0x20)
1bc0: 2c 20 74 68 65 0a 73 69 7a 65 20 6f 66 20 74 68 , the.size of th
1bd0: 65 20 66 69 6c 65 20 69 6e 20 41 53 43 49 49 20 e file in ASCII
1be0: 64 65 63 69 6d 61 6c 2c 20 61 20 73 69 6e 67 6c decimal, a singl
1bf0: 65 20 6e 65 77 6c 69 6e 65 0a 63 68 61 72 61 63 e newline.charac
1c00: 74 65 72 20 28 41 53 43 49 49 20 30 78 30 41 29 ter (ASCII 0x0A)
1c10: 2c 20 61 6e 64 20 74 68 65 20 63 6f 6d 70 6c 65 , and the comple
1c20: 74 65 20 74 65 78 74 20 6f 66 20 74 68 65 20 66 te text of the f
1c30: 69 6c 65 2e 0a 43 6f 6d 70 75 74 65 20 74 68 65 ile..Compute the
1c40: 20 4d 44 35 20 63 68 65 63 6b 73 75 6d 20 6f 66 MD5 checksum of
1c50: 20 74 68 65 20 74 68 65 20 72 65 73 75 6c 74 2e the the result.
1c60: 0a 3c 2f 70 3e 0a 0a 3c 70 3e 0a 45 61 63 68 20 .</p>..<p>.Each
1c70: 6d 61 6e 69 66 65 73 74 20 68 61 73 20 61 20 73 manifest has a s
1c80: 69 6e 67 6c 65 20 55 2d 63 61 72 64 2e 20 20 54 ingle U-card. T
1c90: 68 65 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 74 he argument to t
1ca0: 68 65 20 55 2d 63 61 72 64 20 69 73 0a 74 68 65 he U-card is.the
1cb0: 20 6c 6f 67 69 6e 20 6f 66 20 74 68 65 20 75 73 login of the us
1cc0: 65 72 20 77 68 6f 20 63 72 65 61 74 65 64 20 74 er who created t
1cd0: 68 65 20 6d 61 6e 69 66 65 73 74 2e 20 20 54 68 he manifest. Th
1ce0: 65 20 6c 6f 67 69 6e 20 6e 61 6d 65 0a 69 73 20 e login name.is
1cf0: 65 6e 63 6f 64 65 64 20 75 73 69 6e 67 20 74 68 encoded using th
1d00: 65 20 73 61 6d 65 20 63 68 61 72 61 63 74 65 72 e same character
1d10: 20 65 73 63 61 70 65 73 20 61 73 20 69 73 20 75 escapes as is u
1d20: 73 65 64 20 66 6f 72 20 74 68 65 0a 63 68 65 63 sed for the.chec
1d30: 6b 2d 69 6e 20 63 6f 6d 6d 65 6e 74 20 61 72 67 k-in comment arg
1d40: 75 6d 65 6e 74 20 74 6f 20 74 68 65 20 43 2d 63 ument to the C-c
1d50: 61 72 64 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 0a 41 ard..</p>..<p>.A
1d60: 20 6d 61 6e 69 66 65 73 74 20 68 61 73 20 61 6e manifest has an
1d70: 20 6f 70 74 69 6f 6e 20 5a 2d 63 61 72 64 20 61 option Z-card a
1d80: 73 20 69 74 73 20 6c 61 73 74 20 6c 69 6e 65 2e s its last line.
1d90: 20 20 54 68 65 20 61 72 67 75 6d 65 6e 74 0a 74 The argument.t
1da0: 6f 20 74 68 65 20 5a 2d 63 61 72 64 20 69 73 20 o the Z-card is
1db0: 61 20 33 32 2d 63 68 61 72 61 63 74 65 72 20 6c a 32-character l
1dc0: 6f 77 65 72 63 61 73 65 20 68 65 78 61 64 65 63 owercase hexadec
1dd0: 69 6d 61 6c 20 4d 44 35 20 68 61 73 68 0a 6f 66 imal MD5 hash.of
1de0: 20 61 6c 6c 20 70 72 69 6f 72 20 6c 69 6e 65 73 all prior lines
1df0: 20 6f 66 20 74 68 65 20 6d 61 6e 69 66 65 73 74 of the manifest
1e00: 20 75 70 20 74 6f 20 61 6e 64 20 69 6e 63 6c 75 up to and inclu
1e10: 64 69 6e 67 20 74 68 65 20 6e 65 77 6c 69 6e 65 ding the newline
1e20: 20 0a 63 68 61 72 61 63 74 65 72 20 74 68 61 74 .character that
1e30: 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 70 72 65 immediately pre
1e40: 63 65 65 64 73 20 74 68 65 20 22 5a 22 2e 20 20 ceeds the "Z".
1e50: 54 68 65 20 5a 2d 63 61 72 64 20 69 73 20 6a 75 The Z-card is ju
1e60: 73 74 0a 61 20 73 61 6e 69 74 79 20 63 68 65 63 st.a sanity chec
1e70: 6b 20 74 6f 20 70 72 6f 76 65 20 74 68 61 74 20 k to prove that
1e80: 74 68 65 20 6d 61 6e 69 66 65 73 74 20 69 73 20 the manifest is
1e90: 77 65 6c 6c 2d 66 6f 72 6d 65 64 20 61 6e 64 0a well-formed and.
1ea0: 63 6f 6e 73 69 73 74 65 6e 74 2e 0a 3c 2f 70 3e consistent..</p>
1eb0: 0a 0a 3c 68 32 3e 32 2e 30 20 43 6c 75 73 74 65 ..<h2>2.0 Cluste
1ec0: 72 73 3c 2f 68 32 3e 0a 0a 3c 70 3e 0a 41 20 63 rs</h2>..<p>.A c
1ed0: 6c 75 73 74 65 72 20 69 73 20 61 20 61 72 74 69 luster is a arti
1ee0: 66 61 63 74 20 74 68 61 74 20 64 65 63 6c 61 72 fact that declar
1ef0: 65 73 20 74 68 65 20 65 78 69 73 74 61 6e 63 65 es the existance
1f00: 20 6f 66 20 6f 74 68 65 72 20 61 72 74 69 66 61 of other artifa
1f10: 63 74 73 2e 0a 43 6c 75 73 74 65 72 73 20 61 72 cts..Clusters ar
1f20: 65 20 75 73 65 64 20 64 75 72 69 6e 67 20 72 65 e used during re
1f30: 70 6f 73 69 74 6f 72 79 20 73 79 6e 63 68 72 6f pository synchro
1f40: 6e 69 7a 61 74 69 6f 6e 20 74 6f 20 68 65 6c 70 nization to help
1f50: 20 0a 72 65 64 75 63 65 20 6e 65 74 77 6f 72 6b .reduce network
1f60: 20 74 72 61 66 66 69 63 2e 20 20 41 73 20 73 75 traffic. As su
1f70: 63 68 2c 20 63 6c 75 73 74 65 72 73 20 61 72 65 ch, clusters are
1f80: 20 61 6e 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e an optimization
1f90: 20 61 6e 64 0a 6d 61 79 20 62 65 20 72 65 6d 6f and.may be remo
1fa0: 76 65 64 20 66 72 6f 6d 20 61 20 72 65 70 6f 73 ved from a repos
1fb0: 69 74 6f 72 79 20 77 69 74 68 6f 75 74 20 6c 6f itory without lo
1fc0: 73 73 20 6f 72 20 64 61 6d 61 67 65 20 74 6f 20 ss or damage to
1fd0: 74 68 65 0a 75 6e 64 65 72 6c 79 69 6e 67 20 70 the.underlying p
1fe0: 72 6f 6a 65 63 74 20 63 6f 64 65 2e 0a 3c 2f 70 roject code..</p
1ff0: 3e 0a 0a 3c 70 3e 0a 43 6c 75 73 74 65 72 73 20 >..<p>.Clusters
2000: 66 6f 6c 6c 6f 77 20 61 20 73 79 6e 74 61 78 20 follow a syntax
2010: 74 68 61 74 20 69 73 20 76 65 72 79 20 73 69 6d that is very sim
2020: 69 6c 61 72 20 74 6f 20 6d 61 6e 69 66 65 73 74 ilar to manifest
2030: 73 2e 0a 41 20 43 6c 75 73 74 65 72 20 69 73 20 s..A Cluster is
2040: 61 20 6c 69 6e 65 2d 6f 72 69 65 6e 74 65 64 20 a line-oriented
2050: 74 65 78 74 20 66 69 6c 65 2e 20 20 4e 65 77 6c text file. Newl
2060: 69 6e 65 20 63 68 61 72 61 63 74 65 72 73 0a 28 ine characters.(
2070: 41 53 43 49 49 20 30 78 30 61 29 20 73 65 70 61 ASCII 0x0a) sepa
2080: 72 61 74 65 20 74 68 65 20 61 72 74 69 66 61 63 rate the artifac
2090: 74 20 69 6e 74 6f 20 63 61 72 64 73 2e 20 20 45 t into cards. E
20a0: 61 63 68 20 63 61 72 64 20 62 65 67 69 6e 73 20 ach card begins
20b0: 77 69 74 68 20 61 20 73 69 6e 67 6c 65 0a 63 68 with a single.ch
20c0: 61 72 61 63 74 65 72 20 22 63 61 72 64 20 74 79 aracter "card ty
20d0: 70 65 22 2e 20 20 5a 65 72 6f 20 6f 72 20 6d 6f pe". Zero or mo
20e0: 72 65 20 61 72 67 75 6d 65 6e 74 73 20 6d 61 79 re arguments may
20f0: 20 66 6f 6c 6c 6f 77 0a 74 68 65 20 63 61 72 64 follow.the card
2100: 20 74 79 70 65 2e 20 20 41 6c 6c 20 61 72 67 75 type. All argu
2110: 6d 65 6e 74 73 20 61 72 65 20 73 65 70 61 72 61 ments are separa
2120: 74 65 64 20 66 72 6f 6d 20 65 61 63 68 20 6f 74 ted from each ot
2130: 68 65 72 0a 61 6e 64 20 66 72 6f 6d 20 74 68 65 her.and from the
2140: 20 63 61 72 64 2d 74 79 70 65 20 63 68 61 72 61 card-type chara
2150: 63 74 65 72 20 62 79 20 61 20 73 69 6e 67 6c 65 cter by a single
2160: 20 73 70 61 63 65 0a 63 68 61 72 61 63 74 65 72 space.character
2170: 2e 20 20 54 68 65 72 65 20 69 73 20 6e 6f 20 73 . There is no s
2180: 75 72 70 6c 75 73 20 77 68 69 74 65 20 73 70 61 urplus white spa
2190: 63 65 20 62 65 74 77 65 65 6e 20 61 72 67 75 6d ce between argum
21a0: 65 6e 74 73 0a 61 6e 64 20 6e 6f 20 6c 65 61 64 ents.and no lead
21b0: 69 6e 67 20 6f 72 20 74 72 61 69 6c 69 6e 67 20 ing or trailing
21c0: 77 68 69 74 65 73 70 61 63 65 20 65 78 63 65 70 whitespace excep
21d0: 74 20 66 6f 72 20 74 68 65 20 6e 65 77 6c 69 6e t for the newlin
21e0: 65 20 0a 63 68 61 72 61 63 74 65 72 20 74 68 61 e .character tha
21f0: 74 20 61 63 74 73 20 61 73 20 74 68 65 20 63 61 t acts as the ca
2200: 72 64 20 73 65 70 61 72 61 74 6f 72 2e 0a 41 6c rd separator..Al
2210: 6c 20 63 61 72 64 73 20 6f 66 20 61 20 63 6c 75 l cards of a clu
2220: 74 65 72 20 6f 63 63 75 72 20 69 6e 20 73 74 72 ter occur in str
2230: 69 63 74 20 73 6f 72 74 65 64 20 6c 65 78 69 63 ict sorted lexic
2240: 6f 67 72 61 70 68 69 63 61 6c 20 6f 72 64 65 72 ographical order
2250: 2e 0a 4e 6f 20 63 61 72 64 20 6d 61 79 20 62 65 ..No card may be
2260: 20 64 75 70 6c 69 63 61 74 65 64 2e 0a 54 68 65 duplicated..The
2270: 20 63 6c 75 73 74 65 72 20 6d 61 79 20 6e 6f 74 cluster may not
2280: 20 63 6f 6e 74 61 69 6e 20 61 64 64 69 74 69 6f contain additio
2290: 6e 61 6c 20 74 65 78 74 20 6f 72 20 64 61 74 61 nal text or data
22a0: 20 62 65 79 6f 6e 64 20 0a 77 68 61 74 20 69 73 beyond .what is
22b0: 20 64 65 73 63 72 69 62 65 64 20 68 65 72 65 2e described here.
22c0: 0a 55 6e 6c 69 6b 65 20 6d 61 6e 69 66 65 73 74 .Unlike manifest
22d0: 73 2c 20 63 6c 75 73 74 65 72 73 20 61 72 65 20 s, clusters are
22e0: 6e 65 76 65 72 20 50 47 50 20 73 69 67 6e 65 64 never PGP signed
22f0: 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 0a 41 6c 6c 6f ..</p>..<p>.Allo
2300: 77 65 64 20 63 61 72 64 73 20 69 6e 20 74 68 65 wed cards in the
2310: 20 63 6c 75 73 74 65 72 20 61 72 65 20 61 73 20 cluster are as
2320: 66 6f 6c 6c 6f 77 73 3a 0a 3c 2f 70 3e 0a 0a 3c follows:.</p>..<
2330: 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a 3c 62 3e 4d blockquote>.<b>M
2340: 3c 2f 62 3e 20 3c 69 3e 75 75 69 64 3c 2f 69 3e </b> <i>uuid</i>
2350: 3c 62 72 20 2f 3e 0a 3c 62 3e 5a 3c 2f 62 3e 20 <br />.<b>Z</b>
2360: 3c 69 3e 63 68 65 63 6b 73 75 6d 3c 2f 69 3e 0a <i>checksum</i>.
2370: 3c 2f 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a 0a 3c </blockquote>..<
2380: 70 3e 0a 41 20 63 6c 75 73 74 65 72 20 63 6f 6e p>.A cluster con
2390: 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 tains one or mor
23a0: 65 20 22 4d 22 20 63 61 72 64 73 20 66 6f 6c 6c e "M" cards foll
23b0: 6f 77 65 64 20 62 79 20 61 20 73 69 6e 67 6c 65 owed by a single
23c0: 20 22 5a 22 0a 6c 69 6e 65 2e 20 20 45 61 63 68 "Z".line. Each
23d0: 20 4d 20 63 61 72 64 20 68 61 73 20 61 20 73 69 M card has a si
23e0: 6e 67 6c 65 20 61 72 67 75 6d 65 6e 74 20 77 68 ngle argument wh
23f0: 69 63 68 20 69 73 20 74 68 65 20 55 55 49 44 20 ich is the UUID
2400: 6f 66 20 0a 61 6e 6f 74 68 65 72 20 61 72 74 69 of .another arti
2410: 66 61 63 74 20 69 6e 20 74 68 65 20 72 65 70 6f fact in the repo
2420: 73 69 74 6f 72 79 2e 20 20 54 68 65 20 5a 20 63 sitory. The Z c
2430: 61 72 64 20 77 6f 72 6b 20 65 78 61 63 74 6c 79 ard work exactly
2440: 20 6c 69 6b 65 0a 74 68 65 20 5a 20 63 61 72 64 like.the Z card
2450: 20 6f 66 20 61 20 6d 61 6e 69 66 65 73 74 2e 20 of a manifest.
2460: 20 54 68 65 20 61 72 67 75 6d 65 6e 74 20 74 6f The argument to
2470: 20 74 68 65 20 5a 20 63 61 72 64 20 69 73 20 74 the Z card is t
2480: 68 65 0a 6c 6f 77 65 72 2d 63 61 73 65 20 68 65 he.lower-case he
2490: 78 61 64 65 63 69 6d 61 6c 20 72 65 70 72 65 73 xadecimal repres
24a0: 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 entation of the
24b0: 4d 44 35 20 63 68 65 63 6b 73 75 6d 20 6f 66 20 MD5 checksum of
24c0: 61 6c 6c 0a 70 72 69 6f 72 20 63 61 72 64 73 20 all.prior cards
24d0: 69 6e 20 74 68 65 20 63 6c 75 73 74 65 72 2e 20 in the cluster.
24e0: 20 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 5a Note that the Z
24f0: 20 63 61 72 64 20 69 73 20 72 65 71 75 69 72 65 card is require
2500: 64 0a 6f 6e 20 61 20 63 6c 75 73 74 65 72 2e 0a d.on a cluster..
2510: 3c 2f 70 3e 0a 0a 0a 3c 68 32 3e 33 2e 30 20 43 </p>...<h2>3.0 C
2520: 6f 6e 74 72 6f 6c 20 41 72 74 69 66 61 63 74 73 ontrol Artifacts
2530: 3c 2f 68 32 3e 0a 0a 3c 70 3e 0a 43 6f 6e 74 72 </h2>..<p>.Contr
2540: 6f 6c 20 61 72 74 69 66 61 63 74 73 20 61 72 65 ol artifacts are
2550: 20 75 73 65 64 20 74 6f 20 61 73 73 69 67 6e 20 used to assign
2560: 70 72 6f 70 65 72 74 69 65 73 20 74 6f 20 6f 74 properties to ot
2570: 68 65 72 20 61 72 74 69 66 61 63 74 73 0a 77 69 her artifacts.wi
2580: 74 68 69 6e 20 74 68 65 20 72 65 70 6f 73 69 74 thin the reposit
2590: 6f 72 79 2e 20 20 54 68 65 20 62 61 73 69 63 20 ory. The basic
25a0: 66 6f 72 6d 61 74 20 6f 66 20 61 20 63 6f 6e 74 format of a cont
25b0: 72 6f 6c 20 61 72 74 69 66 61 63 74 20 69 73 0a rol artifact is.
25c0: 74 68 65 20 73 61 6d 65 20 61 73 20 61 20 6d 61 the same as a ma
25d0: 6e 69 66 65 73 74 20 6f 72 20 63 6c 75 73 74 65 nifest or cluste
25e0: 72 2e 20 20 41 20 63 6f 6e 74 72 6f 6c 20 61 72 r. A control ar
25f0: 74 69 66 61 63 74 20 69 73 20 61 20 74 65 78 74 tifact is a text
2600: 0a 66 69 6c 65 73 20 64 69 76 69 64 65 64 20 69 .files divided i
2610: 6e 74 6f 20 63 61 72 64 73 20 62 79 20 6e 65 77 nto cards by new
2620: 6c 69 6e 65 20 63 68 61 72 61 63 74 65 72 73 2e line characters.
2630: 20 20 45 61 63 68 20 63 61 72 64 20 68 61 73 20 Each card has
2640: 61 0a 73 69 6e 67 6c 65 2d 63 68 61 72 61 63 74 a.single-charact
2650: 65 72 20 63 61 72 64 20 74 79 70 65 20 66 6f 6c er card type fol
2660: 6c 6f 77 65 64 20 62 79 20 61 72 67 75 6d 65 6e lowed by argumen
2670: 74 73 2e 20 20 53 70 61 63 65 73 20 73 65 70 61 ts. Spaces sepa
2680: 72 61 74 65 0a 74 68 65 20 63 61 72 64 20 74 79 rate.the card ty
2690: 70 65 20 61 6e 64 20 74 68 65 20 61 72 67 75 6d pe and the argum
26a0: 65 6e 74 73 2e 20 20 4e 6f 20 73 75 72 70 6c 75 ents. No surplu
26b0: 73 20 77 68 69 74 65 73 70 61 63 65 20 69 73 20 s whitespace is
26c0: 61 6c 6c 6f 77 65 64 2e 0a 41 6c 6c 20 63 61 72 allowed..All car
26d0: 64 73 20 6d 75 73 74 20 6f 63 63 75 72 20 69 6e ds must occur in
26e0: 20 73 74 72 69 63 74 20 6c 65 78 69 67 72 61 70 strict lexigrap
26f0: 68 69 63 61 6c 20 6f 72 64 65 72 2e 0a 3c 2f 70 hical order..</p
2700: 3e 0a 0a 3c 70 3e 0a 41 6c 6c 6f 77 65 64 20 63 >..<p>.Allowed c
2710: 61 72 64 73 20 69 6e 20 61 20 63 6f 6e 74 72 6f ards in a contro
2720: 6c 20 61 72 74 69 66 61 63 74 20 61 72 65 20 61 l artifact are a
2730: 73 20 66 6f 6c 6c 6f 77 73 3a 0a 3c 2f 70 3e 0a s follows:.</p>.
2740: 0a 3c 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a 3c 62 .<blockquote>.<b
2750: 3e 44 3c 2f 62 3e 20 3c 69 3e 74 69 6d 65 2d 61 >D</b> <i>time-a
2760: 6e 64 2d 64 61 74 65 2d 73 74 61 6d 70 3c 2f 69 nd-date-stamp</i
2770: 3e 3c 62 72 20 2f 3e 0a 3c 62 3e 54 3c 2f 62 3e ><br />.<b>T</b>
2780: 20 28 3c 62 3e 2b 3c 2f 62 3e 7c 3c 62 3e 2d 3c (<b>+</b>|<b>-<
2790: 2f 62 3e 7c 3c 62 3e 2a 3c 2f 62 3e 29 3c 69 3e /b>|<b>*</b>)<i>
27a0: 74 61 67 2d 6e 61 6d 65 20 20 75 75 69 64 20 20 tag-name uuid
27b0: 3f 76 61 6c 75 65 3f 3c 2f 69 3e 3c 62 72 20 2f ?value?</i><br /
27c0: 3e 0a 3c 62 3e 5a 3c 2f 62 3e 20 3c 69 3e 63 68 >.<b>Z</b> <i>ch
27d0: 65 63 6b 73 75 6d 3c 2f 69 3e 3c 62 72 20 2f 3e ecksum</i><br />
27e0: 0a 3c 2f 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a 0a .</blockquote>..
27f0: 3c 70 3e 0a 41 20 63 6f 6e 74 72 6f 6c 20 61 72 <p>.A control ar
2800: 74 69 66 61 63 74 20 6d 75 73 74 20 68 61 76 65 tifact must have
2810: 20 6f 6e 65 20 44 20 63 61 72 64 20 61 6e 64 20 one D card and
2820: 6f 6e 65 20 5a 20 63 61 72 64 20 61 6e 64 0a 6f one Z card and.o
2830: 6e 65 20 6f 72 20 6d 6f 72 65 20 6f 72 20 6d 6f ne or more or mo
2840: 72 65 20 54 20 63 61 72 64 73 2e 20 20 4e 6f 20 re T cards. No
2850: 6f 74 68 65 72 20 63 61 72 64 73 20 6f 72 20 6f other cards or o
2860: 74 68 65 72 20 74 65 78 74 20 69 73 0a 61 6c 6c ther text is.all
2870: 6f 77 65 64 20 69 6e 20 61 20 63 6f 6e 74 72 6f owed in a contro
2880: 6c 20 61 72 74 69 66 61 63 74 2e 20 20 43 6f 6e l artifact. Con
2890: 74 72 6f 6c 20 61 72 74 69 66 61 63 74 73 20 6d trol artifacts m
28a0: 69 67 68 74 20 62 65 20 50 47 50 0a 63 6c 65 61 ight be PGP.clea
28b0: 72 73 69 67 6e 65 64 2e 3c 2f 70 3e 0a 0a 3c 70 rsigned.</p>..<p
28c0: 3e 54 68 65 20 44 20 63 61 72 64 20 61 6e 64 20 >The D card and
28d0: 74 68 65 20 5a 20 63 61 72 64 20 6f 66 20 61 20 the Z card of a
28e0: 63 6f 6e 74 72 6f 6c 20 61 72 74 69 66 61 63 74 control artifact
28f0: 20 61 72 65 20 74 68 65 20 73 61 6d 65 0a 61 73 are the same.as
2900: 20 69 6e 20 61 20 6d 61 6e 69 66 65 73 74 2e 3c in a manifest.<
2910: 2f 70 3e 0a 0a 3c 70 3e 54 68 65 20 54 20 63 61 /p>..<p>The T ca
2920: 72 64 20 72 65 70 72 65 73 65 6e 74 73 20 61 20 rd represents a
2930: 22 74 61 67 22 20 6f 72 20 70 72 6f 70 65 72 74 "tag" or propert
2940: 79 20 74 68 61 74 20 69 73 20 61 70 70 6c 69 65 y that is applie
2950: 64 20 74 6f 0a 73 6f 6d 65 20 6f 74 68 65 72 20 d to.some other
2960: 61 72 74 69 66 61 63 74 2e 20 20 54 68 65 20 54 artifact. The T
2970: 20 63 61 72 64 20 68 61 73 20 74 77 6f 20 6f 72 card has two or
2980: 20 74 68 72 65 65 20 76 61 6c 75 65 73 2e 20 20 three values.
2990: 54 68 65 0a 73 65 63 6f 6e 64 20 61 72 67 75 6d The.second argum
29a0: 65 6e 74 20 69 73 20 74 68 65 20 34 30 20 63 68 ent is the 40 ch
29b0: 61 72 61 63 74 65 72 20 6c 6f 77 65 72 63 61 73 aracter lowercas
29c0: 65 20 55 55 49 44 20 6f 66 20 74 68 65 20 61 72 e UUID of the ar
29d0: 74 69 66 61 63 74 0a 74 6f 20 77 68 69 63 68 20 tifact.to which
29e0: 74 68 65 20 74 61 67 20 69 73 20 74 6f 20 62 65 the tag is to be
29f0: 20 61 70 70 6c 69 65 64 2e 20 54 68 65 0a 66 69 applied. The.fi
2a00: 72 73 74 20 76 61 6c 75 65 20 69 73 20 74 68 65 rst value is the
2a10: 20 74 61 67 20 6e 61 6d 65 2e 20 20 54 68 65 20 tag name. The
2a20: 66 69 72 73 74 20 63 68 61 72 61 63 74 65 72 20 first character
2a30: 6f 66 20 74 68 65 20 74 61 67 0a 69 73 20 65 69 of the tag.is ei
2a40: 74 68 65 72 20 22 2b 22 2c 20 22 2d 22 2c 20 6f ther "+", "-", o
2a50: 72 20 22 2a 22 2e 20 20 41 20 22 2b 22 20 6d 65 r "*". A "+" me
2a60: 61 6e 73 20 74 68 65 20 74 61 67 20 73 68 6f 75 ans the tag shou
2a70: 6c 64 20 62 65 20 61 64 64 65 64 0a 74 6f 20 74 ld be added.to t
2a80: 68 65 20 61 72 74 69 66 61 63 74 2e 20 20 54 68 he artifact. Th
2a90: 65 20 22 2d 22 20 6d 65 61 6e 73 20 74 68 65 20 e "-" means the
2aa0: 74 61 67 20 73 68 6f 75 6c 64 20 62 65 20 72 65 tag should be re
2ab0: 6d 6f 76 65 64 2e 0a 54 68 65 20 22 2a 22 20 63 moved..The "*" c
2ac0: 68 61 72 61 63 74 65 72 20 6d 65 61 6e 73 20 74 haracter means t
2ad0: 68 65 20 74 61 67 20 73 68 6f 75 6c 64 20 62 65 he tag should be
2ae0: 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 61 72 added to the ar
2af0: 74 69 66 61 63 74 0a 61 6e 64 20 61 6c 6c 20 64 tifact.and all d
2b00: 69 72 65 63 74 20 64 65 63 65 6e 64 61 6e 74 73 irect decendants
2b10: 20 28 62 75 74 20 6e 6f 74 20 62 72 61 6e 63 68 (but not branch
2b20: 65 73 29 20 6f 66 20 74 68 65 20 61 72 74 69 66 es) of the artif
2b30: 61 63 74 20 64 6f 77 6e 0a 74 6f 20 62 75 74 20 act down.to but
2b40: 6e 6f 74 20 69 6e 63 6c 75 64 69 6e 67 20 74 68 not including th
2b50: 65 20 66 69 72 73 74 20 64 65 63 65 6e 64 61 6e e first decendan
2b60: 74 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 t that contains
2b70: 61 20 0a 6d 6f 72 65 20 72 65 63 65 6e 74 20 22 a .more recent "
2b80: 2d 22 20 74 61 67 20 77 69 74 68 20 74 68 65 20 -" tag with the
2b90: 73 61 6d 65 20 6e 61 6d 65 2e 0a 54 68 65 20 6f same name..The o
2ba0: 70 74 69 6f 6e 61 6c 20 74 68 69 72 64 20 61 72 ptional third ar
2bb0: 67 75 6d 65 6e 74 20 69 73 20 74 68 65 20 76 61 gument is the va
2bc0: 6c 75 65 20 6f 66 20 74 68 65 20 74 61 67 2e 20 lue of the tag.
2bd0: 20 41 20 74 61 67 0a 77 69 74 68 6f 75 74 20 61 A tag.without a
2be0: 20 76 61 6c 75 65 20 69 73 20 61 20 62 6f 6f 6c value is a bool
2bf0: 65 61 6e 2e 3c 2f 70 3e 0a 0a 3c 70 3e 57 68 65 ean.</p>..<p>Whe
2c00: 6e 20 74 77 6f 20 6f 72 20 6d 6f 72 65 20 74 61 n two or more ta
2c10: 67 73 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 gs with the same
2c20: 20 6e 61 6d 65 20 61 72 65 20 61 70 70 6c 69 65 name are applie
2c30: 64 20 74 6f 20 74 68 65 0a 73 61 6d 65 20 61 72 d to the.same ar
2c40: 74 69 66 61 63 74 2c 20 74 68 65 20 74 61 67 20 tifact, the tag
2c50: 77 69 74 68 20 74 68 65 20 6c 61 74 65 73 74 20 with the latest
2c60: 28 6d 6f 73 74 20 72 65 63 65 6e 74 29 20 64 61 (most recent) da
2c70: 74 65 20 69 73 0a 75 73 65 64 2e 3c 2f 70 3e 0a te is.used.</p>.
2c80: 0a 3c 70 3e 53 6f 6d 65 20 74 61 67 73 20 68 61 .<p>Some tags ha
2c90: 76 65 20 73 70 65 63 69 61 6c 20 6d 65 61 6e 69 ve special meani
2ca0: 6e 67 2e 20 20 54 68 65 20 22 63 6f 6d 6d 65 6e ng. The "commen
2cb0: 74 22 20 74 61 67 20 77 68 65 6e 20 61 70 70 6c t" tag when appl
2cc0: 69 65 64 0a 74 6f 20 61 20 62 61 73 65 6c 69 6e ied.to a baselin
2cd0: 65 20 77 69 6c 6c 20 6f 76 65 72 72 69 64 65 20 e will override
2ce0: 74 68 65 20 63 68 65 63 6b 2d 69 6e 20 63 6f 6d the check-in com
2cf0: 6d 65 6e 74 20 6f 66 20 74 68 61 74 20 62 61 73 ment of that bas
2d00: 65 6c 69 6e 65 0a 66 6f 72 20 64 69 73 70 6c 61 eline.for displa
2d10: 79 20 70 75 72 70 6f 73 65 73 2e 3c 2f 70 3e 0a y purposes.</p>.
2d20: 0a 3c 61 20 6e 61 6d 65 3d 22 77 69 6b 69 63 68 .<a name="wikich
2d30: 6e 67 22 3e 3c 2f 61 3e 0a 3c 68 32 3e 34 2e 30 ng"></a>.<h2>4.0
2d40: 20 57 69 6b 69 20 50 61 67 65 73 3c 2f 68 32 3e Wiki Pages</h2>
2d50: 0a 0a 3c 70 3e 41 20 77 69 6b 69 20 70 61 67 65 ..<p>A wiki page
2d60: 20 69 73 20 61 6e 20 61 72 74 69 66 61 63 74 20 is an artifact
2d70: 77 69 74 68 20 61 20 66 6f 72 6d 61 74 20 73 69 with a format si
2d80: 6d 69 6c 61 72 20 74 6f 20 6d 61 6e 69 66 65 73 milar to manifes
2d90: 74 73 2c 0a 63 6c 75 73 74 65 72 73 2c 20 61 6e ts,.clusters, an
2da0: 64 20 63 6f 6e 74 72 6f 6c 20 61 72 74 69 66 61 d control artifa
2db0: 63 74 73 2e 20 20 54 68 65 20 61 72 74 69 66 61 cts. The artifa
2dc0: 63 74 20 69 73 20 64 69 76 69 64 65 64 20 69 6e ct is divided in
2dd0: 74 6f 0a 63 61 72 64 73 20 62 79 20 6e 65 77 6c to.cards by newl
2de0: 69 6e 65 20 63 68 61 72 61 63 74 65 72 73 2e 20 ine characters.
2df0: 20 54 68 65 20 66 6f 72 6d 61 74 20 6f 66 20 65 The format of e
2e00: 61 63 68 20 63 61 72 64 20 69 73 20 61 73 20 69 ach card is as i
2e10: 6e 0a 6d 61 6e 69 66 65 73 74 73 2c 20 63 6c 75 n.manifests, clu
2e20: 73 74 65 72 73 2c 20 61 6e 64 20 63 6f 6e 74 72 sters, and contr
2e30: 6f 6c 20 61 72 74 69 66 61 63 74 73 2e 20 20 57 ol artifacts. W
2e40: 69 6b 69 20 61 72 74 69 66 61 63 74 73 20 61 63 iki artifacts ac
2e50: 63 65 70 74 0a 74 68 65 20 66 6f 6c 6c 6f 77 69 cept.the followi
2e60: 6e 67 20 63 61 72 64 20 74 79 70 65 73 3a 3c 2f ng card types:</
2e70: 70 3e 0a 0a 3c 62 6c 6f 63 6b 71 75 6f 74 65 3e p>..<blockquote>
2e80: 0a 3c 62 3e 44 3c 2f 62 3e 20 3c 69 3e 74 69 6d .<b>D</b> <i>tim
2e90: 65 2d 61 6e 64 2d 64 61 74 65 2d 73 74 61 6d 70 e-and-date-stamp
2ea0: 3c 2f 69 3e 3c 62 72 20 2f 3e 0a 3c 62 3e 4c 3c </i><br />.<b>L<
2eb0: 2f 62 3e 20 3c 69 3e 77 69 6b 69 2d 74 69 74 6c /b> <i>wiki-titl
2ec0: 65 3c 2f 69 3e 3c 62 72 20 2f 3e 0a 3c 62 3e 50 e</i><br />.<b>P
2ed0: 3c 2f 62 3e 20 3c 69 3e 70 61 72 65 6e 74 2d 75 </b> <i>parent-u
2ee0: 75 69 64 3c 2f 69 3e 2b 3c 62 72 20 2f 3e 0a 3c uid</i>+<br />.<
2ef0: 62 3e 55 3c 2f 62 3e 20 3c 69 3e 75 73 65 72 2d b>U</b> <i>user-
2f00: 6e 61 6d 65 3c 2f 69 3e 3c 62 72 20 2f 3e 0a 3c name</i><br />.<
2f10: 62 3e 57 3c 2f 62 3e 20 3c 69 3e 73 69 7a 65 3c b>W</b> <i>size<
2f20: 2f 69 3e 20 3c 62 3e 5c 6e 3c 2f 62 3e 20 3c 69 /i> <b>\n</b> <i
2f30: 3e 74 65 78 74 3c 2f 69 3e 20 3c 62 3e 5c 6e 3c >text</i> <b>\n<
2f40: 2f 62 3e 3c 62 72 20 2f 3e 0a 3c 62 3e 5a 3c 2f /b><br />.<b>Z</
2f50: 62 3e 20 3c 69 3e 63 68 65 63 6b 73 75 6d 3c 2f b> <i>checksum</
2f60: 69 3e 0a 3c 2f 62 6c 6f 63 6b 71 75 6f 74 65 3e i>.</blockquote>
2f70: 0a 0a 3c 70 3e 54 68 65 20 44 20 63 61 72 64 20 ..<p>The D card
2f80: 69 73 20 74 68 65 20 64 61 74 65 20 61 6e 64 20 is the date and
2f90: 74 69 6d 65 20 77 68 65 6e 20 74 68 65 20 77 69 time when the wi
2fa0: 6b 69 20 70 61 67 65 20 77 61 73 20 65 64 69 74 ki page was edit
2fb0: 65 64 2e 0a 54 68 65 20 50 20 63 61 72 64 20 73 ed..The P card s
2fc0: 70 65 63 69 66 69 65 73 20 74 68 65 20 70 61 72 pecifies the par
2fd0: 65 6e 74 20 77 69 6b 69 20 70 61 67 65 73 2c 20 ent wiki pages,
2fe0: 69 66 20 61 6e 79 2e 20 20 54 68 65 20 4c 20 63 if any. The L c
2ff0: 61 72 64 0a 67 69 76 65 73 20 74 68 65 20 6e 61 ard.gives the na
3000: 6d 65 20 6f 66 20 74 68 65 20 77 69 6b 69 20 70 me of the wiki p
3010: 61 67 65 2e 20 20 54 68 65 20 55 20 63 61 72 64 age. The U card
3020: 20 73 70 65 63 69 66 69 65 73 20 74 68 65 20 6c specifies the l
3030: 6f 67 69 6e 0a 6f 66 20 74 68 65 20 75 73 65 72 ogin.of the user
3040: 20 77 68 6f 20 6d 61 64 65 20 74 68 69 73 20 65 who made this e
3050: 64 69 74 20 74 6f 20 74 68 65 20 77 69 6b 69 20 dit to the wiki
3060: 70 61 67 65 2e 20 20 54 68 65 20 5a 20 63 61 72 page. The Z car
3070: 64 20 69 73 0a 74 68 65 20 75 73 75 61 6c 20 63 d is.the usual c
3080: 68 65 63 6b 73 75 6d 20 6f 76 65 72 20 74 68 65 hecksum over the
3090: 20 65 69 74 68 65 72 20 61 72 74 69 66 61 63 74 either artifact
30a0: 2e 3c 2f 70 3e 0a 0a 3c 70 3e 54 68 65 20 57 20 .</p>..<p>The W
30b0: 63 61 72 64 20 69 73 20 75 73 65 64 20 74 6f 20 card is used to
30c0: 73 70 65 63 69 66 79 20 74 68 65 20 74 65 78 74 specify the text
30d0: 20 6f 66 20 74 68 65 20 77 69 6b 69 20 70 61 67 of the wiki pag
30e0: 65 2e 20 20 54 68 65 0a 61 72 67 75 6d 65 6e 74 e. The.argument
30f0: 20 74 6f 20 74 68 65 20 57 20 63 61 72 64 20 69 to the W card i
3100: 73 20 61 6e 20 69 6e 74 65 67 65 72 20 77 68 69 s an integer whi
3110: 63 68 20 69 73 20 74 68 65 20 6e 75 6d 62 65 72 ch is the number
3120: 20 6f 66 20 62 79 74 65 73 0a 6f 66 20 74 65 78 of bytes.of tex
3130: 74 20 69 6e 20 74 68 65 20 77 69 6b 69 20 70 61 t in the wiki pa
3140: 67 65 2e 20 20 54 68 61 74 20 74 65 78 74 20 66 ge. That text f
3150: 6f 6c 6c 6f 77 73 20 74 68 65 20 6e 65 77 6c 69 ollows the newli
3160: 6e 65 20 63 68 61 72 61 63 74 65 72 0a 74 68 61 ne character.tha
3170: 74 20 74 65 72 6d 69 6e 61 74 65 73 20 74 68 65 t terminates the
3180: 20 57 20 63 61 72 64 2e 20 20 54 68 65 20 77 69 W card. The wi
3190: 6b 69 20 74 65 78 74 20 69 73 20 61 6c 77 61 79 ki text is alway
31a0: 73 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 6f 6e s followed by on
31b0: 65 0a 65 78 74 72 61 20 6e 65 77 6c 69 6e 65 2e e.extra newline.
31c0: 3c 2f 70 3e 0a 0a 3c 61 20 6e 61 6d 65 3d 22 74 </p>..<a name="t
31d0: 6b 74 63 68 6e 67 22 3e 3c 2f 61 3e 0a 3c 68 32 ktchng"></a>.<h2
31e0: 3e 35 2e 30 20 54 69 63 6b 65 74 20 43 68 61 6e >5.0 Ticket Chan
31f0: 67 65 73 3c 2f 68 32 3e 0a 0a 3c 70 3e 41 20 74 ges</h2>..<p>A t
3200: 69 63 6b 65 74 2d 63 68 61 6e 67 65 20 61 72 74 icket-change art
3210: 69 66 61 63 74 20 72 65 70 72 65 73 65 6e 74 73 ifact represents
3220: 20 61 20 63 68 61 6e 67 65 20 74 6f 20 61 20 74 a change to a t
3230: 72 6f 75 62 6c 65 20 74 69 63 6b 65 74 2e 0a 54 rouble ticket..T
3240: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 61 72 he following car
3250: 64 73 20 61 72 65 20 61 6c 6c 6f 77 65 64 20 6f ds are allowed o
3260: 6e 20 61 20 74 69 63 6b 65 74 20 63 68 61 6e 67 n a ticket chang
3270: 65 20 61 72 74 69 66 61 63 74 3a 3c 2f 70 3e 0a e artifact:</p>.
3280: 0a 3c 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a 3c 62 .<blockquote>.<b
3290: 3e 44 3c 2f 62 3e 20 3c 69 3e 74 69 6d 65 2d 61 >D</b> <i>time-a
32a0: 6e 64 2d 64 61 74 65 2d 73 74 61 6d 70 3c 2f 69 nd-date-stamp</i
32b0: 3e 3c 62 72 20 2f 3e 0a 3c 62 3e 4a 3c 2f 62 3e ><br />.<b>J</b>
32c0: 20 3f 3c 62 3e 2b 3c 2f 62 3e 3f 3c 69 3e 6e 61 ?<b>+</b>?<i>na
32d0: 6d 65 20 76 61 6c 75 65 3c 2f 69 3e 3c 62 72 20 me value</i><br
32e0: 2f 3e 0a 3c 62 3e 4b 3c 2f 62 3e 20 3c 69 3e 74 />.<b>K</b> <i>t
32f0: 69 63 6b 65 74 2d 75 75 69 64 3c 2f 69 3e 3c 62 icket-uuid</i><b
3300: 72 20 2f 3e 0a 3c 62 3e 55 3c 2f 62 3e 20 3c 69 r />.<b>U</b> <i
3310: 3e 75 73 65 72 2d 6e 61 6d 65 3c 2f 69 3e 3c 62 >user-name</i><b
3320: 72 20 2f 3e 0a 3c 62 3e 5a 3c 2f 62 3e 20 3c 69 r />.<b>Z</b> <i
3330: 3e 63 68 65 63 6b 73 75 6d 3c 2f 69 3e 0a 3c 2f >checksum</i>.</
3340: 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a 0a 3c 70 3e blockquote>..<p>
3350: 0a 54 68 65 20 44 20 63 61 72 64 20 69 73 20 74 .The D card is t
3360: 68 65 20 75 73 75 61 6c 20 64 61 74 65 20 61 6e he usual date an
3370: 64 20 74 69 6d 65 20 73 74 61 6d 70 20 61 6e 64 d time stamp and
3380: 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 65 20 represents the
3390: 70 6f 69 6e 74 0a 69 6e 20 74 69 6d 65 20 77 68 point.in time wh
33a0: 65 6e 20 74 68 65 20 63 68 61 6e 67 65 20 77 61 en the change wa
33b0: 73 20 65 6e 74 65 72 65 64 2e 20 20 54 68 65 20 s entered. The
33c0: 55 20 63 61 72 64 20 69 73 20 74 68 65 20 6c 6f U card is the lo
33d0: 67 69 6e 20 6f 66 20 74 68 65 0a 70 72 6f 67 72 gin of the.progr
33e0: 61 6d 6d 65 72 20 77 68 6f 20 65 6e 74 65 72 65 ammer who entere
33f0: 64 20 74 68 69 73 20 63 68 61 6e 67 65 2e 20 20 d this change.
3400: 54 68 65 20 5a 20 63 61 72 64 20 69 73 20 74 68 The Z card is th
3410: 65 20 63 68 65 63 6b 73 75 6d 20 6f 76 65 72 0a e checksum over.
3420: 74 68 65 20 65 6e 74 69 72 65 20 61 72 74 69 66 the entire artif
3430: 61 63 74 2e 3c 2f 70 3e 0a 0a 3c 70 3e 0a 45 76 act.</p>..<p>.Ev
3440: 65 72 79 20 74 69 63 6b 65 74 20 68 61 73 20 61 ery ticket has a
3450: 20 55 55 49 44 2e 20 20 54 68 65 20 74 69 63 6b UUID. The tick
3460: 65 74 20 74 6f 20 77 68 69 63 68 20 74 68 69 73 et to which this
3470: 20 63 68 61 6e 67 65 20 69 73 20 61 70 70 6c 69 change is appli
3480: 65 64 0a 69 73 20 73 70 65 63 69 66 69 65 64 20 ed.is specified
3490: 62 79 20 74 68 65 20 4b 20 63 61 72 64 2e 20 20 by the K card.
34a0: 41 20 74 69 63 6b 65 74 20 65 78 69 73 74 73 20 A ticket exists
34b0: 69 66 20 69 74 20 63 6f 6e 74 61 69 6e 73 20 6f if it contains o
34c0: 6e 65 20 6f 72 0a 6d 6f 72 65 20 63 68 61 6e 67 ne or.more chang
34d0: 65 73 2e 20 20 54 68 65 20 66 69 72 73 74 20 22 es. The first "
34e0: 63 68 61 6e 67 65 22 20 74 6f 20 61 20 74 69 63 change" to a tic
34f0: 6b 65 74 20 69 73 20 77 68 61 74 20 62 72 69 6e ket is what brin
3500: 67 73 20 74 68 65 0a 74 69 63 6b 65 74 20 69 6e gs the.ticket in
3510: 74 6f 20 65 78 69 73 74 61 6e 63 65 2e 3c 2f 70 to existance.</p
3520: 3e 0a 0a 3c 70 3e 0a 4a 20 63 61 72 64 73 20 73 >..<p>.J cards s
3530: 70 65 63 69 66 79 20 63 68 61 6e 67 65 73 20 74 pecify changes t
3540: 6f 20 22 66 69 65 6c 64 73 22 20 6f 66 20 74 68 o "fields" of th
3550: 65 20 74 69 63 6b 65 74 2e 20 20 45 61 63 68 20 e ticket. Each
3560: 66 6f 73 73 69 6c 0a 73 65 72 76 65 72 20 68 61 fossil.server ha
3570: 73 20 61 20 74 69 63 6b 65 74 20 63 6f 6e 66 69 s a ticket confi
3580: 67 75 72 61 74 69 6f 6e 20 77 68 69 63 68 20 73 guration which s
3590: 70 65 63 69 66 69 65 73 20 74 68 65 20 66 69 65 pecifies the fie
35a0: 6c 64 73 20 69 74 73 0a 75 6e 64 65 72 73 74 61 lds its.understa
35b0: 6e 64 73 2e 20 20 54 68 69 73 20 69 73 20 6e 6f nds. This is no
35c0: 74 20 61 20 6c 69 6d 69 74 20 6f 6e 20 74 68 65 t a limit on the
35d0: 20 66 69 65 6c 64 73 20 74 68 61 74 20 63 61 6e fields that can
35e0: 20 61 70 70 65 61 72 0a 6f 6e 20 74 68 65 20 4a appear.on the J
35f0: 20 63 61 72 64 73 2c 20 68 6f 77 65 76 65 72 2e cards, however.
3600: 20 20 49 66 20 61 20 4a 20 63 61 72 64 20 73 70 If a J card sp
3610: 65 63 69 66 69 65 73 20 61 20 66 69 65 6c 64 20 ecifies a field
3620: 74 68 61 74 20 61 0a 70 61 72 74 69 63 75 6c 61 that a.particula
3630: 72 20 66 6f 73 73 69 6c 20 73 65 72 76 65 72 20 r fossil server
3640: 64 6f 65 73 20 6e 6f 74 20 72 65 63 6f 67 6e 69 does not recogni
3650: 7a 65 2c 20 74 68 65 6e 20 74 68 61 74 20 4a 20 ze, then that J
3660: 63 61 72 64 0a 69 73 20 73 69 6d 70 6c 79 20 69 card.is simply i
3670: 67 6e 6f 72 65 64 2e 3c 2f 70 3e 0a 0a 3c 70 3e gnored.</p>..<p>
3680: 0a 54 68 65 20 66 69 72 73 74 20 61 72 67 75 6d .The first argum
3690: 65 6e 74 20 6f 66 20 74 68 65 20 4a 20 63 61 72 ent of the J car
36a0: 64 20 69 73 20 74 68 65 20 66 69 65 6c 64 20 6e d is the field n
36b0: 61 6d 65 2e 20 20 54 68 65 20 73 65 63 6f 6e 64 ame. The second
36c0: 0a 76 61 6c 75 65 20 69 73 20 74 68 65 20 66 69 .value is the fi
36d0: 65 6c 64 20 76 61 6c 75 65 2e 20 20 49 66 20 74 eld value. If t
36e0: 68 65 20 66 69 65 6c 64 20 6e 61 6d 65 20 62 65 he field name be
36f0: 67 69 6e 73 20 77 69 74 68 20 22 2b 22 20 74 68 gins with "+" th
3700: 65 6e 0a 74 68 65 20 76 61 6c 75 65 20 69 73 20 en.the value is
3710: 61 70 70 65 6e 64 65 64 20 74 6f 20 74 68 65 20 appended to the
3720: 70 72 69 6f 72 20 76 61 6c 75 65 2e 20 20 4f 74 prior value. Ot
3730: 68 65 72 77 69 73 65 2c 20 74 68 65 20 76 61 6c herwise, the val
3740: 75 65 0a 6f 6e 20 74 68 65 20 4a 20 63 61 72 64 ue.on the J card
3750: 20 72 65 70 6c 61 63 65 73 20 61 6e 79 20 70 72 replaces any pr
3760: 65 76 69 6f 75 73 20 76 61 6c 75 65 20 6f 66 20 evious value of
3770: 74 68 65 20 66 69 65 6c 64 2e 0a 54 68 65 20 66 the field..The f
3780: 69 65 6c 64 20 6e 61 6d 65 20 61 6e 64 20 76 61 ield name and va
3790: 6c 75 65 20 61 72 65 20 62 6f 74 68 20 65 6e 63 lue are both enc
37a0: 6f 64 65 64 20 75 73 69 6e 67 20 74 68 65 20 63 oded using the c
37b0: 68 61 72 61 63 74 65 72 0a 65 73 63 61 70 65 73 haracter.escapes
37c0: 20 64 65 66 69 6e 65 64 20 66 6f 72 20 74 68 65 defined for the
37d0: 20 43 20 63 61 72 64 20 6f 66 20 61 20 6d 61 6e C card of a man
37e0: 69 66 65 73 74 2e 0a 3c 2f 70 3e 0a ifest..</p>.