# Is there have development library or API for git ?

3 messages from 2008-08-25 to 2008-08-26. Participants: Sky Patrick, Shawn O. Pearce, Scott Chacon.
Thread: https://gitlist.dev/t/15194

## Sky Patrick, 2008-08-25 04:09

Subject: Is there have development library or API for git ?
Message-ID: <976e6d070808242109s53af2624td45dbb936ca25896@mail.gmail.com>
URL: https://gitlist.dev/e/976e6d070808242109s53af2624td45dbb936ca25896%40mail.gmail.com
In-Reply-To: <976e6d070808242025n24b282dei5c79b4c9bf2e390e@mail.gmail.com>

```
Hi,

Is there have development library or API for git ? Thank ~

Regards,
Patrick

```

## Shawn O. Pearce, 2008-08-25 04:12

Subject: Re: Is there have development library or API for git ?
Message-ID: <20080825041217.GA19127@spearce.org>
URL: https://gitlist.dev/e/20080825041217.GA19127%40spearce.org
In-Reply-To: <976e6d070808242109s53af2624td45dbb936ca25896@mail.gmail.com>

```
Sky Patrick <patricksky852@gmail.com> wrote:
> Is there have development library or API for git ? Thank ~

No.  However you can look at jgit if you are programming in Java.
In Ruby look up Grit (a wrapper around the plumbing commands), or
the pure-Ruby implementation of Git (I forget its name).

Anything else, use the plumbing commands and just fork+exec what
you need.  Many of them have a -z flag to use null termination
on records, making it easier (and safer) to slurp data that may
contain LFs.

-- 
Shawn.

```

## Scott Chacon, 2008-08-26 18:48

Subject: Re: Is there have development library or API for git ?
Message-ID: <d411cc4a0808261148g792c01ax325aff343e7c3333@mail.gmail.com>
URL: https://gitlist.dev/e/d411cc4a0808261148g792c01ax325aff343e7c3333%40mail.gmail.com
In-Reply-To: <20080825041217.GA19127@spearce.org>

```
The Ruby library Grit actually does a lot of stuff in pure ruby rather
than forking, but you also might want to take a look at libgitcore:

http://git.codethink.co.uk/?p=git;a=shortlog;h=libgitcore

The codethink guys have stripped and rewritten a bunch of git to
behave more like a linkable library, and I think they have a python
binding as an example.

Scott

On Sun, Aug 24, 2008 at 9:12 PM, Shawn O. Pearce <spearce@spearce.org> wrote:
> Sky Patrick <patricksky852@gmail.com> wrote:
>> Is there have development library or API for git ? Thank ~
>
> No.  However you can look at jgit if you are programming in Java.
> In Ruby look up Grit (a wrapper around the plumbing commands), or
> the pure-Ruby implementation of Git (I forget its name).
>
> Anything else, use the plumbing commands and just fork+exec what
> you need.  Many of them have a -z flag to use null termination
> on records, making it easier (and safer) to slurp data that may
> contain LFs.
>
> --
> Shawn.
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

```
