1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-11-04 16:27:54 +01:00
Find a file
Jeff King 4d03c18a3e pretty: quote rfc822 specials in email addresses
If somebody has a name that includes an rfc822 special, we
will output it literally in the "From:" header. This is
usually OK, but certain characters (like ".") are supposed
to be enclosed in double-quotes in a mail header.

In practice, whether this matters may depend on your MUA.
Some MUAs will happily take in:

   From: Foo B. Bar <author@example.com>

without quotes, and properly quote the "." when they send
the actual mail.  Others may not, or may screw up harder
things like:

  From: Foo "The Baz" Bar <author@example.com>

For example, mutt will strip the quotes, thinking they are
actual syntactic rfc822 quotes.

So let's quote properly, and then (if necessary) we still
apply rfc2047 encoding on top of that, which should make all
MUAs happy.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-04-26 15:07:02 -07:00
block-sha1
builtin Merge branch 'jc/index-update-if-able' into maint 2011-04-03 12:33:05 -07:00
compat Merge branch 'sp/maint-fd-limit' into maint 2011-03-20 22:11:46 -07:00
contrib contrib/thunderbird-patch-inline: do not require bash to run the script 2011-03-30 12:29:39 -07:00
Documentation Git 1.7.4.5 2011-04-19 11:45:38 -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: Fix parsing of negative fractional timezones in JavaScript 2011-04-04 09:33:05 -07:00
perl perl: command_bidi_pipe() method should set-up git environmens 2011-02-14 15:28:13 -08:00
ppc
t pretty: quote rfc822 specials in email addresses 2011-04-26 15:07:02 -07:00
templates
vcs-svn svndump.c: Fix a printf format compiler warning 2011-01-18 16:48:47 -08:00
xdiff Merge branch 'cb/diff-fname-optim' into maint 2010-11-24 12:46:26 -08:00
.gitattributes
.gitignore Merge branch 'nd/setup' 2010-12-28 11:26:55 -08:00
.mailmap Martin Langhoff has a new e-mail address 2010-10-06 12:08:48 -07:00
abspath.c make_absolute_path: return the input path if it points to our buffer 2011-03-16 13:51:22 -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 branch/checkout --track: Ensure that upstream branch is indeed a branch 2011-02-16 16:55:56 -08:00
branch.h Change incorrect "remote branch" to "remote tracking branch" in C code 2010-11-03 09:20:47 -07:00
builtin.h Merge branch 'il/remote-fd-ext' 2010-12-08 11:24:14 -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 'jc/index-update-if-able' into maint 2011-04-03 12:33:05 -07:00
check-builtins.sh
check-racy.c
check_bindir
color.c default color.status.branch to "same as header" 2010-12-10 12:59:52 -08:00
color.h default color.status.branch to "same as header" 2010-12-10 12:59:52 -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 'lt/default-abbrev' into maint 2011-04-03 12:32:51 -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
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 Merge branch 'jc/maint-diff-q-filter' into maint 2011-04-01 16:23:34 -07:00
diff-no-index.c
diff.c Merge branch 'jk/diffstat-binary' into maint 2011-03-16 16:47:26 -07:00
diff.h Merge branch 'kb/merge-recursive-rename-threshold' 2010-10-26 21:54:04 -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 diffcore-rename: improve estimate_similarity() heuristics 2011-02-18 22:26:45 -08:00
diffcore.h
dir.c Merge branch 'nd/maint-relative' into maint 2011-01-19 08:25:31 -08:00
dir.h Merge branch 'nd/maint-fix-add-typo-detection' 2010-12-22 14:40:26 -08:00
editor.c
entry.c entry.c: remove "checkout-index" from error messages 2010-11-29 14:03:07 -08:00
environment.c Merge branch 'lt/default-abbrev' into maint 2011-04-03 12:32:51 -07:00
exec_cmd.c exec_cmd: remove unused extern 2011-01-19 08:27:22 -08:00
exec_cmd.h
fast-import.c Merge branch 'sp/maint-fd-limit' into maint 2011-03-20 22:11:46 -07:00
fetch-pack.h standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
fixup-builtins
fsck.c
fsck.h
generate-cmdlist.sh standardize brace placement in struct definitions 2011-03-16 12:49:02 -07: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: visualize with git-log if gitk is unavailable 2011-03-21 10:23:45 -07:00
git-compat-util.h compat: add missing #include <sys/resource.h> 2011-04-03 12:21:34 -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 mergetool-lib: call vim in readonly mode for diffs 2011-02-25 12:00:28 -08:00
git-mergetool.sh
git-parse-remote.sh parse-remote: typofix 2011-03-30 19:33:41 -07:00
git-pull.sh pull: do not clobber untracked files on initial pull 2011-04-03 12:35:39 -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-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 Merge branch 'pk/stash-apply-status-relative' into maint 2011-04-01 16:23:43 -07:00
git-submodule.sh submodule: process conflicting submodules only once 2011-03-30 17:34:08 -07: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.5 2011-04-19 11:45:38 -07:00
git-web--browse.sh web--browse: better support for chromium 2010-12-03 14:05:32 -08:00
git.c Merge branch 'nd/setup' 2010-12-28 11:26:55 -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 Merge branch 'jc/maint-rev-list-culled-boundary' into maint 2011-04-03 12:32:35 -07: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
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 'mr/hpux' into maint 2011-03-20 22:11:15 -07:00
match-trees.c
merge-file.c
merge-recursive.c standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
merge-recursive.h Merge branch 'kb/merge-recursive-rename-threshold' 2010-10-26 21:54:04 -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
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 path helpers: move git_mkstemp* to wrapper.c 2010-11-10 11:04:26 -08:00
pkt-line.c
pkt-line.h
preload-index.c
pretty.c pretty: quote rfc822 specials in email addresses 2011-04-26 15:07:02 -07: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 'jc/index-update-if-able' into maint 2011-04-03 12:33:05 -07: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 Git 1.7.4.5 2011-04-19 11:45:38 -07:00
remote-curl.c
remote.c Change "tracking branch" to "remote-tracking branch" 2010-11-03 09:20:41 -07:00
remote.h
replace_object.c
rerere.c Merge branch 'jf/merge-ignore-ws' 2010-10-26 21:40:54 -07:00
rerere.h
resolve-undo.c
resolve-undo.h
revision.c Merge branch 'tf/commit-list-prefix' 2010-12-22 14:40:17 -08:00
revision.h
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 Subject: setup: officially support --work-tree without --git-dir 2011-01-21 14:31:24 -08:00
sha1-lookup.c
sha1-lookup.h
sha1_file.c sha1_file.c: Don't retain open fds on small packs 2011-03-02 11:25:30 -08:00
sha1_name.c Revert "core.abbrevguard: Ensure short object names stay unique a bit longer" 2011-03-10 22:41:14 -08:00
shallow.c
shell.c
shortlog.h
show-index.c
sideband.c
sideband.h
sigchain.c
sigchain.h
strbuf.c compat: helper for detecting unsigned overflow 2011-02-10 13:47:56 -08:00
strbuf.h strbuf.h: remove a tad stale docs-in-comment and reference api-doc instead 2011-03-30 12:02:50 -07: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
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
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
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.c: ensure NULL is not passed to printf 2011-01-06 12:21:49 -08:00
transport-helper.c standardize brace placement in struct definitions 2011-03-16 12:49:02 -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 Merge branch 'en/tree-walk-optim' 2010-10-26 21:37:49 -07:00
tree-walk.c
tree-walk.h
tree.c
tree.h
unimplemented.sh
unpack-trees.c Merge branch 'nd/maint-fix-add-typo-detection' 2010-12-22 14:40:26 -08:00
unpack-trees.h use persistent memory for rejected paths 2010-12-14 08:55:13 -08:00
upload-pack.c commit: Add commit_list prefix in two function names. 2010-11-29 14:01:52 -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 'as/userdiff-pascal' 2011-01-24 10:54:12 -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 Merge branch 'ae/better-template-failure-report' into maint 2011-03-20 22:09:39 -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 'aa/status-hilite-branch' 2010-12-16 12:50:03 -08:00
wt-status.h status: show branchname with a configurable color 2010-11-29 16:31:34 -08: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.