On Tue, Dec 26, 2017 at 5:10 AM, Richard Hipp <d...@sqlite.org> wrote:

> On 12/25/17, Shekhar Reddy <shekharreddy.k...@gmail.com> wrote:
> >
> > Is there any particular reason that the source is not moved to GitHub? I
> > think that would reach more number of people there.
> >
>
> There is a mirror of the SQLite repository on GitHub at
> https://github.com/mackyle/sqlite (maintained by GitHub user "mackyle"
> whom I do not know, but whose efforts I do appreciate).
>
> SQLite uses a different version control system called Fossil.  See
> https://www.fossil-scm.org/ for more information about Fossil.  Fossil
> is superior to Git+GitHub in many respects.  You can easily see this
> by doing a side-by-side comparison of the SQLite Fossil repository
> against the GitHub mirror.
>
> For example, here is the GitHub view of the "dbpage" branch of SQLite:
>
>      https://github.com/mackyle/sqlite/commits/dbpage
>
> Compare the above against the equivalent Fossil view:
>
>      https://www.sqlite.org/src/timeline?p=dfdebd12bfc80b91
>
> The Fossil view clearly shows that the head of "dbpage" is the merger
> of two other branches, and Fossil shows clearly where the branch
> diverged from trunk.  That information is very difficult to discern
> from the GitHub view.
>

That's a limitation of the webpage interface not of git itself...  (would
include a picture but I can't... well maybe I can indirectly...

 https://drive.google.com/open?id=1mhDcCotCMVyI3PF70dCvD4AAyVZGVoWW


> Fossil also has the ability to show the complete context of an
> individual branch.  For the "dbpage" branch, the context is shown
> here:
>
>      https://www.sqlite.org/src/timeline?r=dbpage
>
> Note in particular that Fossil clearly shows that the "dbpage" branch
> was ultimately merged back into trunk.  GitHub does not provide that
> information, as far as I can tell.
>

Or all the forks of a popular project...
https://github.com/bulletphysics/bullet3/network


>
> The basic problem with Git (apart from its notoriously convoluted user
> interface) is that it is based on a (bespoke) key/value database - the
> "packfile".  Fossil, on the other hand, is based on the most widely
> used relational database in the world.  This make information much
> easier to extract from Fossil than from Git.  For example, given a
> commit in Git (perhaps one reported by a customer or one found via
> bisect) there is no easy way in Git to find out what comes next - what
> commits were entered using your commit as a baseline.  Git shows
> ancestors, but not descendants.  Fossil, on the other hand, easily
> shows both descendants and ancestors of a check-in. You see this in
> the "Context" section of any Fossil commit page, such as
> https://www.sqlite.org/src/info/dfdebd12bfc80b91
>
> The fact that Git/GitHub does not show the descendants of a commit is
> a show-stopper for me.
>
> For t he view around a single commit I can see that might be something you
could get used to... but the graph line is complete and available to know
what is both before and after a commit in overall views.


> Finally, the use of GitHub would create a reliance on an outside
> company over which we have no influence.  The people who run GitHub
> today seem like great folks.  But the company might be sold or fall
> under new management tomorrow, and the friendly and open policies that
> govern GitHub today might change in an instant.  Fossil, on the other
> hand, is very simple to self-host on a $5/month VPS. (SQLite uses
> https://www.linode.com/ for its main servers and
> https://www.digitalocean.com for the https://www3.sqlite.org/ backup.
> There are lots of others.)
>
> So, given that Fossil is freer than Git (BSD vs. GPL), that Fossil
> embodies all of the functionality of both Git and GitHub, that Fossil
> is more capable than Git/GitHub, that Fossil has a friendly user
> interface than Git, and that Fossil is very easy to self-host and thus
> frees you of any dependencies on third-party companies, the question
> becomes:
>
> Why aren't you moving all of your GitHub projects over to Fossil!
>
>
Because Pull Requests, and a larger variety of tools to deal with Git
repositories.
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to