1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-11-08 02:03:12 +01:00
Find a file
Tim Henigan bf73fc212a difftool: print list of valid tools with '--tool-help'
Since bc7a96a (mergetool--lib: Refactor tools into separate files,
2011-08-18), it is possible to add a new diff tool by creating a simple
script in the '$(git --exec-path)/mergetools' directory.  Updating the
difftool help text is still a manual process, and the documentation can
easily go out of sync.

This commit teaches difftool the '--tool-help' option, which:
  - Reads the list of valid tools from 'mergetools/*'
  - Determines which of them are actually installed
  - Determines which are capable of diffing (i.e. not just a merge tool)
  - Prints the resulting list for the user

Signed-off-by: Tim Henigan <tim.henigan@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-23 12:00:42 -07:00
block-sha1
builtin Merge branch 'az/verify-tag-use-gpg-config' 2012-03-12 15:55:54 -07:00
compat Merge branch 'bw/inet-pton-ntop-compat' into maint 2012-02-13 23:26:31 -08:00
contrib Merge branch 'th/git-diffall' 2012-03-15 21:54:42 -07:00
Documentation difftool: print list of valid tools with '--tool-help' 2012-04-23 12:00:42 -07:00
git-gui
git_remote_helpers
gitk-git
gitweb Merge branch 'jn/maint-do-not-match-with-unsanitized-searchtext' into maint 2012-03-12 15:45:58 -07:00
mergetools mergetools: add a plug-in to support DeltaWalker 2012-03-05 09:31:47 -08:00
perl
po l10n: Improve zh_CN translation for msg "not something we can merge" 2012-03-09 00:22:56 +08:00
ppc
t difftool: print list of valid tools with '--tool-help' 2012-04-23 12:00:42 -07:00
templates
vcs-svn vcs-svn: suppress a -Wtype-limits warning 2012-02-02 11:05:18 -08:00
xdiff Merge branch 'rs/diff-postimage-in-context' 2012-01-29 13:18:55 -08:00
.gitattributes
.gitignore Merge branch 'svn-fe' of git://repo.or.cz/git/jrn into jn/svn-fe 2012-01-27 11:20:00 -08:00
.mailmap
abspath.c
aclocal.m4
advice.c Merge branch 'nd/clone-detached' 2012-01-31 22:24:23 -08:00
advice.h clone: print advice on checking out detached HEAD 2012-01-16 16:26:27 -08:00
alias.c
alloc.c
archive-tar.c
archive-zip.c
archive.c Merge branch 'jk/maint-upload-archive' 2012-01-12 23:34:17 -08:00
archive.h
argv-array.c
argv-array.h
attr.c Merge branch 'maint-1.7.6' into maint-1.7.7 2012-01-11 19:11:00 -08:00
attr.h
base85.c
bisect.c
bisect.h rev-list: fix --verify-objects --quiet becoming --objects 2012-02-28 10:47:30 -08:00
blob.c
blob.h
branch.c
branch.h
builtin.h
bulk-checkin.c
bulk-checkin.h
bundle.c Merge branch 'tr/maint-bundle-boundary' into maint 2012-03-12 15:46:54 -07:00
bundle.h
cache-tree.c Merge branch 'jc/maint-commit-ignore-i-t-a' into maint 2012-02-16 14:08:00 -08:00
cache-tree.h cache-tree: update API to take abitrary flags 2012-02-07 16:35:43 -08:00
cache.h Merge branch 'jh/threadable-symlink-check' 2012-03-06 14:53:07 -08:00
check-builtins.sh
check-racy.c
check_bindir
color.c
color.h
combine-diff.c
command-list.txt
commit.c Merge branch 'nd/index-pack-no-recurse' 2012-01-29 13:18:56 -08:00
commit.h
config.c Merge branch 'ms/maint-config-error-at-eol-linecount' 2012-03-13 12:35:53 -07:00
config.mak.in Makefile: introduce CHARSET_LIB to link with -lcharset 2012-02-13 00:11:01 -08:00
configure.ac configure: allow user to prevent $PATH "sanitization" on Solaris 2012-03-09 11:39:51 -08:00
connect.c
connected.c fetch/receive: remove over-pessimistic connectivity check 2012-03-15 15:23:17 -07:00
connected.h
convert.c Merge branch 'jk/maint-avoid-streaming-filtered-contents' into maint 2012-03-04 22:16:40 -08:00
convert.h teach convert_to_git a "dry run" mode 2012-02-24 14:11:27 -08:00
copy.c
COPYING
credential-cache--daemon.c
credential-cache.c credential-cache: ignore "connection refused" errors 2012-01-16 22:15:19 -08:00
credential-store.c
credential.c
credential.h
csum-file.c
csum-file.h
ctype.c Merge branch 'jc/pickaxe-ignore-case' 2012-03-07 12:12:59 -08:00
daemon.c
date.c Merge branch 'jc/parse-date-raw' into maint 2012-02-13 11:42:15 -08:00
decorate.c
decorate.h
delta.h
diff-delta.c
diff-lib.c diff-index: enable recursive pathspec matching in unpack_trees 2012-01-18 15:44:02 -08:00
diff-no-index.c
diff.c Merge branch 'jc/maint-diff-patch-header' into maint 2012-03-12 15:46:32 -07:00
diff.h Merge branch 'jc/pickaxe-ignore-case' 2012-03-07 12:12:59 -08:00
diffcore-break.c
diffcore-delta.c
diffcore-order.c
diffcore-pickaxe.c pickaxe: allow -i to search in patch case-insensitively 2012-02-28 16:15:29 -08:00
diffcore-rename.c
diffcore.h
dir.c
dir.h
editor.c
entry.c
environment.c
exec_cmd.c
exec_cmd.h
fast-import.c two fixes for fast-import's "ls" command 2012-03-16 08:19:18 -07:00
fetch-pack.h
fixup-builtins
fmt-merge-msg.h
fsck.c
fsck.h
generate-cmdlist.sh
gettext.c
gettext.h
git-add--interactive.perl
git-am.sh am: officially deprecate -b/--binary option 2012-03-13 12:21:04 -07:00
git-archimport.perl
git-bisect.sh
git-compat-util.h Merge branch 'jc/pickaxe-ignore-case' 2012-03-07 12:12:59 -08:00
git-cvsexportcommit.perl git-cvsexportcommit: Fix calling Perl's rel2abs() on MSYS 2012-01-11 18:04:08 -08:00
git-cvsimport.perl
git-cvsserver.perl
git-difftool--helper.sh difftool: teach difftool to handle directory diffs 2012-04-23 11:59:34 -07:00
git-difftool.perl difftool: print list of valid tools with '--tool-help' 2012-04-23 12:00:42 -07:00
git-filter-branch.sh
git-instaweb.sh
git-lost-found.sh
git-merge-octopus.sh
git-merge-one-file.sh
git-merge-resolve.sh
git-mergetool--lib.sh
git-mergetool.sh mergetool: Provide an empty file when needed 2012-01-23 11:50:22 -08:00
git-parse-remote.sh Make git-{pull,rebase} message without tracking information friendlier 2012-03-04 23:00:57 -08:00
git-pull.sh Make git-{pull,rebase} message without tracking information friendlier 2012-03-04 23:00:57 -08:00
git-quiltimport.sh
git-rebase--am.sh
git-rebase--interactive.sh
git-rebase--merge.sh rebase -m: only call "notes copy" when rewritten exists and is non-empty 2012-02-26 16:32:37 -08:00
git-rebase.sh Make git-{pull,rebase} message without tracking information friendlier 2012-03-04 23:00:57 -08:00
git-relink.perl
git-remote-testgit.py
git-repack.sh
git-request-pull.sh request-pull: explicitly ask tags/$name to be pulled 2012-01-31 21:27:58 -08:00
git-send-email.perl
git-sh-i18n.sh i18n: fix auto detection of gettext scheme for shell scripts 2012-03-12 14:41:15 -07:00
git-sh-setup.sh Merge branch 'jc/parse-date-raw' into maint 2012-02-13 11:42:15 -08:00
git-stash.sh
git-submodule.sh submodules: fix ambiguous absolute paths under Windows 2012-03-04 21:22:46 -08:00
git-svn.perl git-svn.perl: fix a false-positive in the "already exists" test 2012-02-21 21:37:31 +00:00
GIT-VERSION-GEN Git 1.7.10-rc1 2012-03-14 15:47:45 -07:00
git-web--browse.sh
git.c
git.spec.in git.spec: Workaround localized messages not put in any RPM 2012-02-03 23:06:30 -08:00
gpg-interface.c
gpg-interface.h
graph.c
graph.h
grep.c Merge branch 'jc/pickaxe-ignore-case' 2012-03-07 12:12:59 -08:00
grep.h grep: respect diff attributes for binary-ness 2012-02-02 10:36:08 -08:00
hash.c
hash.h
help.c pager: find out the terminal width before spawning the pager 2012-02-13 15:08:47 -08:00
help.h
hex.c
http-backend.c
http-fetch.c
http-push.c
http-walker.c
http.c http: support proxies that require authentication 2012-03-02 14:40:14 -08:00
http.h
ident.c
imap-send.c Sync with 1.7.6.6 2012-02-05 23:53:21 -08:00
INSTALL Fix build problems related to profile-directed optimization 2012-02-06 00:15:12 -08:00
kwset.c
kwset.h
levenshtein.c
levenshtein.h
LGPL-2.1
list-objects.c
list-objects.h
ll-merge.c
ll-merge.h
lockfile.c
log-tree.c Merge branch 'nd/maint-refname-in-hierarchy-check' 2012-01-29 13:18:51 -08:00
log-tree.h
mailmap.c mailmap: always return a plain mail address from map_user() 2012-02-06 14:00:06 -08:00
mailmap.h
Makefile Merge branch 'master' into git-po 2012-02-28 12:23:26 +08:00
match-trees.c
merge-file.c
merge-file.h
merge-recursive.c cache-tree: update API to take abitrary flags 2012-02-07 16:35:43 -08:00
merge-recursive.h
name-hash.c
notes-cache.c
notes-cache.h
notes-merge.c
notes-merge.h
notes.c
notes.h
object.c
object.h
pack-check.c
pack-refs.c pack_refs(): remove redundant check 2012-01-17 11:41:41 -08:00
pack-refs.h
pack-revindex.c
pack-revindex.h
pack-write.c
pack.h
pager.c Merge branches zj/decimal-width, zj/term-columns and jc/diff-stat-scaler 2012-02-24 16:07:04 -08:00
parse-options-cb.c
parse-options.c parse-options: typo check for unknown switches 2012-03-04 18:28:59 -08:00
parse-options.h parse-options: remove PARSE_OPT_NEGHELP 2012-02-28 11:48:11 -08:00
patch-delta.c
patch-ids.c
patch-ids.h
path.c standardize and improve lookup rules for external local repos 2012-02-02 16:41:55 -08:00
pkt-line.c
pkt-line.h
preload-index.c
pretty.c
progress.c
progress.h
prompt.c prompt: fall back to terminal if askpass fails 2012-02-03 14:37:04 -08:00
prompt.h
quote.c
quote.h
reachable.c
reachable.h
read-cache.c refresh_index: do not show unmerged path that is outside pathspec 2012-02-17 10:11:05 -08:00
README README: point to Documentation/SubmittingPatches 2012-02-23 11:35:59 -08:00
reflog-walk.c
reflog-walk.h
refs.c refs: remove the extra_refs API 2012-02-12 19:50:39 -08:00
refs.h refs: remove the extra_refs API 2012-02-12 19:50:39 -08:00
RelNotes Git 1.7.9.4 2012-03-12 15:52:52 -07:00
remote-curl.c Merge branch 'sp/smart-http-failure-to-push' into maint 2012-02-05 23:58:43 -08:00
remote.c push: add '--prune' option 2012-02-22 18:17:39 -08:00
remote.h push: add '--prune' option 2012-02-22 18:17:39 -08:00
replace_object.c
rerere.c
rerere.h
resolve-undo.c
resolve-undo.h
revision.c Merge branch 'jc/pickaxe-ignore-case' 2012-03-07 12:12:59 -08:00
revision.h
run-command.c
run-command.h
send-pack.h
sequencer.c cherry-pick: No advice to commit if --no-commit 2012-02-22 11:13:43 -08:00
sequencer.h sequencer: factor code out of revert builtin 2012-01-11 18:11:49 -08:00
server-info.c
setup.c standardize and improve lookup rules for external local repos 2012-02-02 16:41:55 -08:00
sh-i18n--envsubst.c
sha1-array.c
sha1-array.h
sha1-lookup.c
sha1-lookup.h
sha1_file.c Merge branch 'jk/maint-avoid-streaming-filtered-contents' into maint 2012-03-04 22:16:40 -08:00
sha1_name.c
shallow.c
shell.c
shortlog.h
show-index.c
sideband.c
sideband.h
sigchain.c
sigchain.h
strbuf.c Merge branch 'tr/maint-bundle-long-subject' into maint 2012-03-04 22:16:30 -08:00
strbuf.h Merge branch 'tr/maint-bundle-long-subject' into maint 2012-03-04 22:16:30 -08:00
streaming.c
streaming.h
string-list.c
string-list.h
submodule.c
submodule.h
symlinks.c Add threaded versions of functions in symlinks.c. 2012-03-02 23:56:28 -08:00
tag.c
tag.h
tar.h
test-chmtime.c
test-credential.c
test-ctype.c
test-date.c
test-delta.c
test-dump-cache-tree.c cache-tree: update API to take abitrary flags 2012-02-07 16:35:43 -08:00
test-genrandom.c
test-index-version.c
test-line-buffer.c
test-match-trees.c
test-mktemp.c
test-parse-options.c test-parse-options: convert to OPT_BOOL() 2012-02-26 15:18:41 -08:00
test-path-utils.c
test-run-command.c
test-scrap-cache-tree.c
test-sha1.c
test-sha1.sh
test-sigchain.c
test-subprocess.c
test-svn-fe.c
thread-utils.c
thread-utils.h
trace.c
transport-helper.c Merge branch 'sp/smart-http-failure-to-push' into maint 2012-03-04 22:16:33 -08:00
transport.c Merge branch 'fc/push-prune' 2012-02-26 23:05:45 -08:00
transport.h push: add '--prune' option 2012-02-22 18:17:39 -08:00
tree-diff.c
tree-walk.c Document limited recursion pathspec matching with wildcards 2012-01-14 18:39:04 -08:00
tree-walk.h
tree.c
tree.h
unimplemented.sh
unix-socket.c unix-socket: do not let close() or chdir() clobber errno during cleanup 2012-01-11 17:37:10 -08:00
unix-socket.h
unpack-trees.c
unpack-trees.h
upload-pack.c Merge branch 'jk/parse-object-cached' 2012-01-29 13:18:55 -08:00
url.c
url.h
usage.c
userdiff.c drop odd return value semantics from userdiff_config 2012-02-07 10:44:54 -08:00
userdiff.h
utf8.c
utf8.h
walker.c
walker.h
wrap-for-bin.sh
wrapper.c
write_or_die.c
ws.c
wt-status.c
wt-status.h
xdiff-interface.c
xdiff-interface.h
zlib.c

