blob: 78a0d955ec22e22fbb1028f4eb6bfceeafc976f7 [file] [log] [blame]
Junio C Hamano076ffcc2013-02-06 05:13:211A short Git tools survey
Junio C Hamanodecf50e2006-03-05 10:51:142========================
3
4
5Introduction
6------------
7
Junio C Hamano076ffcc2013-02-06 05:13:218Apart from Git contrib/ area there are some others third-party tools
Junio C Hamanodecf50e2006-03-05 10:51:149you may want to look.
10
11This document presents a brief summary of each tool and the corresponding
12link.
13
14
Junio C Hamano341071d2006-06-04 07:24:4815Alternative/Augmentative Porcelains
Junio C Hamanodecf50e2006-03-05 10:51:1416-----------------------------------
17
18 - *Cogito* (http://www.kernel.org/pub/software/scm/cogito/)
19
Junio C Hamano076ffcc2013-02-06 05:13:2120 Cogito is a version control system layered on top of the Git tree history
Junio C Hamanodecf50e2006-03-05 10:51:1421 storage system. It aims at seamless user interface and ease of use,
Junio C Hamano076ffcc2013-02-06 05:13:2122 providing generally smoother user experience than the "raw" Core Git
Junio C Hamanodecf50e2006-03-05 10:51:1423 itself and indeed many other version control systems.
24
Junio C Hamanofb4fa4e2007-10-30 08:24:2425 Cogito is no longer maintained as most of its functionality
Junio C Hamano076ffcc2013-02-06 05:13:2126 is now in core Git.
Junio C Hamanofb4fa4e2007-10-30 08:24:2427
Junio C Hamanodecf50e2006-03-05 10:51:1428
29 - *pg* (http://www.spearce.org/category/projects/scm/pg/)
30
Junio C Hamano076ffcc2013-02-06 05:13:2131 pg is a shell script wrapper around Git to help the user manage a set of
32 patches to files. pg is somewhat like quilt or StGit, but it does have a
Junio C Hamanodecf50e2006-03-05 10:51:1433 slightly different feature set.
34
35
36 - *StGit* (http://www.procode.org/stgit/)
37
Junio C Hamano076ffcc2013-02-06 05:13:2138 Stacked Git provides a quilt-like patch management functionality in the
39 Git environment. You can easily manage your patches in the scope of Git
Junio C Hamanodecf50e2006-03-05 10:51:1440 until they get merged upstream.
41
42
43History Viewers
44---------------
45
46 - *gitk* (shipped with git-core)
47
Junio C Hamano076ffcc2013-02-06 05:13:2148 gitk is a simple Tk GUI for browsing history of Git repositories easily.
Junio C Hamanodecf50e2006-03-05 10:51:1449
50
51 - *gitview* (contrib/)
52
Junio C Hamano076ffcc2013-02-06 05:13:2153 gitview is a GTK based repository browser for Git
Junio C Hamanodecf50e2006-03-05 10:51:1454
55
Junio C Hamanof9771f62007-01-17 17:42:3056 - *gitweb* (shipped with git-core)
Junio C Hamanodecf50e2006-03-05 10:51:1457
Junio C Hamano076ffcc2013-02-06 05:13:2158 Gitweb provides full-fledged web interface for Git repositories.
Junio C Hamanodecf50e2006-03-05 10:51:1459
60
61 - *qgit* (http://digilander.libero.it/mcostalba/)
62
Junio C Hamano076ffcc2013-02-06 05:13:2163 QGit is a git/StGit GUI viewer built on Qt/C++. QGit could be used
Junio C Hamanodecf50e2006-03-05 10:51:1464 to browse history and directory tree, view annotated files, commit
65 changes cherry picking single files or applying patches.
Junio C Hamano076ffcc2013-02-06 05:13:2166 Currently it is the fastest and most feature rich among the Git
Junio C Hamanodecf50e2006-03-05 10:51:1467 viewers and commit tools.
68
Junio C Hamanof9771f62007-01-17 17:42:3069 - *tig* (http://jonas.nitro.dk/tig/)
70
Junio C Hamano076ffcc2013-02-06 05:13:2171 tig by Jonas Fonseca is a simple Git repository browser
Junio C Hamanof9771f62007-01-17 17:42:3072 written using ncurses. Basically, it just acts as a front-end
73 for git-log and git-show/git-diff. Additionally, you can also
Junio C Hamano076ffcc2013-02-06 05:13:2174 use it as a pager for Git commands.
Junio C Hamanodecf50e2006-03-05 10:51:1475
76
77Foreign SCM interface
78---------------------
79
Junio C Hamanof9771f62007-01-17 17:42:3080 - *git-svn* (shipped with git-core)
Junio C Hamanodecf50e2006-03-05 10:51:1481
82 git-svn is a simple conduit for changesets between a single Subversion
Junio C Hamano076ffcc2013-02-06 05:13:2183 branch and Git.
Junio C Hamanodecf50e2006-03-05 10:51:1484
85
86 - *quilt2git / git2quilt* (http://home-tj.org/wiki/index.php/Misc)
87
88 These utilities convert patch series in a quilt repository and commit
Junio C Hamano076ffcc2013-02-06 05:13:2189 series in Git back and forth.
Junio C Hamanodecf50e2006-03-05 10:51:1490
91
Junio C Hamano42f855f2007-02-06 00:09:3892 - *hg-to-git* (contrib/)
93
Junio C Hamano076ffcc2013-02-06 05:13:2194 hg-to-git converts a Mercurial repository into a Git one, and
Junio C Hamano42f855f2007-02-06 00:09:3895 preserves the full branch history in the process. hg-to-git can
Junio C Hamano076ffcc2013-02-06 05:13:2196 also be used in an incremental way to keep the Git repository
Junio C Hamano42f855f2007-02-06 00:09:3897 in sync with the master Mercurial repository.
98
99
Junio C Hamanodecf50e2006-03-05 10:51:14100Others
101------
102
103 - *(h)gct* (http://www.cyd.liu.se/users/~freku045/gct/)
104
Junio C Hamano076ffcc2013-02-06 05:13:21105 Commit Tool or (h)gct is a GUI enabled commit tool for Git and
Junio C Hamanodecf50e2006-03-05 10:51:14106 Mercurial (hg). It allows the user to view diffs, select which files
107 to committed (or ignored / reverted) write commit messages and
108 perform the commit itself.
109
110 - *git.el* (contrib/)
111
Junio C Hamanoa080bc32013-04-12 21:33:01112 This is an Emacs interface for Git. The user interface is modelled on
Junio C Hamanodecf50e2006-03-05 10:51:14113 pcl-cvs. It has been developed on Emacs 21 and will probably need some
114 tweaking to work on XEmacs.
Junio C Hamanof9771f62007-01-17 17:42:30115
116
117http://git.or.cz/gitwiki/InterfacesFrontendsAndTools has more
118comprehensive list.