1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-11-02 15:28:21 +01:00
Find a file
Junio C Hamano 9619617d33 fix overstrict :<path> diagnosis
Given "git log :", we get a disambiguation message that tries to be
helpful and yet totally misses the point, i.e.

    $ git log :
    fatal: Path '' does not exist (neither on disk nor in the index).
    $ git log :/
    fatal: Path '/' exists on disk, but not in the index.

An empty path nor anything that begins with '/' cannot possibly in the
index, and it is wrong to guess that the user might have meant to access
such an index entry.

It should yield the same error message as "git log '*.c'", i.e.

    $ git log '*.c'
    fatal: ambiguous argument '*.c': unknown revision or path not in the working tree.
    Use '--' to separate paths from revisions

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-10 12:36:06 -07:00
block-sha1
builtin grep: use get_pathspec() correctly 2011-05-10 12:11:01 -07:00
compat Merge branch 'maint' 2011-03-16 16:59:30 -07:00
contrib Merge branch 'ss/mergetool--lib' 2011-03-19 23:24:27 -07:00
Documentation Revert "magic pathspec: add ":(icase)path" to match case insensitively" 2011-05-10 10:23:41 -07:00
git-gui Merge branch 'master' of git://repo.or.cz/git-gui 2010-11-05 10:41:09 -07:00
git_remote_helpers
gitk-git Merge branch 'maint' 2011-01-08 23:48:47 -08:00
gitweb gitweb: Always call parse_date with timezone parameter 2011-03-19 21:46:32 -07:00
perl perl: command_bidi_pipe() method should set-up git environmens 2011-02-14 15:28:13 -08:00
po i18n: Makefile: "pot" target to extract messages marked for translation 2011-03-09 23:52:52 -08:00
ppc
t Merge branch 'mm/maint-log-n-with-diff-filtering' 2011-03-19 23:25:38 -07:00
templates
vcs-svn vcs-svn: remove spurious semicolons 2011-03-16 12:56:23 -07:00
xdiff Merge branch 'cb/diff-fname-optim' into maint 2010-11-24 12:46:26 -08:00
.gitattributes
.gitignore gitignore: add test-mktemp to ignore list 2011-02-13 15:15:08 -08:00
.mailmap Martin Langhoff has a new e-mail address 2010-10-06 12:08:48 -07:00
abspath.c Name make_*_path functions more accurately 2011-03-17 16:08:30 -07:00
aclocal.m4 configure: use AC_LANG_PROGRAM consistently 2011-02-14 10:55:15 -08:00
advice.c
advice.h
alias.c
alloc.c
archive-tar.c
archive-zip.c
archive.c archive: improve --verbose description 2010-11-15 10:05:38 -08:00
archive.h
attr.c
attr.h
base85.c
bisect.c
bisect.h
blob.c
blob.h
branch.c Merge branch 'jh/maint-do-not-track-non-branches' 2011-03-15 14:22:13 -07:00
branch.h Change incorrect "remote branch" to "remote tracking branch" in C code 2010-11-03 09:20:47 -07:00
builtin.h repo-config: add deprecation warning 2011-02-13 15:13:41 -08:00
bundle.c bundle: Use OFS_DELTA in bundle files 2011-02-06 22:50:26 -08:00
bundle.h
cache-tree.c
cache-tree.h
cache.h Merge branch 'ab/i18n-basic' 2011-03-19 23:24:42 -07:00
check-builtins.sh
check-racy.c
check_bindir
color.c wt-status: add helpers for printing wt-status lines 2011-03-08 12:12:42 -08:00
color.h wt-status: add helpers for printing wt-status lines 2011-03-08 12:12:42 -08:00
combine-diff.c
command-list.txt
commit.c Add const to parse_{commit,tag}_buffer() 2011-02-07 15:04:42 -08:00
commit.h standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
config.c Merge branch 'maint' 2011-03-16 16:59:30 -07:00
config.mak.in Merge branch 'jk/asciidoc-update' 2010-12-12 21:49:51 -08:00
configure.ac configure: use AC_LANG_PROGRAM consistently 2011-02-14 10:55:15 -08:00
connect.c Make sure that git_getpass() never returns NULL 2010-09-30 12:22:02 -07:00
convert.c enums: omit trailing comma for portability 2011-03-16 12:31:32 -07:00
copy.c
COPYING
csum-file.c
csum-file.h
ctype.c magic pathspec: futureproof shorthand form 2011-04-08 16:19:48 -07:00
daemon.c daemon: support <directory> arguments again 2011-01-04 11:23:42 -08:00
date.c
decorate.c
decorate.h
delta.h
diff-delta.c
diff-lib.c Convert ce_path_match() to use struct pathspec 2011-02-03 14:08:30 -08:00
diff-no-index.c Convert struct diff_options to use struct pathspec 2011-02-03 12:28:15 -08:00
diff.c Merge branch 'jk/merge-rename-ux' 2011-03-19 23:23:56 -07:00
diff.h Merge branch 'jk/merge-rename-ux' 2011-03-19 23:23:56 -07:00
diffcore-break.c
diffcore-delta.c
diffcore-order.c
diffcore-pickaxe.c diffcore-pickaxe.c: a void function shouldn't try to return something 2010-10-06 13:45:18 -07:00
diffcore-rename.c Merge branch 'jk/merge-rename-ux' 2011-03-19 23:23:56 -07:00
diffcore.h
dir.c Name make_*_path functions more accurately 2011-03-17 16:08:30 -07:00
dir.h pathspec: add match_pathspec_depth() 2011-02-03 14:08:30 -08:00
editor.c
entry.c entry.c: remove "checkout-index" from error messages 2010-11-29 14:03:07 -08:00
environment.c Name make_*_path functions more accurately 2011-03-17 16:08:30 -07:00
exec_cmd.c Name make_*_path functions more accurately 2011-03-17 16:08:30 -07:00
exec_cmd.h
fast-import.c Merge branch 'maint' 2011-03-16 16:59:30 -07:00
fetch-pack.h standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
fixup-builtins
fsck.c strbuf: add strbuf_vaddf 2011-02-26 01:06:50 -08:00
fsck.h
generate-cmdlist.sh standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
gettext.c i18n: do not poison translations unless GIT_GETTEXT_POISON envvar is set 2011-03-08 12:10:03 -08:00
gettext.h i18n: add stub Q_() wrapper for ngettext 2011-03-09 23:50:57 -08:00
git-add--interactive.perl Merge branch 'jl/add-p-reverse-message' into maint 2010-12-09 10:36:47 -08:00
git-am.sh Merge branch 'jc/maint-rebase-rewrite-last-skip' into maint 2010-12-28 13:43:10 -08:00
git-archimport.perl
git-bisect.sh bisect: check for mandatory argument of 'bisect replay' 2010-10-13 15:07:50 -07:00
git-compat-util.h magic pathspec: futureproof shorthand form 2011-04-08 16:19:48 -07:00
git-cvsexportcommit.perl
git-cvsimport.perl git-cvsimport.perl: Bail out right away when reading from the server fails 2011-02-27 02:13:21 -08:00
git-cvsserver.perl Merge branch 'ab/require-perl-5.8' 2010-10-26 21:57:31 -07:00
git-difftool--helper.sh difftool: provide basename to external tools 2010-12-16 13:01:36 -08:00
git-difftool.perl difftool: Fix failure on Cygwin 2010-12-14 11:13:41 -08:00
git-filter-branch.sh
git-instaweb.sh git-instaweb: Change how gitweb.psgi is made runnable as standalone app 2011-02-27 22:02:31 -08:00
git-lost-found.sh
git-merge-octopus.sh merge-octopus: Work around environment issue on Windows 2010-10-01 23:08:46 +01:00
git-merge-one-file.sh
git-merge-resolve.sh
git-mergetool--lib.sh Merge branch 'ss/mergetool--lib' 2011-03-19 23:24:27 -07:00
git-mergetool.sh mergetool: don't skip modify/remove conflicts 2011-02-16 13:21:09 -08:00
git-parse-remote.sh git-request-pull: open-code the only invocation of get_remote_url 2011-03-02 12:26:58 -08:00
git-pull.sh Merge branch 'jk/merge-rename-ux' 2011-03-19 23:23:56 -07:00
git-quiltimport.sh
git-rebase--interactive.sh Merge branch 'maint' 2011-01-27 10:27:49 -08:00
git-rebase.sh Merge branch 'maint' 2011-01-27 10:27:49 -08:00
git-relink.perl Merge branch 'ab/require-perl-5.8' into maint 2010-12-09 10:35:21 -08:00
git-remote-testgit.py
git-repack.sh Merge branch 'tr/maint-git-repack-tmpfile' into maint 2010-11-24 12:47:10 -08:00
git-request-pull.sh git-request-pull: open-code the only invocation of get_remote_url 2011-03-02 12:26:58 -08:00
git-send-email.perl Merge branch 'ab/require-perl-5.8' into maint 2010-12-09 10:35:21 -08:00
git-sh-setup.sh Porcelain scripts: Rewrite cryptic "needs update" error message 2010-10-28 13:28:44 -07:00
git-stash.sh shell portability: no "export VAR=VAL" 2010-10-13 11:36:36 -07:00
git-submodule.sh submodule: no [--merge|--rebase] when newly cloned 2011-02-17 12:19:18 -08:00
git-svn.perl git-svn: allow the mergeinfo property to be set 2010-12-10 04:09:48 +08:00
GIT-VERSION-GEN Git 1.7.4.1 2011-02-11 14:39:55 -08:00
git-web--browse.sh web--browse: better support for chromium 2010-12-03 14:05:32 -08:00
git.c git.c: reorder builtin command list 2011-02-15 13:46:18 -08:00
git.spec.in
graph.c
graph.h
grep.c
grep.h
hash.c for_each_hash: allow passing a 'void *data' pointer to callback 2011-02-18 22:25:51 -08:00
hash.h for_each_hash: allow passing a 'void *data' pointer to callback 2011-02-18 22:25:51 -08:00
help.c help: always suggest common-cmds if prefix of cmd 2010-12-05 12:15:12 -08:00
help.h
hex.c
http-backend.c http-backend: use end_url_with_slash() 2010-11-26 14:50:45 -08:00
http-fetch.c http-fetch: rework url handling 2010-11-26 14:50:46 -08:00
http-push.c standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
http-walker.c standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
http.c Merge branch 'tc/http-urls-ends-with-slash' into maint 2010-12-14 07:36:10 -08:00
http.h standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
ident.c ident: die on bogus date format 2010-12-20 10:28:19 -08:00
imap-send.c
INSTALL docs: default to more modern toolset 2010-11-24 15:13:58 -08:00
levenshtein.c
levenshtein.h
list-objects.c Make rev-list --objects work together with pathspecs 2011-02-03 14:10:46 -08:00
list-objects.h
ll-merge.c ll-merge: simplify opts == NULL case 2011-01-15 20:34:14 -08:00
ll-merge.h
lockfile.c Name make_*_path functions more accurately 2011-03-17 16:08:30 -07:00
log-tree.c
log-tree.h
mailmap.c mailmap: fix use of freed memory 2010-10-13 19:11:26 -07:00
mailmap.h
Makefile Merge branch 'ab/i18n-basic' 2011-03-19 23:24:42 -07:00
match-trees.c
merge-file.c
merge-recursive.c Merge branch 'jk/merge-rename-ux' 2011-03-19 23:23:56 -07:00
merge-recursive.h Merge branch 'jk/merge-rename-ux' 2011-03-19 23:23:56 -07:00
name-hash.c Add case insensitivity support for directories when using git status 2010-10-06 11:19:58 -07:00
notes-cache.c notes.h/c: Propagate combine_notes_fn return value to add_note() and beyond 2010-11-17 13:21:02 -08:00
notes-cache.h
notes-merge.c correct type of EMPTY_TREE_SHA1_BIN 2011-02-14 10:48:06 -08:00
notes-merge.h git notes merge: Add another auto-resolving strategy: "cat_sort_uniq" 2010-11-17 13:22:53 -08:00
notes.c Merge branch 'jh/notes-merge' 2010-12-08 11:24:12 -08:00
notes.h Merge branch 'jh/notes-merge' 2010-12-08 11:24:12 -08:00
object.c
object.h object.h: Remove obsolete struct object_refs 2011-03-14 10:49:28 -07:00
pack-check.c standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
pack-refs.c
pack-refs.h
pack-revindex.c
pack-revindex.h
pack-write.c
pack.h
pager.c
parse-options.c parse-options: make resuming easier after PARSE_OPT_STOP_AT_NON_OPTION 2010-12-07 14:19:32 -08:00
parse-options.h Make <identifier> lowercase as per CodingGuidelines 2011-02-15 11:53:09 -08:00
patch-delta.c compat: helper for detecting unsigned overflow 2011-02-10 13:47:56 -08:00
patch-ids.c
patch-ids.h
path.c Name make_*_path functions more accurately 2011-03-17 16:08:30 -07:00
pkt-line.c add packet tracing debug code 2011-03-08 12:12:04 -08:00
pkt-line.h
preload-index.c Convert ce_path_match() to use struct pathspec 2011-02-03 14:08:30 -08:00
pretty.c format-patch: rfc2047-encode newlines in headers 2011-02-23 16:09:33 -08:00
progress.c
progress.h
quote.c
quote.h quote.h: simplify the inclusion 2011-02-07 15:15:17 -08:00
reachable.c
reachable.h
read-cache.c Merge branch 'nd/hash-object-sanity' 2011-02-27 21:58:30 -08:00
README
reflog-walk.c Merge branch 'jk/maint-reflog-bottom' into maint 2010-12-14 07:35:50 -08:00
reflog-walk.h
refs.c
refs.h
RelNotes Prepare draft release notes to 1.7.4.2 2011-03-16 16:47:40 -07:00
remote-curl.c Merge branch 'sp/maint-smart-http-sans-100-continue' 2011-03-14 11:59:10 -07:00
remote.c Change "tracking branch" to "remote-tracking branch" 2010-11-03 09:20:41 -07:00
remote.h
replace_object.c
rerere.c rerere "remaining" 2011-02-16 13:20:50 -08:00
rerere.h rerere "remaining" 2011-02-16 13:20:50 -08:00
resolve-undo.c
resolve-undo.h
revision.c Convert ce_path_match() to use struct pathspec 2011-02-03 14:08:30 -08:00
revision.h struct rev_info: convert prune_data to struct pathspec 2011-02-03 14:08:30 -08:00
run-command.c start_command: flush buffers in the WIN32 code path as well 2011-02-07 14:18:56 -08:00
run-command.h
send-pack.h push: pass --progress down to git-pack-objects 2010-10-18 16:20:19 -07:00
server-info.c
setup.c pathspec: drop "lone : means no pathspec" from get_pathspec() 2011-05-10 12:07:12 -07:00
sha1-lookup.c
sha1-lookup.h
sha1_file.c Merge branch 'sp/maint-fd-limit' 2011-03-15 14:22:23 -07:00
sha1_name.c fix overstrict :<path> diagnosis 2011-05-10 12:36:06 -07:00
shallow.c
shell.c
shortlog.h
show-index.c
sideband.c
sideband.h
sigchain.c
sigchain.h
strbuf.c strbuf: add strbuf_vaddf 2011-02-26 01:06:50 -08:00
strbuf.h strbuf: add strbuf_vaddf 2011-02-26 01:06:50 -08:00
string-list.c string_list_append: always set util pointer to NULL 2011-02-14 10:55:03 -08:00
string-list.h standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
submodule.c diff --submodule: split into bite-sized pieces 2011-03-16 12:55:49 -07:00
submodule.h Add the 'fetch.recurseSubmodules' config setting 2010-11-12 15:06:03 -08:00
symlinks.c do not overwrite untracked symlinks 2011-02-21 22:51:07 -08:00
tag.c parse_tag_buffer(): do not prefixcmp() out of range 2011-02-16 10:05:14 -08:00
tag.h Add const to parse_{commit,tag}_buffer() 2011-02-07 15:04:42 -08:00
tar.h
test-chmtime.c
test-ctype.c
test-date.c
test-delta.c
test-dump-cache-tree.c
test-genrandom.c
test-index-version.c
test-line-buffer.c vcs-svn: allow input from file descriptor 2011-02-26 04:59:37 -06:00
test-match-trees.c
test-mktemp.c Improve error messages when temporary file creation fails 2010-12-21 19:51:17 -08:00
test-obj-pool.c
test-parse-options.c Make <identifier> lowercase as per CodingGuidelines 2011-02-15 11:53:11 -08:00
test-path-utils.c Name make_*_path functions more accurately 2011-03-17 16:08:30 -07:00
test-run-command.c
test-sha1.c
test-sha1.sh
test-sigchain.c
test-string-pool.c
test-subprocess.c setup_work_tree: adjust relative $GIT_WORK_TREE after moving cwd 2010-12-27 08:34:19 -08:00
test-svn-fe.c vcs-svn: Check for errors from open() 2010-11-24 14:51:42 -08:00
test-treap.c treap: make treap_insert return inserted node 2010-12-07 16:03:55 -08:00
thread-utils.c
thread-utils.h thread-utils.h: simplify the inclusion 2010-12-10 12:58:06 -08:00
trace.c trace: give repo_setup trace its own key 2011-03-08 12:12:04 -08:00
transport-helper.c Merge branch 'maint' 2011-03-16 16:59:30 -07:00
transport.c push: pass --progress down to git-pack-objects 2010-10-18 16:20:19 -07:00
transport.h Add bidirectional_transfer_loop() 2010-10-13 16:08:58 -07:00
tree-diff.c grep: drop pathspec_matches() in favor of tree_entry_interesting() 2011-02-03 14:08:31 -08:00
tree-walk.c grep: drop pathspec_matches() in favor of tree_entry_interesting() 2011-02-03 14:08:31 -08:00
tree-walk.h grep: drop pathspec_matches() in favor of tree_entry_interesting() 2011-02-03 14:08:31 -08:00
tree.c
tree.h
unimplemented.sh
unpack-trees.c Revert "unpack_trees(): skip trees that are the same in all input" 2011-02-15 10:47:04 -08:00
unpack-trees.h use persistent memory for rejected paths 2010-12-14 08:55:13 -08:00
upload-pack.c add packet tracing debug code 2011-03-08 12:12:04 -08:00
url.c url: add str wrapper for end_url_with_slash() 2010-11-26 14:50:45 -08:00
url.h url: add str wrapper for end_url_with_slash() 2010-11-26 14:50:45 -08:00
usage.c
userdiff.c Merge branch 'tr/diff-words-test' 2011-02-09 16:41:17 -08:00
userdiff.h
utf8.c strbuf: add fixed-length version of add_wrapped_text 2011-02-23 13:44:36 -08:00
utf8.h strbuf: add fixed-length version of add_wrapped_text 2011-02-23 13:44:36 -08:00
walker.c commit: Add commit_list prefix in two function names. 2010-11-29 14:01:52 -08:00
walker.h
wrap-for-bin.sh
wrapper.c Name make_*_path functions more accurately 2011-03-17 16:08:30 -07:00
write_or_die.c
ws.c Make the tab width used for whitespace checks configurable 2010-12-01 14:47:51 -08:00
wt-status.c Merge branch 'jn/status-translatable' 2011-03-19 23:24:19 -07:00
wt-status.h Merge branch 'jn/status-translatable' 2011-03-19 23:24:19 -07:00
xdiff-interface.c Merge branch 'rs/maint-diff-fd-leak' into maint 2010-12-26 11:18:39 -08:00
xdiff-interface.h
zlib.c wrapper: give zlib wrappers their own translation unit 2010-11-10 11:07:51 -08:00

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

	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. 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.