Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A gitk clone for OS X
Objective-C JavaScript Ruby C
Failed to load latest commit information.
Documentation Add a link to the user survey
English.lproj Add preferences for opening things at launch.
GitTest_DataModel.xcdatamodel Initial commit
GitX.xcodeproj Update testing framework
Images Add a preferences window
Site UserManual: Clarify double-click in stage-lines
Sparkle.framework Add Sparkle update framework
html Merge branch 'pu/pb/index_refactor'
libgit2 @ bda29d0 Include libgit2 as submodule and use it to store sha's
speed_test Grapher: add speed tests
test test/index: add more tests
.gitattributes Add objective c diff header
.gitignore Display revision in the About Dialog
.gitmodules Include libgit2 as submodule and use it to store sha's
ApplicationController.h About-Panel: Show git-describe using Info.plist
ApplicationController.m Add preferences for opening things at launch.
COPYING Add a README and license file
CWQuickLook.h Add QuickLook support in tree view
Credits.html Add a link to GitX Homepage in the about dialog
DBPrefsWindowController.h Add a preferences window
DBPrefsWindowController.m Add a preferences window
GitXTesting-Info.plist Testing: add missing file
GitX_Prefix.pch Rename to GitX
Info.plist About-Panel: Show git-describe using Info.plist
NSFileHandleExt.h Add a search field and subject
NSFileHandleExt.m Use NSISOLatin1 encoding instead of ASCII
NSString_RegEx.h NSSTring_RegEx: Add support for regular expressions to NSString
NSString_RegEx.m Fix UTF-8 bug in NSString_RegEx
PBCLIProxy.h Add a diff window
PBCLIProxy.m CLIProxy: pass on the directory in which the `gitx` command is run
PBChangedFile.h Rename 'CachedChanges" to "StagedChanges" for greater consistency
PBChangedFile.m PBChangedFile: Add assert to make sure we're not doing something stupid
PBCollapsibleSplitView.h PBCollapsibleSplitView: Enable collapse/uncollapse using keys
PBCollapsibleSplitView.m PBCollapsibleSplitView: Enable collapse/uncollapse using keys
PBCommitList.h Get rid of some unnecessary casts
PBCommitList.m PBCollapsibleSplitView: Enable collapse/uncollapse using keys
PBCommitMessageView.h CommitView: Add a vertical line to the commit message
PBCommitMessageView.m CommitView: Add a vertical line to the commit message
PBDiffWindow.xib Add a diff window
PBDiffWindowController.h Add a diff window
PBDiffWindowController.m Add a diff window
PBEasyFS.h Delete temporary files when they are deallocated
PBEasyFS.m Delete temporary files when they are deallocated
PBEasyPipe.h PBEasyPipe: Add method that allows you to specify the environment stuff
PBEasyPipe.m PBEasyPipe: Add method that allows you to specify the environment stuff
PBFileChangesTableView.h CommitView: move index functions to separate controller
PBFileChangesTableView.m Ticket #142: Add Show in Finder to Unstaged and Staged table views.
PBGitBinary.h Require Git 1.6.0 or higher
PBGitBinary.m Require Git 1.6.0 or higher
PBGitCommit.h Fix moving of refs
PBGitCommit.m HistoryView: don't load in commit information in a separate thread an…
PBGitCommitController.h Remove cruft
PBGitCommitController.m PBGitIndex: post notifications when index stuff fails
PBGitCommitView.xib GitIndexController: reorder methods a bit, remove unnecessary stuff
PBGitConfig.h Add a way to retrieve values from .git/config files
PBGitConfig.m PBGitConfig: Add missing sentinel
PBGitDefaults.h Add preferences for opening things at launch.
PBGitDefaults.m Add preferences for opening things at launch.
PBGitGraphLine.h Use structs for graph lines
PBGitGraphLine.m Use structs for graph lines
PBGitGrapher.h PBGitCommit: Don't store refs
PBGitGrapher.mm PBGitCommit: Don't store refs
PBGitHistoryController.h Add PBCollapsibleSplitView as subclass of PBNiceSplitView
PBGitHistoryController.m HistoryView: Remove raw view
PBGitHistoryView.xib HistoryView: Remove raw view
PBGitIndex.h PBGitIndex: post notifications when index stuff fails
PBGitIndex.m GitIndex: fix status update when changed file is deleted
PBGitIndexController.h GitIndexController: reorder methods a bit, remove unnecessary stuff
PBGitIndexController.m GitIndexController: reorder methods a bit, remove unnecessary stuff
PBGitLane.h Fix compilation with GCC 4.2
PBGitLane.mm PBGitLane: remove functions with NSString arguments
PBGitRef.h Add a PBGitRef, a class to represent refs
PBGitRef.m Show refs in HTML view
PBGitRepository.h PBGitRepository: Add support for changing the environment when execut…
PBGitRepository.m PBGitRepository: Clean up the readFromURL: method
PBGitRevList.h GitRevList: replace 'id' with PBGitRepository
PBGitRevList.mm GitRevList: run the log command in the correct directory when available
PBGitRevSpecifier.h RevSpecifier: Add support for a working directory
PBGitRevSpecifier.m RevSpecifier: Add support for a working directory
PBGitRevisionCell.h Fix compilation with GCC 4.2
PBGitRevisionCell.m HistoryView: Change the way the HEAD is displayed
PBGitTree.h PBGitTree: Don't try to print binary-file contents
PBGitTree.m PBGitTree: Improve binary-file decision
PBGitWindowController.h PBGitWindowController: Use beginSheetModalForWindow instead of runModal
PBGitWindowController.m Set keyboard focus reasonably when switching between views.
PBGitXProtocol.h Add a GitX:// protocol handler
PBGitXProtocol.m Add a GitX:// protocol handler
PBGraphCellInfo.h PBGraphCellInfo: remove unneeded data member
PBGraphCellInfo.m Use structs for graph lines
PBIconAndTextCell.h Hit testing and action sending
PBIconAndTextCell.m Reduce font size of staged/unstaged changes lists.
PBNSURLPathUserDefaultsTransfomer.h Add a preferences window
PBNSURLPathUserDefaultsTransfomer.m Add a preferences window
PBNiceSplitView.h History/CommitView: Use a nice-looking splitview divider
PBNiceSplitView.m History/CommitView: Use a nice-looking splitview divider
PBPrefsWindowController.h Add panel for integration settings.
PBPrefsWindowController.m Add panel for integration settings.
PBQLOutlineView.h First part of splitting views
PBQLOutlineView.m HistoryController: Use a programatically created context menu
PBRefContextDelegate.h GitRevisionCell: Allow right-clicking on refs
PBRefController.h Tickets #151 and #155: check for illegal branch names before creating.
PBRefController.m PBGitWindowController: Use beginSheetModalForWindow instead of runModal
PBRefMenuItem.h RefController: Refactor ref menu to its own class
PBRefMenuItem.m Added very basic tag info menu item and alert.
PBRepositoryDocumentController.h Add a --commit option to the CLI client
PBRepositoryDocumentController.m Fix many gcc 4.2 compiler warnings
PBServicesController.h Add a Complete SHA service
PBServicesController.m Add a Complete SHA service
PBUnsortableTableHeader.h HistoryView: Allow tripple-clicking on header to undo sorting
PBUnsortableTableHeader.m HistoryView: Allow tripple-clicking on header to undo sorting
PBViewController.h Set keyboard focus reasonably when switching between views.
PBViewController.m Set keyboard focus reasonably when switching between views.
PBWebChangesController.h CommitView: Remove cruft
PBWebChangesController.m Remove cruft
PBWebController.h Fix memory leaks
PBWebController.m Make confirmation of Gists optional
PBWebDiffController.h Add a diff window
PBWebDiffController.m Fix many gcc 4.2 compiler warnings
PBWebHistoryController.h GitRevisionCell: Allow right-clicking on refs
PBWebHistoryController.m HistoryView: don't load in commit information in a separate thread an…
README Update documentation
Rakefile Always build in the project-relative build/ folder with `rake build_app`
RoundedRectangle.h Fix compiler warnings
RoundedRectangle.m Fix compiler warnings
SpeedTest-Info.plist Create a new SpeedTest target
feed.xml Update Sparke feed (oops)
gitx.icns Add a new icon in OS X style
gitx.m Merge branch 'stable'
main.m Initial commit
speedtest.h Create a new SpeedTest target
speedtest.m Create a new SpeedTest target
version.plist Initial commit

README

GitX
---------------

# What is GitX?

GitX is a gitk like clone written specifically for OS X Leopard 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.


# Features

The project is currently still in its starting phases. As time goes on,
hopefully more features will be added. Currently GitX supports the following:

  * 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
# License

GitX is licensed under the GPL version 2. For more information, see the attached COPYING file.

# Downloading

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/pieter/gitx

# Installation

The easiest way to get GitX running is to download the binary release from the
wiki. If you wish to compile it yourself, you will need XCode 3.0 or later. As
GitX makes use of features available only on Leopard (such as garbage
collection), you will not be able to compile it on previous versions of OS X.

To compile GitX, open the GitX.xcodeproj file and hit "Build".

# Usage

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.

# Helping out

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

Something went wrong with that request. Please try again.