From: David Roundy <droundy@abridgegame.org>
To: Juliusz Chroboczek <Juliusz.Chroboczek@pps.jussieu.fr>
Cc: darcs-devel@darcs.net, git@vger.kernel.org,
Linus Torvalds <torvalds@osdl.org>
Subject: Re: [darcs-devel] Darcs-Git: upgrading to Git 0.99
Date: Sun, 17 Jul 2005 06:40:42 -0400 [thread overview]
Message-ID: <20050717104035.GA8315@abridgegame.org> (raw)
In-Reply-To: <7islyev5s4.fsf@lanthane.pps.jussieu.fr>
On Sat, Jul 16, 2005 at 10:45:47PM +0200, Juliusz Chroboczek wrote:
>
> I'd like to upgrade the Git code used in Darcs to 0.99 (we're
> currently using 0.6). [...]
Great!
> Now I'm wondering how to do that. Currently, I'm using a nasty hack
> using the C preprocessor to include just the sources we need in
> Darcs. As 0.99 builds a ``libgit.a'', I'd like to use that instead.
>
> There are three ways to do that:
>
> (1) require that the users put a suitable libgit.a in /usr/local/lib
> before building Darcs, and distribute a tarball of Git from
> darcs.net;
>
> (2) include just the sources needed for libgit.a in Darcs, and have
> the Darcs build build a local libgit
>
> (3) as (2), but include all of Git, including their
> ``user-friendly'' scripts.
>
> Solution (2) will include 33 files totalling 167KB, while (3) is about
> a megabyte of source.
I'd really prefer option (1), *if* the git folks can confirm that the API
is at least intended to be stable. As an subtly different option, we could
include a script that would download and untar the git sources and then
build them. But it'd be great to allow users to upgrade their libgit
without our intervention if a protocol or repository format change occurs
that doesn't affect the API.
I guess the real question is whether the API is more or less stable than
the protocols and disk formats. If the API is more stable, we'd rather
link with an external libgit and be robust with respect to on-disk format
changes (such as pack files). If the on-disk format is more stable, we'd
rather include a copy of the source code and be robust with respect to API
changes of libgit.
A fourth option would be to include git sources, but also include a
configure flag that could be used to link with an external libgit. This is
probably the most robust solution, but also the most complex solution (and
thus probably not the best).
--
David Roundy
http://www.darcs.net
next prev parent reply other threads:[~2005-07-17 10:47 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-07-16 20:45 Darcs-Git: upgrading to Git 0.99 Juliusz Chroboczek
2005-07-17 10:40 ` David Roundy [this message]
2005-07-18 4:46 ` git, porcelain, darcs, and version 1.0 Bryan Larsen
2005-07-18 19:11 ` Junio C Hamano
2005-07-18 20:18 ` Bryan Larsen
2005-07-18 19:49 ` Juliusz Chroboczek
2005-07-18 20:28 ` Bryan Larsen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20050717104035.GA8315@abridgegame.org \
--to=droundy@abridgegame.org \
--cc=Juliusz.Chroboczek@pps.jussieu.fr \
--cc=darcs-devel@darcs.net \
--cc=git@vger.kernel.org \
--cc=torvalds@osdl.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).