Artifact bd20a9934c56da1f3990edb0eddb606f11caf3e2:
File
www/qandc.wiki
part of check-in
[cbc8983685]
- Documentation update: Add the "Questions and Criticisms" document in
response to recent comments on reddit.com.
by
drh on
2008-10-06 00:31:23.
0000: 3c 6e 6f 77 69 6b 69 3e 0a 3c 68 31 20 61 6c 69 <nowiki>.<h1 ali
0010: 67 6e 3d 22 63 65 6e 74 65 72 22 3e 51 75 65 73 gn="center">Ques
0020: 74 69 6f 6e 73 20 41 6e 64 20 43 72 69 74 69 63 tions And Critic
0030: 69 73 6d 73 3c 2f 68 31 3e 0a 0a 3c 70 3e 54 68 isms</h1>..<p>Th
0040: 69 73 20 70 61 67 65 20 69 73 20 61 20 63 6f 6c is page is a col
0050: 6c 65 63 74 69 6f 6e 20 6f 66 20 72 65 61 6c 20 lection of real
0060: 71 75 65 73 74 69 6f 6e 73 20 61 6e 64 20 63 72 questions and cr
0070: 69 74 69 63 69 73 6d 73 20 74 68 61 74 20 68 61 iticisms that ha
0080: 76 65 20 62 65 65 6e 0a 72 61 69 73 65 64 20 61 ve been.raised a
0090: 67 61 69 6e 73 74 20 66 6f 73 73 69 6c 20 74 6f gainst fossil to
00a0: 67 65 74 68 65 72 20 77 69 74 68 20 72 65 73 70 gether with resp
00b0: 6f 6e 73 65 73 20 66 72 6f 6d 20 74 68 65 20 70 onses from the p
00c0: 72 6f 67 72 61 6d 27 73 20 61 75 74 68 6f 72 2e rogram's author.
00d0: 3c 2f 70 3e 0a 0a 3c 62 3e 46 6f 73 73 69 6c 20 </p>..<b>Fossil
00e0: 73 6f 75 6e 64 73 20 6c 69 6b 65 20 61 20 6c 6f sounds like a lo
00f0: 74 20 6f 66 20 72 65 69 6e 76 65 6e 74 69 6f 6e t of reinvention
0100: 20 6f 66 20 74 68 65 20 77 68 65 65 6c 2e 0a 57 of the wheel..W
0110: 68 79 20 63 72 65 61 74 65 20 79 6f 75 72 20 6f hy create your o
0120: 77 6e 20 44 56 43 53 20 77 68 65 6e 20 79 6f 75 wn DVCS when you
0130: 20 63 6f 75 6c 64 20 68 61 76 65 20 72 65 75 73 could have reus
0140: 65 64 20 6d 65 72 63 75 72 69 61 6c 3f 3c 2f 62 ed mercurial?</b
0150: 3e 0a 0a 3c 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a >..<blockquote>.
0160: 20 20 49 20 77 72 6f 74 65 20 69 74 20 62 65 63 I wrote it bec
0170: 61 75 73 65 20 6e 6f 6e 65 20 6f 66 20 74 68 65 ause none of the
0180: 0a 20 20 6f 74 68 65 72 20 61 76 61 69 6c 61 62 . other availab
0190: 6c 65 20 44 56 43 53 65 73 20 6d 65 74 20 6d 79 le DVCSes met my
01a0: 20 6e 65 65 64 73 2e 20 20 49 66 20 74 68 65 20 needs. If the
01b0: 6f 74 68 65 72 20 44 56 43 53 65 73 20 64 6f 0a other DVCSes do.
01c0: 20 20 6d 65 65 74 20 79 6f 75 72 20 6e 65 65 64 meet your need
01d0: 73 2c 20 74 68 65 6e 20 79 6f 75 20 70 72 6f 62 s, then you prob
01e0: 61 62 6c 79 20 64 6f 20 6e 6f 74 20 6e 65 65 64 ably do not need
01f0: 20 66 6f 73 73 69 6c 2e 20 20 42 75 74 20 74 68 fossil. But th
0200: 65 79 0a 20 20 64 6f 6e 27 74 20 6d 65 65 74 20 ey. don't meet
0210: 6d 69 6e 65 2c 20 61 6e 64 20 73 6f 20 66 6f 73 mine, and so fos
0220: 73 69 6c 20 69 73 20 6e 65 63 65 73 73 61 72 79 sil is necessary
0230: 20 66 6f 72 20 6d 65 2e 0a 0a 20 20 46 65 61 74 for me... Feat
0240: 75 72 65 20 70 72 6f 76 69 64 65 64 20 62 79 20 ure provided by
0250: 66 6f 73 73 69 6c 20 74 68 61 74 20 6f 6e 65 20 fossil that one
0260: 64 6f 65 73 20 6e 6f 74 20 67 65 74 20 77 69 74 does not get wit
0270: 68 20 6f 74 68 65 72 0a 20 20 44 56 43 53 65 73 h other. DVCSes
0280: 3a 0a 0a 20 20 3c 6f 6c 3e 0a 20 20 3c 6c 69 3e :.. <ol>. <li>
0290: 20 49 6e 74 65 67 72 61 74 65 64 20 3c 61 20 68 Integrated <a h
02a0: 72 65 66 3d 22 77 69 6b 69 74 68 65 6f 72 79 2e ref="wikitheory.
02b0: 77 69 6b 69 22 3e 77 69 6b 69 3c 2f 61 3e 2e 20 wiki">wiki</a>.
02c0: 3c 2f 6c 69 3e 0a 20 20 3c 6c 69 3e 20 49 6e 74 </li>. <li> Int
02d0: 65 67 72 61 74 65 64 20 3c 61 20 68 72 65 66 3d egrated <a href=
02e0: 22 62 75 67 74 68 65 6f 72 79 2e 77 69 6b 69 22 "bugtheory.wiki"
02f0: 3e 62 75 67 20 74 72 61 63 6b 69 6e 67 3c 2f 61 >bug tracking</a
0300: 3e 20 3c 2f 6c 69 3e 0a 20 20 3c 6c 69 3e 20 49 > </li>. <li> I
0310: 6d 6d 75 74 61 62 6c 65 20 61 72 74 69 66 61 63 mmutable artifac
0320: 74 73 20 3c 2f 6c 69 3e 0a 20 20 3c 6c 69 3e 20 ts </li>. <li>
0330: 73 65 6c 66 2d 63 6f 6e 74 61 69 6e 65 64 2c 20 self-contained,
0340: 73 74 61 6e 64 2d 61 6c 6f 6e 65 20 65 78 65 63 stand-alone exec
0350: 75 74 61 62 6c 65 20 3c 2f 6c 69 3e 0a 20 20 3c utable </li>. <
0360: 6c 69 3e 20 73 69 6d 70 6c 65 2c 20 77 65 6c 6c li> simple, well
0370: 2d 64 65 66 69 6e 65 64 2c 20 0a 20 20 20 20 20 -defined, .
0380: 20 20 3c 61 20 68 72 65 66 3d 22 66 69 6c 65 66 <a href="filef
0390: 6f 72 6d 61 74 2e 77 69 6b 69 22 3e 65 6e 64 75 ormat.wiki">endu
03a0: 72 69 6e 67 20 66 69 6c 65 20 66 6f 72 6d 61 74 ring file format
03b0: 3c 2f 61 3e 20 3c 2f 6c 69 3e 0a 20 20 3c 2f 6f </a> </li>. </o
03c0: 6c 3e 0a 3c 2f 62 6c 6f 63 6b 71 75 6f 74 65 3e l>.</blockquote>
03d0: 0a 0a 3c 62 3e 57 68 79 20 73 68 6f 75 6c 64 20 ..<b>Why should
03e0: 49 20 75 73 65 20 74 68 69 73 20 72 61 74 68 65 I use this rathe
03f0: 72 20 74 68 61 6e 20 54 72 61 63 3f 3c 2f 62 3e r than Trac?</b>
0400: 0a 0a 3c 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a 20 ..<blockquote>.
0410: 20 3c 6f 6c 3e 0a 20 20 3c 6c 69 3e 20 46 6f 73 <ol>. <li> Fos
0420: 73 69 6c 20 69 73 20 64 69 73 74 72 69 62 75 74 sil is distribut
0430: 65 64 2e 20 20 59 6f 75 20 63 61 6e 20 76 69 65 ed. You can vie
0440: 77 20 61 6e 64 2f 6f 72 20 65 64 69 74 20 74 69 w and/or edit ti
0450: 63 6b 65 74 73 2c 20 77 69 6b 69 2c 20 61 6e 64 ckets, wiki, and
0460: 0a 20 20 20 20 20 20 20 63 6f 64 65 20 77 68 69 . code whi
0470: 6c 65 20 6f 66 66 20 6e 65 74 77 6f 72 6b 2c 20 le off network,
0480: 74 68 65 6e 20 73 79 6e 63 20 79 6f 75 72 20 63 then sync your c
0490: 68 61 6e 67 65 73 20 6c 61 74 65 72 2e 20 20 57 hanges later. W
04a0: 69 74 68 20 54 72 61 63 2c 20 79 6f 75 0a 20 20 ith Trac, you.
04b0: 20 20 20 20 20 63 61 6e 20 6f 6e 6c 79 20 76 69 can only vi
04c0: 65 77 20 61 6e 64 20 65 64 69 74 20 74 69 63 6b ew and edit tick
04d0: 65 74 73 20 61 6e 64 20 77 69 6b 69 20 77 68 69 ets and wiki whi
04e0: 6c 65 20 79 6f 75 20 61 72 65 20 63 6f 6e 6e 65 le you are conne
04f0: 63 74 65 64 20 74 6f 0a 20 20 20 20 20 20 20 74 cted to. t
0500: 68 65 20 73 65 72 76 65 72 2e 20 3c 2f 6c 69 3e he server. </li>
0510: 0a 20 20 3c 6c 69 3e 20 46 6f 73 73 69 6c 20 69 . <li> Fossil i
0520: 73 20 6c 69 67 68 74 77 65 69 67 68 74 20 61 6e s lightweight an
0530: 64 20 66 75 6c 6c 79 20 73 65 6c 66 2d 63 6f 6e d fully self-con
0540: 74 61 69 6e 65 64 2e 20 20 49 74 20 69 73 20 76 tained. It is v
0550: 65 72 79 20 65 61 73 79 20 0a 20 20 20 20 20 20 ery easy .
0560: 20 74 6f 20 73 65 74 75 70 20 6f 6e 20 61 20 6c to setup on a l
0570: 6f 77 2d 72 65 73 6f 75 72 63 65 20 6d 61 63 68 ow-resource mach
0580: 69 6e 65 2e 20 46 6f 73 73 69 6c 20 64 6f 65 73 ine. Fossil does
0590: 20 6e 6f 74 20 72 65 71 75 69 72 65 20 61 6e 0a not require an.
05a0: 20 20 20 20 20 20 20 61 64 6d 69 6e 69 73 74 61 administa
05b0: 74 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 3c 6c 69 3e tor.</li>. <li>
05c0: 20 46 6f 73 73 69 6c 20 69 6e 74 65 67 72 61 74 Fossil integrat
05d0: 65 73 20 63 6f 64 65 20 76 65 72 73 69 6f 6e 69 es code versioni
05e0: 6e 67 20 69 6e 74 6f 20 74 68 65 20 73 61 6d 65 ng into the same
05f0: 20 72 65 70 6f 73 69 74 6f 72 79 20 77 69 74 68 repository with
0600: 0a 20 20 20 20 20 20 20 77 69 6b 69 20 61 6e 64 . wiki and
0610: 20 74 69 63 6b 65 74 73 2e 20 20 54 68 65 72 65 tickets. There
0620: 20 69 73 20 6e 6f 74 68 69 6e 67 20 65 78 74 72 is nothing extr
0630: 61 20 74 6f 20 61 64 64 20 6f 72 20 69 6e 73 74 a to add or inst
0640: 61 6c 6c 2e 0a 20 20 20 20 20 20 20 46 6f 73 73 all.. Foss
0650: 69 6c 20 69 73 20 61 6e 20 61 6c 6c 2d 69 6e 2d il is an all-in-
0660: 6f 6e 65 20 74 75 72 6e 6b 65 79 20 73 6f 6c 75 one turnkey solu
0670: 74 69 6f 6e 2e 20 3c 2f 6c 69 3e 0a 20 20 3c 2f tion. </li>. </
0680: 6f 6c 3e 0a 3c 2f 62 6c 6f 63 6b 71 75 6f 74 65 ol>.</blockquote
0690: 3e 0a 0a 3c 62 3e 4c 6f 76 65 20 74 68 65 20 63 >..<b>Love the c
06a0: 6f 6e 63 65 70 74 20 68 65 72 65 2e 20 41 6e 79 oncept here. Any
06b0: 6f 6e 65 20 75 73 69 6e 67 20 74 68 69 73 20 66 one using this f
06c0: 6f 72 20 72 65 61 6c 20 77 6f 72 6b 20 79 65 74 or real work yet
06d0: 3f 3c 2f 62 3e 0a 0a 3c 62 6c 6f 63 6b 71 75 6f ?</b>..<blockquo
06e0: 74 65 3e 0a 46 6f 73 73 69 6c 20 69 73 20 3c 61 te>.Fossil is <a
06f0: 20 68 72 65 66 3d 22 68 74 74 70 3a 2f 2f 77 77 href="http://ww
0700: 77 2e 66 6f 73 73 69 6c 2d 73 63 6d 2e 6f 72 67 w.fossil-scm.org
0710: 2f 22 3e 73 65 6c 66 2d 68 6f 73 74 69 6e 67 3c /">self-hosting<
0720: 2f 61 3e 2e 20 0a 49 6e 20 66 61 63 74 2c 20 74 /a>. .In fact, t
0730: 68 69 73 20 70 61 67 65 20 77 61 73 20 70 72 6f his page was pro
0740: 62 61 62 6c 79 20 64 65 6c 69 76 65 72 65 64 0a bably delivered.
0750: 74 6f 20 79 6f 75 72 20 77 65 62 2d 62 72 6f 77 to your web-brow
0760: 73 65 72 20 76 69 61 20 61 20 77 6f 72 6b 69 6e ser via a workin
0770: 67 20 66 6f 73 73 69 6c 20 69 6e 73 74 61 6e 63 g fossil instanc
0780: 65 2e 20 20 54 68 65 20 73 61 6d 65 20 76 69 72 e. The same vir
0790: 74 75 61 6c 0a 6d 61 63 68 69 6e 65 20 74 68 61 tual.machine tha
07a0: 74 20 68 6f 73 74 73 20 68 74 74 70 3a 2f 2f 77 t hosts http://w
07b0: 77 77 2e 66 6f 73 73 69 6c 2d 73 63 6d 2e 6f 72 ww.fossil-scm.or
07c0: 67 2f 0a 28 61 20 3c 61 20 68 72 65 66 3d 22 68 g/.(a <a href="h
07d0: 74 74 70 3a 2f 2f 77 77 77 2e 6c 69 6e 6f 64 65 ttp://www.linode
07e0: 2e 63 6f 6d 2f 22 3e 4c 69 6e 6f 64 65 20 37 32 .com/">Linode 72
07f0: 30 3c 2f 61 3e 29 0a 61 6c 73 6f 20 68 6f 73 74 0</a>).also host
0800: 73 20 32 34 20 6f 74 68 65 72 20 66 6f 73 73 69 s 24 other fossi
0810: 6c 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 66 l repositories f
0820: 6f 72 20 76 61 72 69 6f 75 73 20 73 6d 61 6c 6c or various small
0830: 20 70 72 6f 6a 65 63 74 73 2e 0a 54 68 65 20 64 projects..The d
0840: 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c ocumentation fil
0850: 65 73 20 66 6f 72 20 0a 3c 61 20 68 72 65 66 3d es for .<a href=
0860: 22 68 74 74 70 3a 2f 2f 77 77 77 2e 73 71 6c 69 "http://www.sqli
0870: 74 65 2e 6f 72 67 2f 22 3e 53 51 4c 69 74 65 3c te.org/">SQLite<
0880: 2f 61 3e 20 61 72 65 20 68 6f 73 74 65 64 20 69 /a> are hosted i
0890: 6e 20 61 0a 66 6f 73 73 69 6c 20 72 65 70 6f 73 n a.fossil repos
08a0: 69 74 6f 72 79 20 3c 61 20 68 72 65 66 3d 22 68 itory <a href="h
08b0: 74 74 70 3a 2f 2f 77 77 77 2e 73 71 6c 69 74 65 ttp://www.sqlite
08c0: 2e 6f 72 67 2f 64 6f 63 73 72 63 2f 22 3e 68 65 .org/docsrc/">he
08d0: 72 65 3c 2f 61 3e 2c 0a 66 6f 72 20 65 78 61 6d re</a>,.for exam
08e0: 70 6c 65 2e 0a 4f 74 68 65 72 20 70 72 6f 6a 65 ple..Other proje
08f0: 63 74 73 20 61 72 65 20 61 6c 73 6f 20 61 64 6f cts are also ado
0900: 70 74 69 6e 67 20 66 6f 73 73 69 6c 2e 20 20 42 pting fossil. B
0910: 75 74 20 66 6f 73 73 69 6c 20 64 6f 65 73 20 6e ut fossil does n
0920: 6f 74 20 79 65 74 20 68 61 76 65 0a 74 68 65 20 ot yet have.the
0930: 6d 61 73 73 69 76 65 20 75 73 65 72 20 62 61 73 massive user bas
0940: 65 20 6f 66 20 67 69 74 20 6f 72 20 6d 65 63 75 e of git or mecu
0950: 72 69 61 6c 2e 0a 3c 2f 62 6c 6f 63 6b 71 75 6f rial..</blockquo
0960: 74 65 3e 0a 0a 3c 62 3e 46 6f 73 73 69 6c 20 6c te>..<b>Fossil l
0970: 6f 6f 6b 73 20 6c 69 6b 65 20 74 68 65 20 62 75 ooks like the bu
0980: 67 20 74 72 61 63 6b 65 72 20 74 68 61 74 20 77 g tracker that w
0990: 6f 75 6c 64 20 62 65 20 69 6e 20 79 6f 75 72 20 ould be in your
09a0: 0a 4c 69 6e 6b 73 79 73 20 52 6f 75 74 65 72 27 .Linksys Router'
09b0: 73 20 61 64 6d 69 6e 69 73 74 72 61 74 69 6f 6e s administration
09c0: 20 73 63 72 65 65 6e 2e 3c 2f 70 3e 0a 0a 3c 62 screen.</p>..<b
09d0: 6c 6f 63 6b 71 75 6f 74 65 3e 0a 3c 70 3e 49 20 lockquote>.<p>I
09e0: 74 61 6b 65 20 61 20 70 72 61 67 6d 61 74 69 63 take a pragmatic
09f0: 20 61 70 70 72 6f 61 63 68 20 74 6f 20 73 6f 66 approach to sof
0a00: 74 77 61 72 65 3a 20 66 6f 72 6d 20 66 6f 6c 6c tware: form foll
0a10: 6f 77 73 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 54 ows functions..T
0a20: 6f 20 6d 65 2c 20 69 74 20 69 73 20 6d 6f 72 65 o me, it is more
0a30: 20 69 6d 70 6f 72 74 61 6e 74 20 74 6f 20 68 61 important to ha
0a40: 76 65 20 61 20 68 69 67 68 6c 79 20 72 65 6c 69 ve a highly reli
0a50: 61 62 6c 65 2c 20 66 61 73 74 2c 20 65 66 66 69 able, fast, effi
0a60: 63 69 65 6e 74 2c 0a 65 6e 64 75 72 69 6e 67 2c cient,.enduring,
0a70: 20 61 6e 64 20 73 69 6d 70 6c 65 20 44 56 43 53 and simple DVCS
0a80: 20 74 68 61 6e 20 6f 6e 65 20 74 68 61 74 20 6c than one that l
0a90: 6f 6f 6b 73 20 70 72 65 74 74 79 2e 3c 2f 70 3e ooks pretty.</p>
0aa0: 0a 0a 3c 70 3e 4f 6e 20 74 68 65 20 6f 74 68 65 ..<p>On the othe
0ab0: 72 20 68 61 6e 64 2c 20 69 66 20 79 6f 75 20 68 r hand, if you h
0ac0: 61 76 65 20 70 61 74 63 68 65 73 20 74 68 61 74 ave patches that
0ad0: 20 69 6d 70 72 6f 76 65 20 74 68 65 20 61 70 70 improve the app
0ae0: 61 72 61 6e 63 65 0a 6f 66 20 46 6f 73 73 69 6c arance.of Fossil
0af0: 20 77 69 74 68 6f 75 74 20 73 65 72 69 6f 75 73 without serious
0b00: 6c 79 20 63 6f 6d 70 72 6f 6d 69 73 69 6e 67 20 ly compromising
0b10: 69 74 73 20 72 65 6c 69 61 62 6c 69 74 79 2c 20 its reliablity,
0b20: 70 65 72 66 6f 72 6d 61 6e 63 65 2c 0a 61 6e 20 performance,.an
0b30: 6d 61 69 6e 74 61 69 6e 61 62 69 6c 69 74 79 2c maintainability,
0b40: 20 49 20 77 69 6c 6c 20 62 65 20 68 61 70 70 79 I will be happy
0b50: 20 74 6f 20 61 63 63 65 70 74 20 74 68 65 6d 2e to accept them.
0b60: 20 20 46 6f 73 73 69 6c 20 69 73 0a 73 65 6c 66 Fossil is.self
0b70: 2d 68 6f 73 74 69 6e 67 2e 20 20 57 72 69 74 65 -hosting. Write
0b80: 20 74 6f 20 74 68 65 20 6d 61 69 6e 74 61 69 6e to the maintain
0b90: 65 72 73 20 66 6f 72 20 61 20 70 61 73 73 77 6f ers for a passwo
0ba0: 72 64 20 74 68 61 74 20 77 69 6c 6c 20 6c 65 74 rd that will let
0bb0: 0a 79 6f 75 20 70 75 73 68 20 74 6f 20 74 68 65 .you push to the
0bc0: 20 6d 61 69 6e 20 66 6f 73 73 69 6c 20 72 65 70 main fossil rep
0bd0: 6f 73 69 74 6f 72 79 2e 3c 2f 70 3e 0a 3c 2f 62 ository.</p>.</b
0be0: 6c 6f 63 6b 71 75 6f 74 65 3e 0a 0a 3c 62 3e 49 lockquote>..<b>I
0bf0: 74 20 77 6f 75 6c 64 20 62 65 20 75 73 65 66 75 t would be usefu
0c00: 6c 20 74 6f 20 68 61 76 65 20 61 20 73 65 70 61 l to have a sepa
0c10: 72 61 74 65 20 61 70 70 6c 69 63 61 74 69 6f 6e rate application
0c20: 20 74 68 61 74 0a 6b 65 65 70 73 20 74 68 65 20 that.keeps the
0c30: 62 75 67 2d 74 72 61 63 6b 69 6e 67 20 64 61 74 bug-tracking dat
0c40: 61 62 61 73 65 20 69 6e 20 61 20 76 65 72 73 69 abase in a versi
0c50: 6f 6e 65 64 20 66 69 6c 65 64 2e 20 54 68 61 74 oned filed. That
0c60: 20 66 69 6c 65 20 63 61 6e 0a 74 68 65 6e 20 62 file can.then b
0c70: 65 20 70 75 73 68 65 64 20 61 6e 64 20 70 75 6c e pushed and pul
0c80: 6c 65 64 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 led along with t
0c90: 68 65 20 72 65 73 74 20 72 65 70 6f 73 69 74 6f he rest reposito
0ca0: 72 79 2e 3c 2f 62 3e 0a 0a 3c 62 6c 6f 63 6b 71 ry.</b>..<blockq
0cb0: 75 6f 74 65 3e 0a 3c 70 3e 54 68 69 73 20 61 64 uote>.<p>This ad
0cc0: 64 72 65 73 73 65 64 20 69 6e 20 74 68 65 20 6f dressed in the o
0cd0: 70 65 6e 69 6e 67 20 70 61 72 61 67 72 61 70 68 pening paragraph
0ce0: 73 20 6f 66 0a 74 68 65 20 3c 61 20 68 72 65 66 s of.the <a href
0cf0: 3d 22 62 75 67 74 68 65 6f 72 79 2e 77 69 6b 69 ="bugtheory.wiki
0d00: 22 3e 42 75 67 2d 54 72 61 63 6b 69 6e 67 20 49 ">Bug-Tracking I
0d10: 6e 20 46 6f 73 73 69 6c 3c 2f 61 3e 20 64 6f 63 n Fossil</a> doc
0d20: 75 6d 65 6e 74 2e 0a 3c 2f 62 6c 6f 63 6b 71 75 ument..</blockqu
0d30: 6f 74 65 3e 0a 0a 3c 62 3e 46 6f 73 73 69 6c 20 ote>..<b>Fossil
0d40: 69 73 20 61 6c 72 65 61 64 79 20 74 68 65 20 6e is already the n
0d50: 61 6d 65 20 6f 66 20 61 20 70 6c 61 6e 39 20 76 ame of a plan9 v
0d60: 65 72 73 69 6f 6e 65 64 20 0a 61 70 70 65 6e 64 ersioned .append
0d70: 2d 6f 6e 6c 79 20 66 69 6c 65 73 79 73 74 65 6d -only filesystem
0d80: 2e 3c 2f 62 3e 0a 0a 3c 62 6c 6f 63 6b 71 75 6f .</b>..<blockquo
0d90: 74 65 3e 0a 49 20 64 69 64 20 6e 6f 74 20 6b 6e te>.I did not kn
0da0: 6f 77 20 74 68 61 74 2e 20 20 50 65 72 68 61 70 ow that. Perhap
0db0: 73 20 74 68 65 79 20 63 68 6f 6f 73 65 20 74 68 s they choose th
0dc0: 65 20 6e 61 6d 65 20 66 6f 72 20 74 68 65 20 73 e name for the s
0dd0: 61 6d 65 20 72 65 61 73 6f 6e 20 74 68 61 74 0a ame reason that.
0de0: 49 20 64 69 64 3a 20 62 65 63 61 75 73 65 20 61 I did: because a
0df0: 20 72 65 70 6f 73 69 74 6f 72 79 20 77 69 74 68 repository with
0e00: 20 69 6d 6d 75 74 61 62 6c 65 20 61 72 74 69 66 immutable artif
0e10: 61 63 74 73 20 70 72 65 73 65 72 76 65 73 0a 61 acts preserves.a
0e20: 6e 64 20 65 78 63 65 6c 6c 65 6e 74 20 66 6f 73 nd excellent fos
0e30: 73 69 6c 20 72 65 63 6f 72 64 20 6f 66 20 61 20 sil record of a
0e40: 6c 6f 6e 67 2d 72 75 6e 6e 69 6e 67 20 70 72 6f long-running pro
0e50: 6a 65 63 74 2e 0a 3c 2f 62 6c 6f 63 6b 71 75 6f ject..</blockquo
0e60: 74 65 3e 0a 0a 3c 62 3e 54 68 65 20 69 64 65 61 te>..<b>The idea
0e70: 20 6f 66 20 73 74 6f 72 69 6e 67 20 61 20 72 65 of storing a re
0e80: 70 6f 73 69 74 6f 72 79 20 69 6e 20 61 20 62 69 pository in a bi
0e90: 6e 61 72 79 20 62 6c 6f 62 20 6c 69 6b 65 20 61 nary blob like a
0ea0: 6e 0a 53 51 4c 69 74 65 20 64 61 74 61 62 61 73 n.SQLite databas
0eb0: 65 20 74 65 72 72 69 66 69 65 73 20 6d 65 2e 3c e terrifies me.<
0ec0: 2f 62 3e 0a 0a 3c 62 6c 6f 63 6b 71 75 6f 74 65 /b>..<blockquote
0ed0: 3e 0a 54 68 65 20 75 73 65 20 6f 66 20 53 51 4c >.The use of SQL
0ee0: 69 74 65 20 74 6f 20 73 74 6f 72 65 20 74 68 65 ite to store the
0ef0: 20 64 61 74 61 62 61 73 65 20 69 73 20 6c 69 6b database is lik
0f00: 65 6c 79 20 6d 6f 72 65 20 73 74 61 62 6c 65 20 ely more stable
0f10: 61 6e 64 20 73 65 63 75 72 65 0a 74 68 61 6e 20 and secure.than
0f20: 61 6e 79 20 6f 74 68 65 72 20 61 70 70 72 6f 61 any other approa
0f30: 63 68 2c 20 64 75 65 20 74 6f 20 74 68 65 20 66 ch, due to the f
0f40: 61 63 74 20 74 68 61 74 20 53 51 4c 69 74 65 20 act that SQLite
0f50: 69 73 20 74 72 61 6e 73 61 63 74 69 6f 6e 61 6c is transactional
0f60: 2e 0a 46 6f 73 73 69 6c 20 61 6c 73 6f 20 69 6d ..Fossil also im
0f70: 70 6c 65 6d 65 6e 74 73 20 73 65 76 65 72 61 6c plements several
0f80: 20 69 6e 74 65 72 6e 61 6c 0a 3c 61 20 68 72 65 internal.<a hre
0f90: 66 3d 22 73 65 6c 66 63 68 65 63 6b 2e 77 69 6b f="selfcheck.wik
0fa0: 69 22 3e 73 65 6c 66 2d 63 68 65 63 6b 73 3c 2f i">self-checks</
0fb0: 61 3e 20 74 6f 20 69 6e 73 75 72 65 20 74 68 61 a> to insure tha
0fc0: 74 20 6e 6f 20 69 6e 66 6f 72 6d 61 74 69 6f 6e t no information
0fd0: 0a 69 73 20 65 76 65 72 79 20 6c 6f 73 74 2e 20 .is every lost.
0fe0: 20 41 6e 64 2c 20 69 6e 64 65 65 64 2c 20 69 6e And, indeed, in
0ff0: 20 6f 76 65 72 20 61 20 79 65 61 72 20 6f 66 20 over a year of
1000: 6f 70 65 72 61 74 69 6f 6e 2c 20 74 68 65 72 65 operation, there
1010: 20 68 61 76 65 20 62 65 65 6e 0a 6e 6f 20 72 65 have been.no re
1020: 70 6f 72 74 73 20 6f 66 20 64 61 74 61 20 6c 6f ports of data lo
1030: 73 73 20 64 75 65 20 74 6f 20 61 20 46 6f 73 73 ss due to a Foss
1040: 69 6c 20 6d 61 6c 66 75 6e 63 74 69 6f 6e 2e 0a il malfunction..
1050: 3c 2f 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a 0a 0a </blockquote>...
1060: 3c 62 3e 49 20 61 6d 20 64 75 62 69 6f 75 73 20 <b>I am dubious
1070: 6f 66 20 74 68 65 20 62 65 6e 65 66 69 74 73 20 of the benefits
1080: 6f 66 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 6b of including wik
1090: 69 73 20 61 6e 64 20 62 75 67 20 74 72 61 63 6b is and bug track
10a0: 65 72 73 0a 64 69 72 65 63 74 6c 79 20 69 6e 20 ers.directly in
10b0: 74 68 65 20 56 43 53 20 2d 20 65 69 74 68 65 72 the VCS - either
10c0: 20 74 68 65 79 20 61 72 65 20 75 6e 64 65 72 2d they are under-
10d0: 66 65 61 74 75 72 65 64 20 63 6f 6d 70 61 72 65 featured compare
10e0: 64 20 74 6f 20 66 75 6c 6c 0a 73 6f 66 74 77 61 d to full.softwa
10f0: 72 65 20 6c 69 6b 65 20 54 72 61 63 2c 20 6f 72 re like Trac, or
1100: 20 74 68 65 20 56 43 53 20 69 73 20 6d 61 73 73 the VCS is mass
1110: 69 76 65 6c 79 20 62 6c 6f 61 74 65 64 20 63 6f ively bloated co
1120: 6d 70 61 72 65 64 20 74 6f 0a 53 75 62 76 65 72 mpared to.Subver
1130: 73 69 6f 6e 20 6f 72 20 42 61 7a 61 61 72 2e 3c sion or Bazaar.<
1140: 2f 62 3e 0a 0a 3c 62 6c 6f 63 6b 71 75 6f 74 65 /b>..<blockquote
1150: 3e 0a 3c 70 3e 49 20 68 61 76 65 20 6e 6f 20 64 >.<p>I have no d
1160: 6f 75 62 74 20 74 68 61 74 20 54 72 61 63 20 68 oubt that Trac h
1170: 61 73 20 6d 61 6e 79 20 66 65 61 74 75 72 65 73 as many features
1180: 20 74 68 61 74 20 66 6f 73 73 69 6c 20 6c 61 63 that fossil lac
1190: 6b 73 2e 20 20 42 75 74 20 74 68 61 74 0a 69 73 ks. But that.is
11a0: 20 6e 6f 74 20 74 68 65 20 70 6f 69 6e 74 2e 20 not the point.
11b0: 20 46 6f 73 73 69 6c 20 68 61 73 20 73 65 76 65 Fossil has seve
11c0: 72 61 6c 20 6b 65 79 20 66 65 61 74 75 72 65 73 ral key features
11d0: 20 74 68 61 74 20 54 72 61 63 20 6c 61 63 6b 73 that Trac lacks
11e0: 20 61 6e 64 20 74 68 61 74 0a 74 68 65 20 70 72 and that.the pr
11f0: 69 6d 61 72 79 20 66 6f 73 73 69 6c 20 61 75 74 imary fossil aut
1200: 68 6f 72 20 63 61 6e 6e 6f 74 20 6c 69 76 65 20 hor cannot live
1210: 77 69 74 68 6f 75 74 3a 20 20 6d 6f 73 74 20 6e without: most n
1220: 6f 74 61 62 6c 79 20 74 68 65 20 66 61 63 74 20 otably the fact
1230: 74 68 61 74 20 0a 66 6f 73 73 69 6c 20 73 75 70 that .fossil sup
1240: 70 6f 72 74 73 20 64 69 73 63 6f 6e 6e 65 63 74 ports disconnect
1250: 65 64 20 6f 70 65 72 61 74 69 6f 6e 2e 3c 2f 70 ed operation.</p
1260: 3e 0a 0a 3c 70 3e 41 73 20 66 6f 72 20 62 6c 6f >..<p>As for blo
1270: 61 74 3a 20 20 46 6f 73 73 69 6c 20 69 73 20 61 at: Fossil is a
1280: 20 73 69 6e 67 6c 65 20 66 75 6c 6c 79 20 73 65 single fully se
1290: 6c 66 2d 63 6f 6e 74 61 69 6e 65 64 20 65 78 65 lf-contained exe
12a0: 63 75 74 61 62 6c 65 2e 0a 59 6f 75 20 64 6f 20 cutable..You do
12b0: 6e 6f 74 20 6e 65 65 64 20 61 6e 79 20 65 78 74 not need any ext
12c0: 65 72 6e 61 6c 20 70 61 63 6b 61 67 65 73 20 69 ernal packages i
12d0: 6e 20 6f 72 64 65 72 20 74 6f 20 72 75 6e 20 66 n order to run f
12e0: 6f 73 73 69 6c 2e 20 20 59 6f 75 20 64 6f 20 6e ossil. You do n
12f0: 6f 74 0a 6e 65 65 64 20 64 69 66 66 2c 20 70 61 ot.need diff, pa
1300: 74 63 68 2c 20 6d 65 72 67 65 2c 20 63 76 73 2c tch, merge, cvs,
1310: 20 73 76 6e 2c 20 72 63 73 2c 20 70 79 74 68 6f svn, rcs, pytho
1320: 6e 2c 20 70 65 72 6c 2c 20 74 63 6c 2c 20 73 71 n, perl, tcl, sq
1330: 6c 69 74 65 2c 20 6f 72 20 61 6e 79 74 68 69 6e lite, or anythin
1340: 67 0a 65 6c 73 65 20 69 6e 20 6f 72 64 65 72 20 g.else in order
1350: 74 6f 20 72 75 6e 20 66 6f 73 73 69 6c 2e 20 20 to run fossil.
1360: 46 6f 73 73 69 6c 20 72 75 6e 73 20 6a 75 73 74 Fossil runs just
1370: 20 66 69 6e 65 20 69 6e 20 61 20 63 68 72 6f 6f fine in a chroo
1380: 74 20 6a 61 69 6c 20 61 6c 6c 0a 62 79 20 69 74 t jail all.by it
1390: 73 65 6c 66 2e 20 20 41 6e 64 20 74 68 65 20 73 self. And the s
13a0: 65 6c 66 2d 63 6f 6e 74 61 69 6e 65 64 20 65 78 elf-contained ex
13b0: 65 63 75 74 61 62 6c 65 20 69 73 20 6d 75 63 68 ecutable is much
13c0: 20 6c 65 73 73 20 74 68 61 6e 20 31 4d 42 20 69 less than 1MB i
13d0: 6e 20 73 69 7a 65 2e 0a 46 6f 73 73 69 6c 20 69 n size..Fossil i
13e0: 73 20 74 68 65 20 76 65 72 79 20 6f 70 70 6f 73 s the very oppos
13f0: 69 74 65 20 6f 66 20 62 6c 6f 61 74 2e 3c 2f 70 ite of bloat.</p
1400: 3e 0a 3c 2f 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a >.</blockquote>.
1410: 0a 0a 3c 2f 6e 6f 77 69 6b 69 3e 0a ..</nowiki>.