1
0
mirror of https://github.com/git/git.git synced 2024-10-21 02:18:14 +02:00
Git Source Code Mirror. Please follow Documentation/SubmittingPatches procedure for any of your improvements.
Go to file
Karsten Blees e96942e821 Win32: fix environment memory leaks
All functions that modify the environment have memory leaks.

Disable gitunsetenv in the Makefile and use env_setenv (via mingw_putenv)
instead (this frees removed environment entries).

Move xstrdup from env_setenv to make_augmented_environ, so that
mingw_putenv no longer copies the environment entries (according to POSIX
[1], "the string [...] shall become part of the environment"). This also
fixes the memory leak in gitsetenv, which expects a POSIX compliant putenv.

[1] http://pubs.opengroup.org/onlinepubs/009695399/functions/putenv.html

Note: This patch depends on taking control of char **environ and having
our own mingw_putenv (both introduced in "Win32: Unicode environment
(incoming)").

Signed-off-by: Karsten Blees <blees@dcon.de>
Signed-off-by: Stepan Kasal <kasal@ucw.cz>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-07-21 09:32:49 -07:00
block-sha1 Merge branch 'jk/pack-bitmap' 2014-02-27 14:01:48 -08:00
builtin Merge branch 'mg/verify-commit' 2014-07-10 11:27:34 -07:00
compat Win32: fix environment memory leaks 2014-07-21 09:32:49 -07:00
contrib Merge branch 'ep/avoid-test-a-o' 2014-06-25 12:23:56 -07:00
Documentation Merge branch 'maint' 2014-07-10 11:37:56 -07:00
ewah ewah_bitmap.c: do not assume size_t and eword_t are the same size 2014-04-22 16:21:16 -07:00
git-gui Merge git://repo.or.cz/git-gui 2014-06-26 13:44:11 -07:00
gitk-git Merge git://ozlabs.org/~paulus/gitk 2014-06-27 11:23:03 -07:00
gitweb Merge branch 'jl/nor-or-nand-and' 2014-04-08 12:00:28 -07:00
mergetools mergetools: add vimdiff3 mode 2014-04-22 12:49:07 -07:00
perl Merge branch 'mm/pager-less-sans-S' 2014-06-06 11:02:59 -07:00
po fr: a lot of good fixups 2014-05-17 19:08:59 +02:00
ppc
t tests: do not pass iso8859-1 encoded parameter 2014-07-15 11:19:11 -07:00
templates
vcs-svn
xdiff
.gitattributes
.gitignore Merge branch 'tb/unicode-6.3-zero-width' 2014-06-06 11:29:38 -07:00
.mailmap
abspath.c
aclocal.m4
advice.c refactor skip_prefix to return a boolean 2014-06-20 10:44:43 -07:00
advice.h Merge branch 'jc/push-2.0-default-to-simple' 2014-03-07 15:13:15 -08:00
alias.c use skip_prefix to avoid magic numbers 2014-06-20 10:44:45 -07:00
alloc.c commit: push commit_index update into alloc_commit_node 2014-06-12 10:29:42 -07:00
archive-tar.c
archive-zip.c
archive.c Merge branch 'rm/strchrnul-not-strlen' 2014-03-18 13:51:18 -07:00
archive.h
argv-array.c argv-array: drop "detach" code 2014-05-15 09:49:12 -07:00
argv-array.h argv-array: drop "detach" code 2014-05-15 09:49:12 -07:00
attr.c attr.c: use ALLOC_GROW() in handle_attr_line() 2014-03-03 14:54:37 -08:00
attr.h
base85.c
bisect.c Merge branch 'nd/log-show-linear-break' 2014-04-03 12:38:11 -07:00
bisect.h
blob.c
blob.h
branch.c refactor skip_prefix to return a boolean 2014-06-20 10:44:43 -07:00
branch.h
builtin.h verify-commit: scriptable commit signature verification 2014-06-23 15:50:31 -07:00
bulk-checkin.c finish_tmp_packfile():use strbuf for pathname construction 2014-03-03 12:15:10 -08:00
bulk-checkin.h
bundle.c Merge branch 'nd/log-show-linear-break' 2014-04-03 12:38:11 -07:00
bundle.h
cache-tree.c Merge branch 'rm/strchrnul-not-strlen' 2014-03-18 13:51:18 -07:00
cache-tree.h
cache.h Merge branch 'kb/path-max-must-go' 2014-07-10 11:27:47 -07:00
check_bindir check_bindir: avoid "test <cond> -a/-o <cond>" 2014-06-09 14:47:06 -07:00
check-builtins.sh check-builtins.sh: use the $(...) construct for command substitution 2014-03-25 13:42:52 -07:00
check-racy.c
color.c
color.h
column.c refactor skip_prefix to return a boolean 2014-06-20 10:44:43 -07:00
column.h
combine-diff.c Merge branch 'mk/show-s-no-extra-blank-line-for-merges' into maint 2014-06-25 11:49:39 -07:00
command-list.txt verify-commit: scriptable commit signature verification 2014-06-23 15:50:31 -07:00
commit-slab.h commit-slab: provide a static initializer 2014-06-13 12:08:17 -07:00
commit.c Merge branch 'mg/verify-commit' 2014-07-10 11:27:34 -07:00
commit.h reuse cached commit buffer when parsing signatures 2014-06-13 12:10:13 -07:00
config.c Merge branch 'ow/config-mailmap-pathname' into maint 2014-06-25 11:45:55 -07:00
config.mak.in
config.mak.uname Win32: fix environment memory leaks 2014-07-21 09:32:49 -07:00
configure.ac Merge branch 'ks/tree-diff-nway' 2014-06-03 12:06:40 -07:00
connect.c use skip_prefix to avoid magic numbers 2014-06-20 10:44:45 -07:00
connect.h
connected.c
connected.h
convert.c use skip_prefix to avoid magic numbers 2014-06-20 10:44:45 -07:00
convert.h
copy.c
COPYING
credential-cache--daemon.c refactor skip_prefix to return a boolean 2014-06-20 10:44:43 -07:00
credential-cache.c
credential-store.c
credential.c refactor skip_prefix to return a boolean 2014-06-20 10:44:43 -07:00
credential.h
csum-file.c
csum-file.h
ctype.c
daemon.c daemon: use skip_prefix to avoid magic numbers 2014-06-20 10:45:18 -07:00
date.c i18n: fix uncatchable comments for translators in date.c 2014-04-17 11:03:28 -07:00
decorate.c
decorate.h
delta.h comments: fix misuses of "nor" 2014-03-31 15:29:27 -07:00
diff-delta.c
diff-lib.c Merge branch 'jk/diff-files-assume-unchanged' into maint 2014-06-25 11:47:09 -07:00
diff-no-index.c Merge branch 'jc/fix-diff-no-index-diff-opt-parse' into maint 2014-04-09 11:59:16 -07:00
diff.c Merge branch 'jk/diff-follow-must-take-one-pathspec' into maint 2014-06-25 11:47:23 -07:00
diff.h Merge branch 'ks/tree-diff-nway' 2014-06-03 12:06:40 -07:00
diffcore-break.c
diffcore-delta.c
diffcore-order.c Merge branch 'nd/no-more-fnmatch' 2014-03-14 14:25:31 -07:00
diffcore-pickaxe.c pickaxe: simplify kwset loop in contains() 2014-03-24 15:13:17 -07:00
diffcore-rename.c Merge branch 'dd/use-alloc-grow' 2014-03-18 13:50:21 -07:00
diffcore.h Merge branch 'nd/diff-quiet-stat-dirty' into maint 2014-03-18 13:59:56 -07:00
dir.c cleanup duplicate name_compare() functions 2014-06-20 10:12:14 -07:00
dir.h pathspec: pass directory indicator to match_pathspec_item() 2014-02-24 14:37:19 -08:00
editor.c
entry.c Merge branch 'mh/remove-subtree-long-pathname-fix' into maint 2014-04-03 13:39:05 -07:00
environment.c setup_git_env(): introduce git_path_from_env() helper 2014-06-25 10:33:27 -07:00
exec_cmd.c
exec_cmd.h
fast-import.c fast-import: refactor parsing of spaces 2014-06-20 10:45:19 -07:00
fetch-pack.c Merge branch 'jk/skip-prefix' 2014-07-09 11:33:28 -07:00
fetch-pack.h
fmt-merge-msg.h
fsck.c Merge branch 'jk/skip-prefix' 2014-07-09 11:33:28 -07:00
fsck.h
generate-cmdlist.sh
gettext.c
gettext.h
git-add--interactive.perl Merge branch 'jl/nor-or-nand-and' 2014-04-08 12:00:28 -07:00
git-am.sh Merge branch 'jl/nor-or-nand-and' 2014-04-08 12:00:28 -07:00
git-archimport.perl
git-bisect.sh git-bisect.sh: avoid "test <cond> -a/-o <cond>" 2014-06-09 14:47:07 -07:00
git-compat-util.h Merge branch 'jk/skip-prefix' 2014-07-09 11:33:28 -07:00
git-cvsexportcommit.perl
git-cvsimport.perl
git-cvsserver.perl
git-difftool--helper.sh
git-difftool.perl difftool: support repositories with .git-files 2014-02-24 09:53:57 -08:00
git-filter-branch.sh
git-instaweb.sh git-instaweb: add support for Apache 2.4 2014-05-27 12:57:19 -07:00
git-merge-octopus.sh
git-merge-one-file.sh
git-merge-resolve.sh
git-mergetool--lib.sh
git-mergetool.sh git-mergetool.sh: avoid "test <cond> -a/-o <cond>" 2014-06-09 14:47:07 -07:00
git-p4.py git-p4: fix submit in non --prepare-p4-only mode 2014-06-13 11:04:04 -07:00
git-parse-remote.sh
git-pull.sh Sync with maint 2014-06-12 12:22:38 -07:00
git-quiltimport.sh git-sh-setup.sh: add variable to use the stuck-long mode 2014-02-03 12:11:10 -08:00
git-rebase--am.sh Merge branch 'km/avoid-non-function-return-in-rebase' 2014-04-21 10:42:46 -07:00
git-rebase--interactive.sh Merge branch 'ep/avoid-test-a-o' 2014-06-25 12:23:56 -07:00
git-rebase--merge.sh Merge branch 'bc/fix-rebase-merge-skip' 2014-07-02 12:53:04 -07:00
git-rebase.sh Merge branch 'rr/rebase-autostash-fix' into maint 2014-06-25 11:49:31 -07:00
git-relink.perl
git-remote-testgit.sh Merge branch 'ep/shell-assign-and-export-vars' 2014-06-06 11:38:51 -07:00
git-request-pull.sh Merge branch 'lt/request-pull' 2014-05-19 10:35:36 -07:00
git-send-email.perl Merge branch 'mt/send-email-cover-to-cc' 2014-06-20 13:12:20 -07:00
git-sh-i18n.sh
git-sh-setup.sh pager: remove 'S' from $LESS by default 2014-05-07 13:41:04 -07:00
git-stash.sh Merge branch 'ep/shell-assign-and-export-vars' 2014-06-06 11:38:51 -07:00
git-submodule.sh git-submodule.sh: avoid "echo" path-like values 2014-06-19 13:30:03 -07:00
git-svn.perl Git 2.0: git svn: Set default --prefix='origin/' if --prefix is not given 2014-04-19 11:30:13 +00:00
GIT-VERSION-GEN Git 2.0.1 2014-06-25 12:21:11 -07:00
git-web--browse.sh git-web--browse.sh: use the $( ... ) construct for command substitution 2014-04-23 15:17:02 -07:00
git.c Merge branch 'mg/verify-commit' 2014-07-10 11:27:34 -07:00
git.rc
git.spec.in
gpg-interface.c gpg-interface: provide access to the payload 2014-06-23 15:50:30 -07:00
gpg-interface.h gpg-interface: provide access to the payload 2014-06-23 15:50:30 -07:00
graph.c
graph.h
grep.c Merge branch 'as/grep-fullname-config' 2014-06-03 12:06:39 -07:00
grep.h
hashmap.c
hashmap.h hashmap.h: use 'unsigned int' for hash-codes everywhere 2014-02-24 15:26:30 -08:00
help.c use skip_prefix to avoid repeated calculations 2014-06-20 10:45:19 -07:00
help.h
hex.c
http-backend.c use skip_prefix to avoid magic numbers 2014-06-20 10:44:45 -07:00
http-fetch.c
http-push.c Merge branch 'jk/xstrfmt' 2014-07-09 11:34:05 -07:00
http-walker.c use xstrfmt to replace xmalloc + sprintf 2014-06-19 15:20:54 -07:00
http.c Merge branch 'jk/skip-prefix' 2014-07-09 11:33:28 -07:00
http.h http: optionally extract charset parameter from content-type 2014-05-27 09:59:19 -07:00
ident.c
imap-send.c imap-send: use skip_prefix instead of using magic numbers 2014-06-20 10:45:19 -07:00
INSTALL
khash.h
kwset.c
kwset.h
levenshtein.c
levenshtein.h
LGPL-2.1
line-log.c line-log: use commit_list_append() instead of duplicating its code 2014-07-08 11:01:53 -07:00
line-log.h
line-range.c
line-range.h
list-objects.c Merge branch 'jk/pack-bitmap' 2014-04-08 12:00:33 -07:00
list-objects.h
ll-merge.c
ll-merge.h
lockfile.c
log-tree.c reuse cached commit buffer when parsing signatures 2014-06-13 12:10:13 -07:00
log-tree.h
mailmap.c
mailmap.h
Makefile Merge branch 'nd/index-pack-one-fd-per-thread' into maint 2014-06-25 11:47:58 -07:00
match-trees.c use xstrfmt to replace xmalloc + sprintf 2014-06-19 15:20:54 -07:00
merge-blobs.c
merge-blobs.h
merge-recursive.c Merge branch 'jk/xstrfmt' 2014-07-09 11:34:05 -07:00
merge-recursive.h
merge.c merge: use argv_array when spawning merge strategy 2014-06-19 15:20:55 -07:00
mergesort.c
mergesort.h
name-hash.c name-hash.c: replace cache_name_compare() with memcmp(3) 2014-06-20 10:08:10 -07:00
notes-cache.c Merge branch 'jk/commit-buffer-length' 2014-07-02 12:53:02 -07:00
notes-cache.h
notes-merge.c commit: record buffer length in cache 2014-06-13 12:09:38 -07:00
notes-merge.h
notes-utils.c Merge branch 'jk/commit-buffer-length' 2014-07-02 12:53:02 -07:00
notes-utils.h commit_tree: take a pointer/len pair rather than a const strbuf 2014-06-12 10:29:41 -07:00
notes.c notes.c: rearrange xcalloc arguments 2014-05-27 14:02:45 -07:00
notes.h
object.c commit: record buffer length in cache 2014-06-13 12:09:38 -07:00
object.h Merge branch 'nd/log-show-linear-break' 2014-04-03 12:38:11 -07:00
pack-bitmap-write.c Use hashcpy() when copying object names 2014-03-06 14:03:12 -08:00
pack-bitmap.c add ignore_missing_links mode to revwalk 2014-04-04 13:31:38 -07:00
pack-bitmap.h
pack-check.c
pack-objects.c pack-objects: use free()+xcalloc() instead of xrealloc()+memset() 2014-06-02 13:51:22 -07:00
pack-objects.h
pack-revindex.c pack-revindex.c: rearrange xcalloc arguments 2014-05-27 14:02:45 -07:00
pack-revindex.h
pack-write.c finish_tmp_packfile():use strbuf for pathname construction 2014-03-03 12:15:10 -08:00
pack.h finish_tmp_packfile():use strbuf for pathname construction 2014-03-03 12:15:10 -08:00
pager.c Merge branch 'je/pager-do-not-recurse' 2014-06-06 11:17:00 -07:00
parse-options-cb.c
parse-options.c refactor skip_prefix to return a boolean 2014-06-20 10:44:43 -07:00
parse-options.h Merge branch 'jk/squelch-compiler-warning-from-funny-error-macro' 2014-06-06 11:21:36 -07:00
patch-delta.c
patch-ids.c patch-ids.c: use ALLOC_GROW() in add_commit() 2014-03-03 14:49:12 -08:00
patch-ids.h
path.c Windows: allow using UNC path for git repository 2014-06-10 13:30:04 -07:00
pathspec.c pathspec: convert some match_pathspec_depth() to ce_path_match() 2014-02-24 14:36:52 -08:00
pathspec.h
pkt-line.c
pkt-line.h comments: fix misuses of "nor" 2014-03-31 15:29:27 -07:00
preload-index.c symlinks: remove PATH_MAX limitation 2014-07-07 11:22:42 -07:00
pretty.c Merge branch 'mg/verify-commit' 2014-07-10 11:27:34 -07:00
prio-queue.c
prio-queue.h
progress.c i18n: mark all progress lines for translation 2014-02-24 09:08:37 -08:00
progress.h
prompt.c
prompt.h
quote.c
quote.h
reachable.c
reachable.h
read-cache.c Merge branch 'ym/fix-opportunistic-index-update-race' into maint 2014-06-25 11:49:48 -07:00
README
reflog-walk.c reflog-walk.c: rearrange xcalloc arguments 2014-05-27 14:02:45 -07:00
reflog-walk.h
refs.c Merge branch 'dt/refs-check-refname-component-sse-fix' 2014-07-10 11:27:55 -07:00
refs.h Merge branch 'jl/remote-rm-prune' 2014-06-16 12:17:58 -07:00
RelNotes Start preparing for 2.0.2 2014-07-10 11:15:10 -07:00
remote-curl.c use skip_prefix to avoid repeating strings 2014-06-20 10:44:45 -07:00
remote-testsvn.c use strchrnul() in place of strchr() and strlen() 2014-03-10 08:35:30 -07:00
remote.c Merge branch 'jk/xstrfmt' 2014-07-09 11:34:05 -07:00
remote.h push: detect local refspec errors early 2014-03-05 13:23:27 -08:00
replace_object.c Merge branch 'dd/use-alloc-grow' 2014-03-18 13:50:21 -07:00
rerere.c pathspec: pass directory indicator to match_pathspec_item() 2014-02-24 14:37:19 -08:00
rerere.h
resolve-undo.c Merge branch 'nd/submodule-pathspec-ending-with-slash' 2014-02-27 14:01:15 -08:00
resolve-undo.h
revision.c Merge branch 'jk/commit-buffer-length' 2014-07-02 12:53:02 -07:00
revision.h Merge branch 'jk/pack-bitmap' 2014-04-08 12:00:33 -07:00
run-command.c run-command: store an optional argv_array 2014-05-15 09:49:09 -07:00
run-command.h run-command: store an optional argv_array 2014-05-15 09:49:09 -07:00
send-pack.c
send-pack.h
sequencer.c Merge branch 'jk/xstrfmt' 2014-07-09 11:34:05 -07:00
sequencer.h cherry-pick, revert: add the --gpg-sign option 2014-01-27 15:15:52 -08:00
server-info.c
setup.c Merge branch 'mw/symlinks' into maint 2014-05-28 15:45:57 -07:00
sh-i18n--envsubst.c sh-i18n--envsubst: retire unused string_list_member() 2014-03-12 15:04:55 -07:00
sha1_file.c Merge branch 'rs/fix-alt-odb-path-comparison' 2014-07-10 11:27:52 -07:00
sha1_name.c Merge branch 'jk/xstrfmt' 2014-07-09 11:34:05 -07:00
sha1-array.c
sha1-array.h
sha1-lookup.c
sha1-lookup.h
shallow.c shallow: verify shallow file after taking lock 2014-03-17 15:03:32 -07:00
shell.c use xstrfmt to replace xmalloc + strcpy/strcat 2014-06-19 15:20:54 -07:00
shortlog.h
show-index.c
sideband.c sideband.c: do not use ANSI control sequence on non-terminal 2014-06-02 11:02:27 -07:00
sideband.h
sigchain.c
sigchain.h
strbuf.c strbuf: add xstrfmt helper 2014-06-19 12:25:17 -07:00
strbuf.h strbuf: add xstrfmt helper 2014-06-19 12:25:17 -07:00
streaming.c open_istream(): do not dereference NULL in the error case 2014-02-18 16:00:53 -08:00
streaming.h
string-list.c
string-list.h string-list: spell all values out that are given to a string_list initializer 2014-06-06 13:49:19 -07:00
submodule.c Merge branch 'kb/fast-hashmap' 2014-02-27 14:01:09 -08:00
submodule.h
symlinks.c symlinks: remove PATH_MAX limitation 2014-07-07 11:22:42 -07:00
tag.c
tag.h
tar.h
test-chmtime.c comments: fix misuses of "nor" 2014-03-31 15:29:27 -07:00
test-ctype.c
test-date.c
test-delta.c
test-dump-cache-tree.c
test-genrandom.c
test-hashmap.c test-hashmap.c: drop unnecessary #includes 2014-02-24 14:33:46 -08:00
test-index-version.c
test-line-buffer.c
test-match-trees.c
test-mergesort.c
test-mktemp.c
test-parse-options.c parse-options: remove unused OPT_SET_PTR 2014-03-31 13:01:19 -07:00
test-path-utils.c
test-prio-queue.c
test-read-cache.c
test-regex.c
test-revision-walking.c
test-run-command.c
test-scrap-cache-tree.c
test-sha1.c
test-sha1.sh
test-sigchain.c
test-string-list.c
test-subprocess.c
test-svn-fe.c
test-urlmatch-normalization.c
test-wildmatch.c stop using fnmatch (either native or compat) 2014-02-20 14:16:11 -08:00
thread-utils.c
thread-utils.h
trace.c
transport-helper.c transport-helper: avoid reading past end-of-string 2014-06-20 10:44:44 -07:00
transport.c refactor skip_prefix to return a boolean 2014-06-20 10:44:43 -07:00
transport.h
tree-diff.c tree-diff: rework diff_tree() to generate diffs for multiparent cases as well 2014-04-07 14:40:46 -07:00
tree-walk.c cleanup duplicate name_compare() functions 2014-06-20 10:12:14 -07:00
tree-walk.h tree-walk: finally switch over tree descriptors to contain a pre-parsed entry 2014-02-24 14:43:29 -08:00
tree.c
tree.h
unicode_width.h Update of unicode_width.h to Unicode Version 7.0 2014-06-18 10:53:45 -07:00
unimplemented.sh
unix-socket.c
unix-socket.h
unpack-trees.c Merge branch 'jk/xstrfmt' 2014-07-09 11:34:05 -07:00
unpack-trees.h
update_unicode.sh utf8: make it easier to auto-update git_wcwidth() 2014-05-12 10:38:01 -07:00
upload-pack.c Merge branch 'nd/log-show-linear-break' 2014-04-03 12:38:11 -07:00
url.c
url.h
urlmatch.c refactor skip_prefix to return a boolean 2014-06-20 10:44:43 -07:00
urlmatch.h
usage.c
userdiff.c userdiff: have 'cpp' hunk header pattern catch more C++ anchor points 2014-03-21 15:03:32 -07:00
userdiff.h
utf8.c Merge branch 'tb/unicode-6.3-zero-width' 2014-06-06 11:29:38 -07:00
utf8.h
varint.c
varint.h
version.c
version.h
versioncmp.c tag: support --sort=<spec> 2014-02-27 14:04:05 -08:00
walker.c walker_fetch: fix minor memory leak 2014-06-19 15:20:56 -07:00
walker.h
wildmatch.c
wildmatch.h
wrap-for-bin.sh
wrapper.c read-cache.c: verify index file before we opportunistically update it 2014-04-10 12:27:58 -07:00
write_or_die.c
ws.c use strchrnul() in place of strchr() and strlen() 2014-03-10 08:35:30 -07:00
wt-status.c Merge branch 'rs/status-code-clean-up' 2014-07-10 11:27:50 -07:00
wt-status.h Merge branch 'mm/status-porcelain-format-i18n-fix' 2014-03-31 16:31:25 -07:00
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 version 2 (some parts of it are under different licenses,
compatible with the GPLv2). It was originally written by Linus
Torvalds with help of a group of hackers around the net.

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://news.gmane.org/gmane.comp.version-control.git/,
http://marc.info/?l=git and other archival sites.

The maintainer frequently sends the "What's cooking" reports that
list the current status of various development topics to the mailing
list.  The discussion following them give a good reference for
project status, development direction and remaining tasks.