Actually, Jeff I appreciate a lot your work on mercurial. I know I could
use the bookmarks extension to achieve a similar process with hg (never
tried darcs and bzr seriously, sorry). but I still prefer git to mercurial,
since it has been designed around the features that I like (when working
alone) or need (when working in large team over years long projects).

But this is personal taste, and I'm not a git evangelist. I just replied to
Charles asking for the features we use in git.

Btw, ever heard of http://libgit2.org ?
Plain c89. No external dependencies.

In theory, one could implement a native gitfs over that, in C, using the
network fs available in Plan9.

Compared to hgfs, a bit more design of the fs structure would probably be
needed to capture the concept of branch in a hierarchical filesystem.

How much you would estimate such development?


Giacomo



2015-03-30 18:16 GMT+02:00 Jeff Sickel <j...@corpus-callosum.com>:

>
> > On Mar 30, 2015, at 4:55 AM, Giacomo Tesio <giac...@tesio.it> wrote:
> >
> > Ah, a small addendum: obviously we also use tags a lot to give a
> specific commit (and related history) a name.
> > This is done automatically by build servers for the "official" tags, and
> manually by developers whenever they want in their own repository (often
> with tags like, "workedhere", "shittorefactortomorrow" and so on).
>
> All of those features are available in hg, darcs, and other dscm tools.
>
> But to get back on topic, unless I’ve overlooked a contrib package
> somewhere, how about we begin with the requirements to get a fully working
> git installed on Plan 9.  For example,
>
> ## the dependencies required for git on a bare-bones FreeBSD install:
> # pkg install git
> Updating FreeBSD repository catalogue...
> FreeBSD repository is up-to-date.
> All repositories are up-to-date.
> The following 18 packages will be affected (of 0 checked):
>
> New packages to be INSTALLED:
>         git: 2.3.4
>         expat: 2.1.0_2
>         p5-Authen-SASL: 2.16_1
>         p5-GSSAPI: 0.28_1
>         perl5: 5.18.4_11
>         p5-Digest-HMAC: 1.03_1
>         p5-Net-SMTP-SSL: 1.01_3
>         p5-IO-Socket-SSL: 2.012
>         p5-Mozilla-CA: 20141217
>         p5-Net-SSLeay: 1.68
>         p5-Socket: 2.018
>         p5-IO-Socket-IP: 0.37
>         python27: 2.7.9
>         libffi: 3.2.1
>         p5-Error: 0.17023
>         curl: 7.41.0
>         ca_root_nss: 3.18
>         cvsps: 2.1_1
>
>
>
> I’m not sure what cvsps is for, that seems to have cropped up on the fbsd
> pkg sometime between git versions 2.3.1 and 2.3.4.  It’s been
> years^wdecades since I’ve tinkered with perl, and I’m fairly certain the
> perl 5.8 version available on Plan 9 won’t support the modules included in
> the above list.  So Plan 9 needs a modern perl to run git effectively with
> specific attention to the additional modules.  Expat is the “eXpat XML
> parser library”.  Libffi is something maintained on sources.redhat.com.
> Many of those modules depend on OpenSSL, so add that to the list.  It’s
> also possible a recent port of bash will also be required as the git
> support scripts may not work with our ape/sh or ape/psh.  We’ve got python
> 2.7.8 [.9 soon] covered.
>
> Piece of cake, all that should fit on a coaster.
>
> -jas
>
>
>
>
>
>

Reply via email to