GitX is a graphical client for the git
version control system, written
specifically for OS X Snow Leopard (10.6) and higher.
This means that it has a native interface and tries to integrate with the
operating system as good as possible. Examples of this are drag and drop
support and QuickLook support.
This fork (variant) of GitX focuses on programmer-oriented features for those working with the latest tools for developing software for current Apple platforms. As such, it only supports 64-bit Intel macs, and currently deploying versions of OS X and Xcode.
Drawing several important early improvements from mainline "official" GitX
from GitX (L) and others, we are prioritizing moving away from deprecated
or unreliable technologies like a dependency on command-line git
usage
to drive GitX features; and staying up-to-date with Apple and third-party
frameworks and libraries that are used.
The project is well underway, and based on the solid foundations of GitX and
GitX (L), used day-to-day by our developers. We consider GitX (phere) to be
close to feature-complete, with very few workflows dependant on manual
command-line git
usage.
- History browsing of your repository
- See a nicely formatted diff of any revision
- Search based on author or revision subject
- Look at the complete tree of any revision
- Preview any file in the tree in a text view or with QuickLook
- Drag and drop files out of the tree view to copy them to your system
- Support for all parameters git rev-list has
- Good performance on large (200+ MB) repositories
Developing for GitX (phere) has a few requirements above and beyond those for mainline GitX.
- Very recent Xcode install, 4.2 release or 4.3 beta
- Most development is done on OS X Lion, Snow Leopard may or may not work
CMake
with a working command-line compiling environment for buildinglibgit2
node.js
for buildingSyntaxHighlighter
GitX is licensed under the GPL version 2. For more information, see the attached COPYING file.
GitX is currently hosted at GitHub. It's project page can be found at http://github.com/pieter/gitx. Recent binary releases can be found at http://github.com/pieter/gitx/wikis.
If you wish to follow GitX development, you can download the source code through git:
git clone git://github.com/rowanj/gitx
The easiest way to get GitX running is to download the binary release from the GitHub page.
GitX (phere) uses Sparkle.framework
for built-in update support, so once
you've installed the 0.11 release or later you should be able to update from
the GitX menu.
GitX itself is fairly simple. Most of its power is in the 'gitx' binary, which
you should install through the menu. the 'gitx' binary supports most of git
rev-list's arguments. For example, you can run gitx --all' to display all branches in the repository, or
gitx -- Documentation' to only show commits
relating to the 'Documentation' subdirectory. With `gitx -Shaha', gitx will
only show commits that contain the word 'haha'. Similarly, with 'gitx
v0.2.1..', you will get a list of all commits since version 0.2.1.
Any help on GitX is welcome. GitX is programmed in Objective-C, but even if you are not a programmer you can do useful things. A short selection:
- Create a nice icon;
- Help with the Javascript/HTML views, such as the diff view;
- File bug reports and feature requests.
A TODO list can be found on the wiki: http://github.com/pieter/gitx/wikis/todo