Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Objective-C bindings to libgit2

branch: fix-integrate-…

This branch is 0 commits ahead and 0 commits behind master

Fetching latest commit…

Cannot retrieve the latest commit at this time

README.md

Objective Git - libgit2 wrapper for Objective-C

Objective Git provides Objective-C bindings to the libgit2 linkable C Git library. It has been implemented as a framework right now. This is a good reference for setting up frameworks in xcode This library follows the rugged API as close as possible while trying to maintain a native objective-c feel.

Unit Testing

Unit testing in being done using GHUnit. We are using both the mac and iOS unit testing frameworks. The one minor inconvenience to be aware of is that xcode doesn't like switching between the mac test target and the iOS test target. You generally have to close and reopen the project to move from iOS testing back to mac testing.

libgit2

libgit2 is included as a submodule of Objective Git. After cloning Objective Git, chances are that you will want to also grab its submodules, e.g. as follows:

$ git submodule init
$ git submodule update

Inclusion in Mac OS X projects

It is simple enough to add the ObjectiveGit framework to a desktop application project. An example of this is the CommitViewer example on GitHub. In summary:

  1. Drag the ObjectiveGit.xcodeproj file into the project navigator
  2. Add the ObjectiveGit framework as a target dependency of your application
  3. Link your application with the ObjectiveGit framework.
  4. Add a new Copy Files build phase, set the destination to Frameworks and and the ObjectiveGit framework to that - this will package the framework with your application as an embedded private framework.
  5. Don't forget to #import <ObjectiveGit/ObjectiveGit.h> as you would with any other framework.

Inclusion in iOS projects

Inclusion of Objective Git in iOS projects is somewhat cumbersome on account of iOS not allowing third-party dynamic frameworks. A work-around for this is as follows:

  1. Drag the ObjectiveGit.xcodeproj file into the Project Navigator.
  2. Add ObjectiveGit-iOS as a target dependency of your application.
  3. Link your application to ObjectiveGit (not libgit2-ios or ObjectiveGit.framework)

Todo

Contributing

Fork libgit2/objective-git on GitHub, make it awesomer (preferably in a branch named for the topic), send a pull request.

Contributers

You can see all the amazing people contributing to this project here.

License

MIT. See LICENSE file.

Something went wrong with that request. Please try again.