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