Merge branch 'so/prompt-command' into jch

Updates __git_ps1 so that it can be used as $PROMPT_COMMAND,
instead of being used for command substitution in $PS1, to embed
color escape sequences in its output.

Will cook in 'next'.

* so/prompt-command:
  coloured git-prompt: paint detached HEAD marker in red
  Fix up colored git-prompt
  show color hints based on state of the git tree
  Allow __git_ps1 to be used in PROMPT_COMMAND
Merge branch 'nd/wildmatch' into jch

Allows pathname patterns in .gitignore and .gitattributes files
with double-asterisks "foo/**/bar" to match any number of directory
hierarchies.

I suspect that this needs to be plugged to pathspec matching code;
otherwise "git log -- 'Docum*/**/*.txt'" would not show the log for
commits that touch Documentation/git.txt, which would be confusing
to the users.

Will cook in 'next'.

* nd/wildmatch:
  Support "**" wildcard in .gitignore and .gitattributes
  wildmatch: make /**/ match zero or more directories
  wildmatch: adjust "**" behavior
  wildmatch: fix case-insensitive matching
  wildmatch: remove static variable force_lower_case
  wildmatch: make wildmatch's return value compatible with fnmatch
  t3070: disable unreliable fnmatch tests
  Integrate wildmatch to git
  wildmatch: follow Git's coding convention
  wildmatch: remove unnecessary functions
  Import wildmatch from rsync
  ctype: support iscntrl, ispunct, isxdigit and isprint
  ctype: make sane_ctype[] const array

Conflicts:
	Makefile
Merge branch 'wtk/submodule-doc-fixup' into jch

* wtk/submodule-doc-fixup:
  git-submodule: wrap branch option with "<>" in usage strings.

Conflicts:
	Documentation/git-submodule.txt
	git-submodule.sh
Merge branch 'jk/config-ignore-duplicates' into jch

Drop duplicate detection from git-config; this lets it
better match the internal config callbacks, which clears up
some corner cases with includes.

Will merge to 'master' in the sixth batch.

* jk/config-ignore-duplicates:
  builtin/config.c: Fix a sparse warning
  git-config: use git_config_with_options
  git-config: do not complain about duplicate entries
  git-config: collect values instead of immediately printing
  git-config: fix regexp memory leaks on error conditions
  git-config: remove memory leak of key regexp
  t1300: test "git config --get-all" more thoroughly
  t1300: remove redundant test
  t1300: style updates
Merge branch 'rc/maint-complete-git-p4' into jch

Comment from Pete will need to be addressed in a follow-up patch.

* rc/maint-complete-git-p4:
  Teach git-completion about git p4
Merge branch 'jk/maint-http-half-auth-fetch' into jch

Fixes fetch from servers that ask for auth only during the actual
packing phase. This is not really a recommended configuration, but it
cleans up the code at the same time.

Will merge to 'master' in the sixth batch.

* jk/maint-http-half-auth-fetch:
  remote-curl: retry failed requests for auth even with gzip
  remote-curl: hoist gzip buffer size to top of post_rpc

Conflicts:
	t/t5551-http-fetch.sh
Merge branch 'kb/preload-index-more' into jch

Use preloadindex in more places, which has a nice speedup on systems
with slow stat calls (and even on Linux).

Will merge to 'master' in the sixth batch.

* kb/preload-index-more:
  update-index/diff-index: use core.preloadindex to improve performance
Merge branch 'ta/doc-cleanup' into jch

Will merge to 'master' in the sixth batch.

* ta/doc-cleanup:
  Documentation: build html for all files in technical and howto
  Documentation/howto: convert plain text files to asciidoc
  Documentation/technical: convert plain text files to asciidoc
  Change headline of technical/send-pack-pipeline.txt to not confuse its content with content from git-send-pack.txt
  Shorten two over-long lines in git-bisect-lk2009.txt by abbreviating some sha1
  Split over-long synopsis in git-fetch-pack.txt into several lines
Merge branch 'mh/alt-odb-string-list-cleanup' into jch

Cleanups in the alternates code. Fixes a potential bug and makes the
code much cleaner.

Will merge to 'master' in the sixth batch.

* mh/alt-odb-string-list-cleanup:
  link_alt_odb_entries(): take (char *, len) rather than two pointers
  link_alt_odb_entries(): use string_list_split_in_place()
Merge branch 'pw/maint-p4-rcs-expansion-newline' into jch

I do not have p4 to play with, but looks obviously correct to me.

Will merge to 'master' in the sixth batch.

* pw/maint-p4-rcs-expansion-newline:
  git p4: RCS expansion should not span newlines
Merge branch 'rh/maint-gitweb-highlight-ext' into jch

Fixes a clever misuse of perl's list interpretation.

Will merge to 'master' in the sixth batch.

* rh/maint-gitweb-highlight-ext:
  gitweb.perl: fix %highlight_ext mappings
Merge branch 'mg/replace-resolve-delete' into jch

Be more user friendly to people using "git replace -d".

* mg/replace-resolve-delete:
  replace: parse revision argument for -d
Merge branch 'jk/maint-gitweb-xss' into jch

Fixes an XSS vulnerability in gitweb.

* jk/maint-gitweb-xss:
  gitweb: escape html in rss title
Merge branch 'ml/cygwin-mingw-headers' into jch

Make git work on newer cygwin.

Will merge to 'next'.

* ml/cygwin-mingw-headers:
  Update cygwin.c for new mingw-64 win32 api headers
Merge branch 'fc/remote-testgit-feature-done' into jch

Needs review.

* fc/remote-testgit-feature-done:
  remote-testgit: properly check for errors
Merge branch 'fc/completion-test-simplification' into jch

Clean up completion tests.

There were some comments on the list.

Expecting a re-roll.

* fc/completion-test-simplification:
  completion: simplify __gitcomp test helper
  completion: refactor __gitcomp related tests
Merge branch 'jk/pickaxe-textconv' into jch

Use textconv filters when searching with "log -S".

Waiting for a sanity check and review from Junio.

* jk/pickaxe-textconv:
  pickaxe: use textconv for -S counting
  pickaxe: hoist empty needle check
Merge branch 'jc/add-delete-default' into jch

"git add dir/" updated modified files and added new files, but does
not notice removed files, which may be "Huh?" to some users.  They
can of course use "git add -A dir/", but why should they?

Resurrected from graveyard, as I thought it was a worthwhile thing
to do in the longer term.

Waiting for comments.

* jc/add-delete-default:
  git add: notice removal of tracked paths by default
Merge branch 'mk/maint-graph-infinity-loop' into jch

The --graph code fell into infinite loop when asked to do what the
code did not expect ;-)

Anybody who worked on "--graph" wants to comment?
Stalled mostly due to lack of responses.

* mk/maint-graph-infinity-loop:
  graph.c: infinite loop in git whatchanged --graph -m
Merge branch 'mh/ceiling' into jch

Elements of GIT_CEILING_DIRECTORIES list may not match the real
pathname we obtain from getcwd(), leading the GIT_DIR discovery
logic to escape the ceilings the user thought to have specified.

* mh/ceiling:
  string_list_longest_prefix(): remove function
  setup_git_directory_gently_1(): resolve symlinks in ceiling paths
  longest_ancestor_length(): require prefix list entries to be normalized
  longest_ancestor_length(): take a string_list argument for prefixes
  longest_ancestor_length(): use string_list_split()
  Introduce new function real_path_if_valid()
  real_path_internal(): add comment explaining use of cwd
  Introduce new static function real_path_internal()

Conflicts:
	Documentation/technical/api-string-list.txt
	string-list.c
	string-list.h