////////////////////////////////////////////////////////////////

	GIT - the stupid content tracker

////////////////////////////////////////////////////////////////

"git" can mean anything, depending on your mood.

 - random three-letter combination that is pronounceable, and not
   actually used by any common UNIX command.  The fact that it is a
   mispronunciation of "get" may or may not be relevant.
 - stupid. contemptible and despicable. simple. Take your pick from the
   dictionary of slang.
 - "global information tracker": you're in a good mood, and it actually
   works for you. Angels sing, and a light suddenly fills the room.
 - "goddamn idiotic truckload of sh*t": when it breaks

Git is a fast, scalable, distributed revision control system with an
unusually rich command set that provides both high-level operations
and full access to internals.

Git is an Open Source project covered by the GNU General Public License.
It was originally written by Linus Torvalds with help of a group of
hackers around the net. It is currently maintained by Junio C Hamano.

Please read the file INSTALL for installation instructions.

See Documentation/gittutorial.txt to get started, then see
Documentation/everyday.txt for a useful minimum set of commands, and
Documentation/git-commandname.txt for documentation of each command.
If git has been correctly installed, then the tutorial can also be
read with "man gittutorial" or "git help tutorial", and the
documentation of each command with "man git-commandname" or "git help
commandname".

CVS users may also want to read Documentation/gitcvs-migration.txt
("man gitcvs-migration" or "git help cvs-migration" if git is
installed).

Many Git online resources are accessible from http://git-scm.com/
including full documentation and Git related tools.

The user discussion and development of Git take place on the Git
mailing list -- everyone is welcome to post bug reports, feature
requests, comments and patches to git@vger.kernel.org (read
Documentation/SubmittingPatches for instructions on patch submission).
To subscribe to the list, send an email with just "subscribe git" in
the body to majordomo@vger.kernel.org. The mailing list archives are
available at http://marc.theaimsgroup.com/?l=git and other archival
sites.

The messages titled "A note from the maintainer", "What's in
git.git (stable)" and "What's cooking in git.git (topics)" and
the discussion following them on the mailing list give a good
reference for project status, development direction and
remaining tasks.