cte / guit fork watch download tarball
public
Description: OS X replacement for gitk / git-gui. Uses ObjC + Cocoa. On hold for now.
Homepage: http://github.com/cte/guit/wikis
Clone URL: git://github.com/cte/guit.git
guit /
name age message
file .gitignore Tue Aug 05 01:47:17 -0700 2008 Update the README with instructions on hacking ... [cte]
directory Classes/ Thu Aug 07 03:30:04 -0700 2008 First cut @ getting the Git index/cache working... [cte]
directory English.lproj/ Thu Aug 07 03:30:04 -0700 2008 First cut @ getting the Git index/cache working... [cte]
directory Guit.xcodeproj/ Thu Aug 07 03:30:04 -0700 2008 First cut @ getting the Git index/cache working... [cte]
file Guit_Prefix.pch Mon Aug 04 23:53:00 -0700 2008 First commit. w00t. [cte]
directory Icons/ Mon Aug 04 23:53:00 -0700 2008 First commit. w00t. [cte]
directory Images/ Mon Aug 04 23:53:00 -0700 2008 First commit. w00t. [cte]
file Info.plist Wed Aug 06 02:32:45 -0700 2008 The LogController now observes the Repository o... [cte]
file README Tue Aug 05 01:47:17 -0700 2008 Update the README with instructions on hacking ... [cte]
directory Screenshots/ Wed Aug 06 02:48:48 -0700 2008 More friendly renames. [cte]
directory XIB/ Thu Aug 07 03:30:04 -0700 2008 First cut @ getting the Git index/cache working... [cte]
directory libgit/ Tue Aug 05 01:47:17 -0700 2008 Update the README with instructions on hacking ... [cte]
file main.m Mon Aug 04 23:53:00 -0700 2008 First commit. w00t. [cte]
README
guit / Open-Source Git Gui for OS X
README
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

How to hack the git core libraries:
 Most (or all) of the guis available for git use the output of the git
 command line utilities as the API for interacting with git. Guit, however,
 uses the static library (libgit.a) that the git utilities link against.
 This static library provides much of the core functionality of git, and
 can be used directly by other applications, allowing them to interact
 with git repositories. This approach to builing a git gui is questionable,
 namely because the core git functions were designed to be used by command
 line tools, rather than a library. This is sometimes problematic, as errors
 often result in a call to exit() (killing the gui), rather than a negative
 return value (or equivalent), which is more sane in the context of a library.
 In the unlikely event that you would like to contribute to this project,
 you may need to hack up the git source code, rebuild libgit.a and copy it
 into this project. Here's how to do that:
 # Start in your guit directory.
 ~ git clone git://git.kernel.org/pub/scm/git/git.git git
 ~ cd git
 # In the future, instead of having to apply a patch with the previous
 # changes that have been made to the git source on behalf of guit, I
 # will maintain a guit fork of the git tree on github, and you can make
 # your changes there.
 ~ git apply ../libgit/guit.patch
 # Make your changes to the git source.
 ~ make -f ../libgit/Makefile clean libgit
 # At this point libgit.a will be updated, and if you want to commit it,
 # you need to save your changes to the git source as a patch, so it can
 # be applied by others, however, I would wait until the guit fork of the
 # git tree is ready; then you can just push your changes there (or send a patch)
 # instead of maintaining a big patch here.
 ~ git diff > ../libgit/guit.patch

cte