Jay Taylor's notes

back to listing index

ChimeraCoder/gitgo

[web search]
Original source (github.com)
Tags: git golang go library package github.com
Clipped on: 2016-02-16

Skip to content
A Go implementation of Git functions
Go C Shell
gitgo Update gitgo sample binary with new Log signature 29 days ago
test_data Add LICENSE (GPLv2) for files excluded from the general license 8 days ago
.gitignore Remove accidental binary file from tracking 10 months ago
.travis.yml Add .travis.yml 10 months ago
LICENSE Update LICENSE file (Apache 2.0) 8 days ago
README Fix typo in README 9 months ago
README.md Add symlink to README for Github pretty-print 10 months ago
cat-file.go Convert basedir to os.File from string 29 days ago
cat-file_test.go Convert basedir to os.File from string 29 days ago
delta.go Remove unnecessary argument to readByte 9 months ago
delta_test.go Fix bug with OFS objects with length < 128 bytes 10 months ago
log.go Update Log function signature to use *os.File instead of string 29 days ago
log_test.go Update Log function signature to use *os.File instead of string 29 days ago
object.go Convert basedir to os.File from string 29 days ago
object_test.go Add support for AuthorDate field in commit 9 months ago
pack.go Convert basedir to os.File from string 29 days ago
packobjecttype_string.go Update Stringer output 10 months ago
repository.go Update Log function signature to use *os.File instead of string 29 days ago
scanner.go Fix imports 9 months ago
setup_test.go Convert basedir to os.File from string 29 days ago
verify-pack.go Add test for Type() function on packObject 10 months ago
verify-pack_test.go Convert basedir to os.File from string 29 days ago

README.md

gitgo

Image (Asset 3/4) alt= Image (Asset 4/4) alt=

Gitgo provides Go functions for interacting with Git repositories.

Unlike libgit2, which is written in C, Gitgo is written in pure Go, and can be compiled and cross-compiled easily for all platforms supported by Go.

Installation

  $ go get github.com/ChimeraCoder/gitgo  

Usage

Full documentation is available on GoDoc.

Gitgo is a library intended to be used by other applications, rather than a replacement for the  git  command-line tools. However, gitgo does provide the  gitgo  binary, which is used for testing the gitgo library functions and demonstrating their functionality:

normal$ cd $GOPATH/src/github.com/ChimeraCoder/gitgo
$ gitgo log 1d833eb5b6c5369c0cb7a4a3e20ded237490145f
commit 1d833eb5b6c5369c0cb7a4a3e20ded237490145f
Author: aditya <dev@chimeracoder.net>
Date:   Mon Apr 6 15:49:15 2015 -0400

    Parse git object into struct and add corresponding test

commit a7f92c920ce85f07a33f948aa4fa2548b270024f
Author: aditya <dev@chimeracoder.net>
Date:   Fri Apr 3 12:38:24 2015 -0400

    Add CatFile function and corresponding test

commit 97eed02ebe122df8fdd853c1215d8775f3d9f1a1
Author: aditya <dev@chimeracoder.net>
Date:   Fri Apr 3 11:45:00 2015 -0400

    First commit. Create .gitignore

normal

Note that the  gitgo  binary does not support all (or even most) of the functions provided by the gitgo library; it is intended for demonstration purposes and testing only.