◊(Local Yarn Code "Changes To Why Fossil?")

Changes to "Why Fossil?" between 2018-08-05 04:04:15 and 2020-03-10 18:43:51

1
2
3

4
5
6
7
8







9
10
11

12
13

1
2

3


4
5
6
7
8
9
10
11
12
13
14
15

16
17

18


-
+
-
-



+
+
+
+
+
+
+


-
+

-
+
<h1>Why Fossil?</h1>

[https://www.fossil-scm.org|Fossil] is a form of version control, and like most hep developers I use version control because of its several&nbsp;[https://www.fossil-scm.org/index.html/doc/trunk/www/whyusefossil.wiki|benefits].
[https://www.fossil-scm.org|Fossil] provides version control, and like most hep developers I use version control because of its several&nbsp;[https://www.fossil-scm.org/index.html/doc/trunk/www/whyusefossil.wiki|benefits].

As well, I wanted to keep everything in one place. <i>The Local Yarn</i> is (as noted elsewhere) not “a website”; rather it is <tt>A)</tt> writing, <tt>B)</tt> print and hypertext designs for the writing, <em>and</em> <tt>C)</tt> the source code that ties these things together. So I have always wanted to make the code, and the use of the code, a first-class part of the <em>thing</em> that can be explored here. In order to do that properly, I need it to live in the same place as everything else, rather than sending visitors off to an outside host like GitHub or&nbsp;GitLab.

However, you are likely reading this because of the implied second half of the question: why Fossil <em>and not&nbsp;Git</em>?

<ul>
<li>I want the source code to be part of the website. Fossil lets me do that easily, and lets me control the web interface, without running a database server or any third-party applications. Git doesn’t.</li>
<li>The Fossil program is a single file and a Fossil repo is a single SQLite file. Deploying Fossil and moving repos around is dead-simple.</li>
<li>For this project, I wanted granular control over how outside developers interact with the code: something between totally public or totally private. Fossil gives me very fine-grained [http://fossil-scm.org/index.html/doc/trunk/www/caps/ref.html|permissions] to apply to [http://fossil-scm.org/index.html/doc/trunk/www/caps/|different individual users, types of accounts, or anonymous users].</li>
<li>Fossil repos include bug tracking, embedded documentation, and wikis which are tightly integrated with the version-control functionality. This means all of my development notes and issue tracking are actually part my project, rather than objects hosted on a third-party service.</li>
</ul>

Being familiar with Git, you may find the following analogy statement&nbsp;instructive:

<pre><code>GitHub hosted repo : Self-hosted Fossil repo :: Expo floor booth : The&nbsp;Batcave</code></pre>
<b>GitHub hosted repo : Self-hosted Fossil repo :: Expo floor booth : The&nbsp;Batcave</b>

It’s a rough analogy, but it works. Fossil [http://fossil-scm.org/index.html/doc/trunk/www/index.wiki|does more] than Git, it allows finer control of [http://fossil-scm.org/index.html/doc/trunk/www/customskin.md|presentation] and [http://fossil-scm.org/index.html/doc/trunk/www/webui.wiki|security], and is (for better or worse, depending on the project) well outside of the GitHub social network and pull-request&nbsp;system.
It’s a rough analogy, but it works.