Is all that even necessary?

Dulwich is a 100%-complete pure-Python implementation of the Git API, which
optional C extensions for speed. It comes with a simple Git driver remake
that implements the core necessities, a.k.a. it has fetch-pack but no push
and send-pack but no pull. It would still probably easier to extend/finish
that than writing a driver from scratch in C.


On Mon, Mar 30, 2015 at 3:20 PM, Giacomo Tesio <giac...@tesio.it> wrote:

> 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
>>
>>
>>
>>
>>
>>
>


-- 
Ryan
[ERROR]: Your autotools build scripts are 200 lines longer than your
program. Something’s wrong.
http://kirbyfan64.github.io/

Reply via email to