| A short git tools survey | |
| ======================== | |
| Introduction | |
| ------------ | |
| Apart from git contrib/ area there are some others third-party tools | |
| you may want to look. | |
| This document presents a brief summary of each tool and the corresponding | |
| link. | |
| Alternative/Augmentative Porcelains | |
| ----------------------------------- | |
| - *Cogito* (http://www.kernel.org/pub/software/scm/cogito/) | |
| Cogito is a version control system layered on top of the git tree history | |
| storage system. It aims at seamless user interface and ease of use, | |
| providing generally smoother user experience than the "raw" Core GIT | |
| itself and indeed many other version control systems. | |
| Cogito is no longer maintained as most of its functionality | |
| is now in core GIT. | |
| - *pg* (http://www.spearce.org/category/projects/scm/pg/) | |
| pg is a shell script wrapper around GIT to help the user manage a set of | |
| patches to files. pg is somewhat like quilt or StGIT, but it does have a | |
| slightly different feature set. | |
| - *StGit* (http://www.procode.org/stgit/) | |
| Stacked GIT provides a quilt-like patch management functionality in the | |
| GIT environment. You can easily manage your patches in the scope of GIT | |
| until they get merged upstream. | |
| History Viewers | |
| --------------- | |
| - *gitk* (shipped with git-core) | |
| gitk is a simple Tk GUI for browsing history of GIT repositories easily. | |
| - *gitview* (contrib/) | |
| gitview is a GTK based repository browser for git | |
| - *gitweb* (shipped with git-core) | |
| GITweb provides full-fledged web interface for GIT repositories. | |
| - *qgit* (http://digilander.libero.it/mcostalba/) | |
| QGit is a git/StGIT GUI viewer built on Qt/C++. QGit could be used | |
| to browse history and directory tree, view annotated files, commit | |
| changes cherry picking single files or applying patches. | |
| Currently it is the fastest and most feature rich among the git | |
| viewers and commit tools. | |
| - *tig* (http://jonas.nitro.dk/tig/) | |
| tig by Jonas Fonseca is a simple git repository browser | |
| written using ncurses. Basically, it just acts as a front-end | |
| for git-log and git-show/git-diff. Additionally, you can also | |
| use it as a pager for git commands. | |
| Foreign SCM interface | |
| --------------------- | |
| - *git-svn* (shipped with git-core) | |
| git-svn is a simple conduit for changesets between a single Subversion | |
| branch and git. | |
| - *quilt2git / git2quilt* (http://home-tj.org/wiki/index.php/Misc) | |
| These utilities convert patch series in a quilt repository and commit | |
| series in git back and forth. | |
| - *hg-to-git* (contrib/) | |
| hg-to-git converts a Mercurial repository into a git one, and | |
| preserves the full branch history in the process. hg-to-git can | |
| also be used in an incremental way to keep the git repository | |
| in sync with the master Mercurial repository. | |
| Others | |
| ------ | |
| - *(h)gct* (http://www.cyd.liu.se/users/~freku045/gct/) | |
| Commit Tool or (h)gct is a GUI enabled commit tool for git and | |
| Mercurial (hg). It allows the user to view diffs, select which files | |
| to committed (or ignored / reverted) write commit messages and | |
| perform the commit itself. | |
| - *git.el* (contrib/) | |
| This is an Emacs interface for git. The user interface is modeled on | |
| pcl-cvs. It has been developed on Emacs 21 and will probably need some | |
| tweaking to work on XEmacs. | |
| http://git.or.cz/gitwiki/InterfacesFrontendsAndTools has more | |
| comprehensive list. |