Evan Martin (evan) wrote in evan_tech,
Evan Martin
evan
evan_tech

fossil

Fossil version control system. It's made by by the SQLite guys, apparently? And was released maybe a few months ago.

It looks like it was heavily influenced by monotone: SHA-1 file identifiers, commit-before-merge means branches can have multiple heads, etc., but with a bunch of complexity ripped out, so there's a bit of a git feel. The main differences, as far as I can tell, are:
  • Versions are hashes of "manifest" files, which contain a list of all files and hashes in the tree along with parent hashes. No nested directory hashes, and apparently no smarts for renames. (I'm guessing here they intend to work like git.)
  • No crypto? Though it mentions commits can be signed with GPG.
  • Network protocol is all HTTP-based, and designed to work over CGI.
  • Custom file delta algorithm and format.
Some other cute bits that aren't really core to the project: Integrated HTTP-based tree browser, wiki, and BTS; and a config switch that switches you into "centralized mode" where every commit and update just does the decentralized thing along a sync with the server.

Some bits that are unclear: (a) how they handle conflicts on the wiki/BTS parts (like, which head becomes the one displayed on the page?); (b) what the bits in their blurbs about allowing "anonymous checkin" really means; (c) whether their login protocol is vulnerable to reply attacks; (d) how their netsync protocol identifies what bits a client is lacking; (e) how they identify branches -- it appears to be just the head commit hash, but then in the update docs they mention "the branch you are on"; and, of course, (f) why the world needs another system like this.

PS: I don't really mean (f) -- I think experimentation is the best way to advance the state of the art -- but I am curious how this is significantly different than the systems it compares itself to. It looks decent enough on paper...
Tags: vcs
Subscribe

  • münchen

    On that note: I'm living in Munich for the next week plus a few days. Do I know anyone around here? (PS: The LJ → PubSubHubbub → Reader…

  • deb/rpm diffing tools

    Dear Linux hackers, Chrome tends to push minor updates (often security) pretty frequently. We'd like to operate as a good member of the Linux…

  • emacs

    I've been using vim for a very long time -- over ten years -- but over those years I've envied more and more the way emacs integrates other software.…

  • Post a new comment

    Error

    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 6 comments