gitweb.git
Sync with v2.9.1Junio C Hamano Mon, 11 Jul 2016 17:46:39 +0000 (10:46 -0700)

Sync with v2.9.1

* maint:
Git 2.9.1

Git 2.9.1 v2.9.1Junio C Hamano Mon, 11 Jul 2016 17:45:50 +0000 (10:45 -0700)

Git 2.9.1

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'jc/t2300-setup' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:19 +0000 (10:44 -0700)

Merge branch 'jc/t2300-setup' into maint

Portability fix for Windows.

* jc/t2300-setup:
t2300: "git --exec-path" is not usable in $PATH on Windows as-is

Merge branch 'cb/t7810-test-label-fix' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:18 +0000 (10:44 -0700)

Merge branch 'cb/t7810-test-label-fix' into maint

Test clean-up.

* cb/t7810-test-label-fix:
t7810: fix duplicated test title

Merge branch 'sb/t5614-modernize' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:17 +0000 (10:44 -0700)

Merge branch 'sb/t5614-modernize' into maint

Test clean-up.

* sb/t5614-modernize:
t5614: don't use subshells

Merge branch 'jn/preformatted-doc-url' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:16 +0000 (10:44 -0700)

Merge branch 'jn/preformatted-doc-url' into maint

The top level documentation "git help git" still pointed at the
documentation set hosted at now-defunct google-code repository.
Update it to point to https://git.github.io/htmldocs/git.html
instead.

* jn/preformatted-doc-url:
doc: git-htmldocs.googlecode.com is no more

Merge branch 'ao/p4-has-branch-prefix-fix' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:16 +0000 (10:44 -0700)

Merge branch 'ao/p4-has-branch-prefix-fix' into maint

A bug, which caused "git p4" while running under verbose mode to
report paths that are omitted due to branch prefix incorrectly, has
been fixed; the command said "Ignoring file outside of prefix" for
paths that are _inside_.

* ao/p4-has-branch-prefix-fix:
git-p4: correct hasBranchPrefix verbose output

Merge branch 'js/perf-on-apple' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:15 +0000 (10:44 -0700)

Merge branch 'js/perf-on-apple' into maint

t/perf needs /usr/bin/time with GNU extension; the invocation of it
is updated to "gtime" on Darwin.

* js/perf-on-apple:
perf: accommodate for MacOSX

Merge branch 'ak/t7800-wo-readlink' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:15 +0000 (10:44 -0700)

Merge branch 'ak/t7800-wo-readlink' into maint

One among four invocations of readlink(1) in our test suite has
been rewritten so that the test can run on systems without the
command (others are in valgrind test framework and t9802).

* ak/t7800-wo-readlink:
t7800: readlink may not be available

Merge branch 'jk/tzoffset-fix' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:14 +0000 (10:44 -0700)

Merge branch 'jk/tzoffset-fix' into maint

The internal code used to show local timezone offset is not
prepared to handle timestamps beyond year 2100, and gave a
bogus offset value to the caller. Use a more benign looking
+0000 instead and let "git log" going in such a case, instead
of aborting.

* jk/tzoffset-fix:
local_tzoffset: detect errors from tm_to_time_t
t0006: test various date formats
t0006: rename test-date's "show" to "relative"

Merge branch 'js/mingw-parameter-less-c-functions'... Junio C Hamano Mon, 11 Jul 2016 17:44:13 +0000 (10:44 -0700)

Merge branch 'js/mingw-parameter-less-c-functions' into maint

Some platform-specific code had non-ANSI strict declarations of C
functions that do not take any parameters, which has been
corrected.

* js/mingw-parameter-less-c-functions:
mingw: let the build succeed with DEVELOPER=1

Merge branch 'lc/shell-default-value-noexpand' into... Junio C Hamano Mon, 11 Jul 2016 17:44:13 +0000 (10:44 -0700)

Merge branch 'lc/shell-default-value-noexpand' into maint

Fix unnecessarily waste in the idiomatic use of ': ${VAR=default}'
to set the default value, without enclosing it in double quotes.

* lc/shell-default-value-noexpand:
sh-setup: enclose setting of ${VAR=default} in double-quotes

Merge branch 'sb/clone-shallow-passthru' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:12 +0000 (10:44 -0700)

Merge branch 'sb/clone-shallow-passthru' into maint

Fix an unintended regression in v2.9 that breaks "clone --depth"
that recurses down to submodules by forcing the submodules to also
be cloned shallowly, which many server instances that host upstream
of the submodules are not prepared for.

* sb/clone-shallow-passthru:
clone: do not let --depth imply --shallow-submodules

Merge branch 'mg/signature-doc' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:11 +0000 (10:44 -0700)

Merge branch 'mg/signature-doc' into maint

Formats of the various data (and how to validate them) where we use
GPG signature have been documented.

* mg/signature-doc:
Documentation/technical: signed merge tag format
Documentation/technical: signed commit format
Documentation/technical: signed tag format
Documentation/technical: describe signature formats

Merge branch 'jk/bisect-show-tree' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:11 +0000 (10:44 -0700)

Merge branch 'jk/bisect-show-tree' into maint

"git bisect" makes an internal call to "git diff-tree" when
bisection finds the culprit, but this call did not initialize the
data structure to pass to the diff-tree API correctly.

* jk/bisect-show-tree:
bisect: always call setup_revisions after init_revisions

Merge branch 'km/fetch-do-not-free-remote-name' into... Junio C Hamano Mon, 11 Jul 2016 17:44:10 +0000 (10:44 -0700)

Merge branch 'km/fetch-do-not-free-remote-name' into maint

The ownership rule for the piece of memory that hold references to
be fetched in "git fetch" was screwy, which has been cleaned up.

* km/fetch-do-not-free-remote-name:
builtin/fetch.c: don't free remote->name after fetch

Merge branch 'nd/graph-width-padded' into maintJunio C Hamano Mon, 11 Jul 2016 17:44:09 +0000 (10:44 -0700)

Merge branch 'nd/graph-width-padded' into maint

"log --graph --format=" learned that "%>|(N)" specifies the width
relative to the terminal's left edge, not relative to the area to
draw text that is to the right of the ancestry-graph section. It
also now accepts negative N that means the column limit is relative
to the right border.

* nd/graph-width-padded:
pretty.c: support <direction>|(<negative number>) forms
pretty: pass graph width to pretty formatting for use in '%>|(N)'

Merge branch 'jk/add-i-diff-compact-heuristics' into... Junio C Hamano Mon, 11 Jul 2016 17:44:09 +0000 (10:44 -0700)

Merge branch 'jk/add-i-diff-compact-heuristics' into maint

"git add -i/-p" learned to honor diff.compactionHeuristic
experimental knob, so that the user can work on the same hunk split
as "git diff" output.

* jk/add-i-diff-compact-heuristics:
add--interactive: respect diff.compactionHeuristic

Fourth batch of topics for 2.10Junio C Hamano Mon, 11 Jul 2016 17:36:29 +0000 (10:36 -0700)

Fourth batch of topics for 2.10

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'master' of git://bogomips.org/git-svnJunio C Hamano Mon, 11 Jul 2016 17:31:52 +0000 (10:31 -0700)

Merge branch 'master' of git://bogomips.org/git-svn

* 'master' of git://bogomips.org/git-svn:
git-svn: warn instead of dying when commit data is missing
git-svn: clone: Fail on missing url argument

Merge branch 'js/color-on-windows-comment'Junio C Hamano Mon, 11 Jul 2016 17:31:09 +0000 (10:31 -0700)

Merge branch 'js/color-on-windows-comment'

For a long time, we carried an in-code comment that said our
colored output would work only when we use fprintf/fputs on
Windows, which no longer is the case for the past few years.

* js/color-on-windows-comment:
color.h: remove obsolete comment about limitations on Windows

Merge branch 'mj/log-show-signature-conf'Junio C Hamano Mon, 11 Jul 2016 17:31:08 +0000 (10:31 -0700)

Merge branch 'mj/log-show-signature-conf'

"git log" learns log.showSignature configuration variable, and a
command line option "--no-show-signature" to countermand it.

* mj/log-show-signature-conf:
log: add log.showSignature configuration variable
log: add "--no-show-signature" command line option
t4202: refactor test

Merge branch 'js/find-commit-subject-ignore-leading... Junio C Hamano Mon, 11 Jul 2016 17:31:07 +0000 (10:31 -0700)

Merge branch 'js/find-commit-subject-ignore-leading-blanks'

A helper function that takes the contents of a commit object and
finds its subject line did not ignore leading blank lines, as is
commonly done by other codepaths. Make it ignore leading blank
lines to match.

* js/find-commit-subject-ignore-leading-blanks:
reset --hard: skip blank lines when reporting the commit subject
sequencer: use skip_blank_lines() to find the commit subject
commit -C: skip blank lines at the beginning of the message
commit.c: make find_commit_subject() more robust
pretty: make the skip_blank_lines() function public

Merge branch 'jn/preformatted-doc-url'Junio C Hamano Mon, 11 Jul 2016 17:31:06 +0000 (10:31 -0700)

Merge branch 'jn/preformatted-doc-url'

The top level documentation "git help git" still pointed at the
documentation set hosted at now-defunct google-code repository.
Update it to point to https://git.github.io/htmldocs/git.html
instead.

* jn/preformatted-doc-url:
doc: git-htmldocs.googlecode.com is no more

Merge branch 'jk/perf-any-version'Junio C Hamano Mon, 11 Jul 2016 17:31:06 +0000 (10:31 -0700)

Merge branch 'jk/perf-any-version'

Allow t/perf framework to use the features from the most recent
version of Git even when testing an older installed version.

* jk/perf-any-version:
p4211: explicitly disable renames in no-rename test
t/perf: fix regression in testing older versions of git

Merge branch 'jk/ansi-color'Junio C Hamano Mon, 11 Jul 2016 17:31:05 +0000 (10:31 -0700)

Merge branch 'jk/ansi-color'

The output coloring scheme learned two new attributes, italic and
strike, in addition to existing bold, reverse, etc.

* jk/ansi-color:
color: support strike-through attribute
color: support "italic" attribute
color: allow "no-" for negating attributes
color: refactor parse_attr
add skip_prefix_mem helper
doc: refactor description of color format
color: fix max-size comment

Merge branch 'sb/submodule-clone-retry'Junio C Hamano Mon, 11 Jul 2016 17:31:04 +0000 (10:31 -0700)

Merge branch 'sb/submodule-clone-retry'

"git submodule update" that drives many "git clone" could
eventually hit flaky servers/network conditions on one of the
submodules; the command learned to retry the attempt.

* sb/submodule-clone-retry:
submodule update: continue when a clone fails
submodule--helper: initial clone learns retry logic

Merge branch 'jc/send-email-skip-backup'Junio C Hamano Mon, 11 Jul 2016 17:31:04 +0000 (10:31 -0700)

Merge branch 'jc/send-email-skip-backup'

A careless invocation of "git send-email directory/" after editing
0001-change.patch with an editor often ends up sending both
0001-change.patch and its backup file, 0001-change.patch~, causing
embarrassment and a minor confusion. Detect such an input and
offer to skip the backup files when sending the patches out.

* jc/send-email-skip-backup:
send-email: detect and offer to skip backup files

git-svn: warn instead of dying when commit data is... Eric Wong Sat, 2 Jul 2016 10:33:18 +0000 (10:33 +0000)

git-svn: warn instead of dying when commit data is missing

It is possible to have refs globbed by git-svn which stores data
purely in git; gently skip those instead of dying and assuming
user error.

ref: http://mid.gmane.org/CALi1mtdtNF_GtzyPTbfb7N51wwxsFY7zm8hsgwxr3tHcZZboyg@mail.gmail.com

Suggested-by: Jacob Godserv <jacobgodserv@gmail.com>
Cc: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Eric Wong <e@80x24.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Third batch of topics for 2.10Junio C Hamano Wed, 6 Jul 2016 20:42:58 +0000 (13:42 -0700)

Third batch of topics for 2.10

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Sync with maintJunio C Hamano Wed, 6 Jul 2016 20:42:37 +0000 (13:42 -0700)

Sync with maint

* maint:
More fixes for 2.9.1
mailmap: use main email address for dturner

Merge branch 'jc/t2300-setup'Junio C Hamano Wed, 6 Jul 2016 20:38:19 +0000 (13:38 -0700)

Merge branch 'jc/t2300-setup'

Portability fix for Windows.

* jc/t2300-setup:
t2300: "git --exec-path" is not usable in $PATH on Windows as-is

Merge branch 'ao/p4-has-branch-prefix-fix'Junio C Hamano Wed, 6 Jul 2016 20:38:19 +0000 (13:38 -0700)

Merge branch 'ao/p4-has-branch-prefix-fix'

A bug, which caused "git p4" while running under verbose mode to
report paths that are omitted due to branch prefix incorrectly, has
been fixed; the command said "Ignoring file outside of prefix" for
paths that are _inside_.

* ao/p4-has-branch-prefix-fix:
git-p4: correct hasBranchPrefix verbose output

Merge branch 'cb/t7810-test-label-fix'Junio C Hamano Wed, 6 Jul 2016 20:38:18 +0000 (13:38 -0700)

Merge branch 'cb/t7810-test-label-fix'

Test clean-up.

* cb/t7810-test-label-fix:
t7810: fix duplicated test title

Merge branch 'sb/t5614-modernize'Junio C Hamano Wed, 6 Jul 2016 20:38:17 +0000 (13:38 -0700)

Merge branch 'sb/t5614-modernize'

Test clean-up.

* sb/t5614-modernize:
t5614: don't use subshells

Merge branch 'js/perf-on-apple'Junio C Hamano Wed, 6 Jul 2016 20:38:16 +0000 (13:38 -0700)

Merge branch 'js/perf-on-apple'

t/perf needs /usr/bin/time with GNU extension; the invocation of it
is updated to "gtime" on Darwin.

* js/perf-on-apple:
perf: accommodate for MacOSX

Merge branch 'ak/t7800-wo-readlink'Junio C Hamano Wed, 6 Jul 2016 20:38:16 +0000 (13:38 -0700)

Merge branch 'ak/t7800-wo-readlink'

One among four invocations of readlink(1) in our test suite has
been rewritten so that the test can run on systems without the
command (others are in valgrind test framework and t9802).

* ak/t7800-wo-readlink:
t7800: readlink may not be available

Merge branch 'jk/tzoffset-fix'Junio C Hamano Wed, 6 Jul 2016 20:38:15 +0000 (13:38 -0700)

Merge branch 'jk/tzoffset-fix'

The internal code used to show local timezone offset is not
prepared to handle timestamps beyond year 2100, and gave a
bogus offset value to the caller. Use a more benign looking
+0000 instead and let "git log" going in such a case, instead
of aborting.

* jk/tzoffset-fix:
local_tzoffset: detect errors from tm_to_time_t
t0006: test various date formats
t0006: rename test-date's "show" to "relative"

Merge branch 'js/mingw-parameter-less-c-functions'Junio C Hamano Wed, 6 Jul 2016 20:38:14 +0000 (13:38 -0700)

Merge branch 'js/mingw-parameter-less-c-functions'

Some platform-specific code had non-ANSI strict declarations of C
functions that do not take any parameters, which has been
corrected.

* js/mingw-parameter-less-c-functions:
mingw: let the build succeed with DEVELOPER=1

Merge branch 'lc/shell-default-value-noexpand'Junio C Hamano Wed, 6 Jul 2016 20:38:14 +0000 (13:38 -0700)

Merge branch 'lc/shell-default-value-noexpand'

Fix unnecessarily waste in the idiomatic use of ': ${VAR=default}'
to set the default value, without enclosing it in double quotes.

* lc/shell-default-value-noexpand:
sh-setup: enclose setting of ${VAR=default} in double-quotes

Merge branch 'sb/clone-shallow-passthru'Junio C Hamano Wed, 6 Jul 2016 20:38:13 +0000 (13:38 -0700)

Merge branch 'sb/clone-shallow-passthru'

Fix an unintended regression in v2.9 that breaks "clone --depth"
that recurses down to submodules by forcing the submodules to also
be cloned shallowly, which many server instances that host upstream
of the submodules are not prepared for.

* sb/clone-shallow-passthru:
clone: do not let --depth imply --shallow-submodules

Merge branch 'jk/gpg-interface-cleanup'Junio C Hamano Wed, 6 Jul 2016 20:38:12 +0000 (13:38 -0700)

Merge branch 'jk/gpg-interface-cleanup'

A new run-command API function pipe_command() is introduced to
sanely feed data to the standard input while capturing data from
the standard output and the standard error of an external process,
which is cumbersome to hand-roll correctly without deadlocking.

The codepath to sign data in a prepared buffer with GPG has been
updated to use this API to read from the status-fd to check for
errors (instead of relying on GPG's exit status).

* jk/gpg-interface-cleanup:
gpg-interface: check gpg signature creation status
sign_buffer: use pipe_command
verify_signed_buffer: use pipe_command
run-command: add pipe_command helper
verify_signed_buffer: use tempfile object
verify_signed_buffer: drop pbuf variable
gpg-interface: use child_process.args

Merge branch 'mg/signature-doc'Junio C Hamano Wed, 6 Jul 2016 20:38:12 +0000 (13:38 -0700)

Merge branch 'mg/signature-doc'

Formats of the various data (and how to validate them) where we use
GPG signature have been documented.

* mg/signature-doc:
Documentation/technical: signed merge tag format
Documentation/technical: signed commit format
Documentation/technical: signed tag format
Documentation/technical: describe signature formats

Merge branch 'nd/graph-width-padded'Junio C Hamano Wed, 6 Jul 2016 20:38:12 +0000 (13:38 -0700)

Merge branch 'nd/graph-width-padded'

"log --graph --format=" learned that "%>|(N)" specifies the width
relative to the terminal's left edge, not relative to the area to
draw text that is to the right of the ancestry-graph section. It
also now accepts negative N that means the column limit is relative
to the right border.

* nd/graph-width-padded:
pretty.c: support <direction>|(<negative number>) forms
pretty: pass graph width to pretty formatting for use in '%>|(N)'

Merge branch 'jk/repack-keep-unreachable'Junio C Hamano Wed, 6 Jul 2016 20:38:11 +0000 (13:38 -0700)

Merge branch 'jk/repack-keep-unreachable'

"git repack" learned the "--keep-unreachable" option, which sends
loose unreachable objects to a pack instead of leaving them loose.
This helps heuristics based on the number of loose objects
(e.g. "gc --auto").

* jk/repack-keep-unreachable:
repack: extend --keep-unreachable to loose objects
repack: add --keep-unreachable option
repack: document --unpack-unreachable option

Merge branch 'ew/mboxrd-format-am'Junio C Hamano Wed, 6 Jul 2016 20:38:11 +0000 (13:38 -0700)

Merge branch 'ew/mboxrd-format-am'

Teach format-patch and mailsplit (hence "am") how a line that
happens to begin with "From " in the e-mail message is quoted with
">", so that these lines can be restored to their original shape.

* ew/mboxrd-format-am:
am: support --patch-format=mboxrd
mailsplit: support unescaping mboxrd messages
pretty: support "mboxrd" output format

Merge branch 'jk/upload-pack-hook'Junio C Hamano Wed, 6 Jul 2016 20:38:11 +0000 (13:38 -0700)

Merge branch 'jk/upload-pack-hook'

"upload-pack" allows a custom "git pack-objects" replacement when
responding to "fetch/clone" via the uploadpack.packObjectsHook.

* jk/upload-pack-hook:
upload-pack: provide a hook for running pack-objects
t1308: do not get fooled by symbolic links to the source tree
config: add a notion of "scope"
config: return configset value for current_config_ functions
config: set up config_source for command-line config
git_config_parse_parameter: refactor cleanup code
git_config_with_options: drop "found" counting

Merge branch 'nd/worktree-cleanup-post-head-protection'Junio C Hamano Wed, 6 Jul 2016 20:38:11 +0000 (13:38 -0700)

Merge branch 'nd/worktree-cleanup-post-head-protection'

Further preparatory clean-up for "worktree" feature continues.

* nd/worktree-cleanup-post-head-protection:
worktree: simplify prefixing paths
worktree: avoid 0{40}, too many zeroes, hard to read
worktree.c: use is_dot_or_dotdot()
git-worktree.txt: keep subcommand listing in alphabetical order
worktree.c: rewrite mark_current_worktree() to avoid strbuf
completion: support git-worktree

Merge branch 'jk/bisect-show-tree'Junio C Hamano Wed, 6 Jul 2016 20:38:10 +0000 (13:38 -0700)

Merge branch 'jk/bisect-show-tree'

"git bisect" makes an internal call to "git diff-tree" when
bisection finds the culprit, but this call did not initialize the
data structure to pass to the diff-tree API correctly.

* jk/bisect-show-tree:
bisect: always call setup_revisions after init_revisions

Merge branch 'lf/sideband-returns-void'Junio C Hamano Wed, 6 Jul 2016 20:38:09 +0000 (13:38 -0700)

Merge branch 'lf/sideband-returns-void'

A small internal API cleanup.

* lf/sideband-returns-void:
upload-pack.c: make send_client_data() return void
sideband.c: make send_sideband() return void

Merge branch 'jk/add-i-diff-compact-heuristics'Junio C Hamano Wed, 6 Jul 2016 20:38:09 +0000 (13:38 -0700)

Merge branch 'jk/add-i-diff-compact-heuristics'

"git add -i/-p" learned to honor diff.compactionHeuristic
experimental knob, so that the user can work on the same hunk split
as "git diff" output.

* jk/add-i-diff-compact-heuristics:
add--interactive: respect diff.compactionHeuristic

Merge branch 'km/fetch-do-not-free-remote-name'Junio C Hamano Wed, 6 Jul 2016 20:38:08 +0000 (13:38 -0700)

Merge branch 'km/fetch-do-not-free-remote-name'

The ownership rule for the piece of memory that hold references to
be fetched in "git fetch" was screwy, which has been cleaned up.

* km/fetch-do-not-free-remote-name:
builtin/fetch.c: don't free remote->name after fetch

Merge branch 'nd/test-lib-httpd-show-error-log-in-verbose'Junio C Hamano Wed, 6 Jul 2016 20:38:08 +0000 (13:38 -0700)

Merge branch 'nd/test-lib-httpd-show-error-log-in-verbose'

HTTPd tests learned to show the server error log to help diagnosing
a failing tests.

* nd/test-lib-httpd-show-error-log-in-verbose:
lib-httpd.sh: print error.log on error

Merge branch 'jk/string-list-static-init'Junio C Hamano Wed, 6 Jul 2016 20:38:07 +0000 (13:38 -0700)

Merge branch 'jk/string-list-static-init'

Instead of taking advantage of a struct string_list that is
allocated with all NULs happens to be STRING_LIST_INIT_NODUP kind,
initialize them explicitly as such, to document their behaviour
better.

* jk/string-list-static-init:
use string_list initializer consistently
blame,shortlog: don't make local option variables static
interpret-trailers: don't duplicate option strings
parse_opt_string_list: stop allocating new strings

Merge branch 'jk/send-pack-stdio'Junio C Hamano Wed, 6 Jul 2016 20:38:07 +0000 (13:38 -0700)

Merge branch 'jk/send-pack-stdio'

Code clean-up.

* jk/send-pack-stdio:
write_or_die: remove the unused write_or_whine() function
send-pack: use buffered I/O to talk to pack-objects

Merge branch 'pb/commit-editmsg-path'Junio C Hamano Wed, 6 Jul 2016 20:38:06 +0000 (13:38 -0700)

Merge branch 'pb/commit-editmsg-path'

Code clean-up.

* pb/commit-editmsg-path:
builtin/commit.c: memoize git-path for COMMIT_EDITMSG

Merge branch 'ep/http-curl-trace'Junio C Hamano Wed, 6 Jul 2016 20:38:06 +0000 (13:38 -0700)

Merge branch 'ep/http-curl-trace'

HTTP transport gained an option to produce more detailed debugging
trace.

* ep/http-curl-trace:
imap-send.c: introduce the GIT_TRACE_CURL enviroment variable
http.c: implement the GIT_TRACE_CURL environment variable

More fixes for 2.9.1Junio C Hamano Wed, 6 Jul 2016 20:08:02 +0000 (13:08 -0700)

More fixes for 2.9.1

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'jc/deref-tag' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:46 +0000 (13:06 -0700)

Merge branch 'jc/deref-tag' into maint

Code clean-up.

* jc/deref-tag:
blame, line-log: do not loop around deref_tag()

Merge branch 'pb/strbuf-read-file-doc' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:45 +0000 (13:06 -0700)

Merge branch 'pb/strbuf-read-file-doc' into maint

Minor doc update.

* pb/strbuf-read-file-doc:
strbuf: describe the return value of strbuf_read_file

Merge branch 'jk/fetch-prune-doc' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:44 +0000 (13:06 -0700)

Merge branch 'jk/fetch-prune-doc' into maint

Minor doc update.

* jk/fetch-prune-doc:
fetch: document that pruning happens before fetching

Merge branch 'pc/occurred' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:43 +0000 (13:06 -0700)

Merge branch 'pc/occurred' into maint

Typofix.

* pc/occurred:
config.c: fix misspelt "occurred" in an error message
refs.h: fix misspelt "occurred" in a comment

Merge branch 'mg/cherry-pick-multi-on-unborn' into... Junio C Hamano Wed, 6 Jul 2016 20:06:42 +0000 (13:06 -0700)

Merge branch 'mg/cherry-pick-multi-on-unborn' into maint

"git cherry-pick A" worked on an unborn branch, but "git
cherry-pick A..B" didn't.

* mg/cherry-pick-multi-on-unborn:
cherry-pick: allow to pick to unborn branches

Merge branch 'em/newer-freebsd-shells-are-fine-with... Junio C Hamano Wed, 6 Jul 2016 20:06:41 +0000 (13:06 -0700)

Merge branch 'em/newer-freebsd-shells-are-fine-with-returns' into maint

Comments about misbehaving FreeBSD shells have been clarified with
the version number (9.x and before are broken, newer ones are OK).

* em/newer-freebsd-shells-are-fine-with-returns:
rebase: update comment about FreeBSD /bin/sh

Merge branch 'lv/status-say-working-tree-not-directory... Junio C Hamano Wed, 6 Jul 2016 20:06:40 +0000 (13:06 -0700)

Merge branch 'lv/status-say-working-tree-not-directory' into maint

"git status" used to say "working directory" when it meant "working
tree".

* lv/status-say-working-tree-not-directory:
Use "working tree" instead of "working directory" for git status

Merge branch 'nb/gnome-keyring-build' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:40 +0000 (13:06 -0700)

Merge branch 'nb/gnome-keyring-build' into maint

Build improvements for gnome-keyring (in contrib/)

* nb/gnome-keyring-build:
gnome-keyring: Don't hard-code pkg-config executable

Merge branch 'et/add-chmod-x' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:39 +0000 (13:06 -0700)

Merge branch 'et/add-chmod-x' into maint

"git update-index --add --chmod=+x file" may be usable as an escape
hatch, but not a friendly thing to force for people who do need to
use it regularly. "git add --chmod=+x file" can be used instead.

* et/add-chmod-x:
add: add --chmod=+x / --chmod=-x options

Merge branch 'jk/avoid-unbounded-alloca' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:39 +0000 (13:06 -0700)

Merge branch 'jk/avoid-unbounded-alloca' into maint

A codepath that used alloca(3) to place an unbounded amount of data
on the stack has been updated to avoid doing so.

* jk/avoid-unbounded-alloca:
tree-diff: avoid alloca for large allocations

Merge branch 'rj/compat-regex-size-max-fix' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:38 +0000 (13:06 -0700)

Merge branch 'rj/compat-regex-size-max-fix' into maint

A compilation fix.

* rj/compat-regex-size-max-fix:
regex: fix a SIZE_MAX macro redefinition warning

Merge branch 'vs/prompt-avoid-unset-variable' into... Junio C Hamano Wed, 6 Jul 2016 20:06:38 +0000 (13:06 -0700)

Merge branch 'vs/prompt-avoid-unset-variable' into maint

The git-prompt scriptlet (in contrib/) was not friendly with those
who uses "set -u", which has been fixed.

* vs/prompt-avoid-unset-variable:
git-prompt.sh: Don't error on null ${ZSH,BASH}_VERSION, $short_sha

Merge branch 'sg/reflog-past-root' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:37 +0000 (13:06 -0700)

Merge branch 'sg/reflog-past-root' into maint

"git reflog" stopped upon seeing an entry that denotes a branch
creation event (aka "unborn"), which made it appear as if the
reflog was truncated.

* sg/reflog-past-root:
reflog: continue walking the reflog past root commits

Merge branch 'dn/gpg-doc' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:36 +0000 (13:06 -0700)

Merge branch 'dn/gpg-doc' into maint

The documentation tries to consistently spell "GPG"; when
referring to the specific program name, "gpg" is used.

* dn/gpg-doc:
Documentation: GPG capitalization

Merge branch 'ap/git-svn-propset-doc' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:35 +0000 (13:06 -0700)

Merge branch 'ap/git-svn-propset-doc' into maint

"git svn propset" subcommand that was added in 2.3 days is
documented now.

* ap/git-svn-propset-doc:
git-svn: document the 'git svn propset' command

Merge branch 'tr/doc-tt' into maintJunio C Hamano Wed, 6 Jul 2016 20:06:34 +0000 (13:06 -0700)

Merge branch 'tr/doc-tt' into maint

The documentation set has been updated so that literal commands,
configuration variables and environment variables are consistently
typeset in fixed-width font and bold in manpages.

* tr/doc-tt:
doc: change configuration variables format
doc: more consistency in environment variables format
doc: change environment variables format
doc: clearer rule about formatting literals

mailmap: use main email address for dturnerDavid Turner Mon, 4 Jul 2016 06:05:24 +0000 (02:05 -0400)

mailmap: use main email address for dturner

Signed-off-by: David Turner <novalis@novalis.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-svn: clone: Fail on missing url argumentChristopher Layne Sun, 3 Jul 2016 05:39:23 +0000 (05:39 +0000)

git-svn: clone: Fail on missing url argument

cmd_clone should detect a missing $url arg before using it otherwise
an uninitialized value error is emitted in even the simplest case of
'git svn clone' without arguments.

Signed-off-by: Christopher Layne <clayne@anodized.com>
Signed-off-by: Eric Wong <e@80x24.org>

reset --hard: skip blank lines when reporting the commi... Johannes Schindelin Wed, 29 Jun 2016 14:14:50 +0000 (16:14 +0200)

reset --hard: skip blank lines when reporting the commit subject

When there are blank lines at the beginning of a commit message, the
pretty printing machinery already skips them when showing a commit
subject (or the complete commit message). We shall henceforth do the
same when reporting the commit subject after the user called

git reset --hard <commit>

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

sequencer: use skip_blank_lines() to find the commit... Johannes Schindelin Wed, 29 Jun 2016 14:14:46 +0000 (16:14 +0200)

sequencer: use skip_blank_lines() to find the commit subject

Just like we already taught the find_commit_subject() function (to make
it consistent with the code in pretty.c), we now simply skip leading
blank lines of the commit message.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit -C: skip blank lines at the beginning of the... Johannes Schindelin Wed, 29 Jun 2016 14:14:42 +0000 (16:14 +0200)

commit -C: skip blank lines at the beginning of the message

Consistent with the pretty-printing machinery, we skip leading blank
lines (if any) of existing commit messages.

While Git itself only produces commit objects with a single empty line
between commit header and commit message, it is legal to have more than
one blank line (i.e. lines containing only white space, or no
characters) at the beginning of the commit message, and the
pretty-printing code already handles that.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

color.h: remove obsolete comment about limitations... Johannes Schindelin Tue, 28 Jun 2016 10:02:49 +0000 (12:02 +0200)

color.h: remove obsolete comment about limitations on Windows

Originally, ANSI color sequences were supported on Windows only by
overriding the printf() and fprintf() functions, as mentioned in e7821d7
(Add a notice that only certain functions can print color escape codes,
2009-11-27).

As of eac14f8 (Win32: Thread-safe windows console output, 2012-01-14),
however, this is no longer the case, as the ANSI color sequence support
code needed to be replaced with a thread-safe version, one side effect
being that stdout and stderr handled no matter which function is used to
write to it.

So let's just remove the comment that is now obsolete.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Second batch of topics for 2.10Junio C Hamano Mon, 27 Jun 2016 17:07:08 +0000 (10:07 -0700)

Second batch of topics for 2.10

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Sync with maintJunio C Hamano Mon, 27 Jun 2016 17:00:15 +0000 (10:00 -0700)

Sync with maint

* maint:
Start preparing for 2.9.1

Start preparing for 2.9.1Junio C Hamano Mon, 27 Jun 2016 16:59:51 +0000 (09:59 -0700)

Start preparing for 2.9.1

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'tb/complete-status'Junio C Hamano Mon, 27 Jun 2016 16:56:54 +0000 (09:56 -0700)

Merge branch 'tb/complete-status'

The completion script (in contrib/) learned to complete "git
status" options.

* tb/complete-status:
completion: add git status
completion: add __git_get_option_value helper
completion: factor out untracked file modes into a variable

Merge branch 'mg/cherry-pick-multi-on-unborn'Junio C Hamano Mon, 27 Jun 2016 16:56:53 +0000 (09:56 -0700)

Merge branch 'mg/cherry-pick-multi-on-unborn'

"git cherry-pick A" worked on an unborn branch, but "git
cherry-pick A..B" didn't.

* mg/cherry-pick-multi-on-unborn:
cherry-pick: allow to pick to unborn branches

Merge branch 'lf/receive-pack-auto-gc-to-client'Junio C Hamano Mon, 27 Jun 2016 16:56:52 +0000 (09:56 -0700)

Merge branch 'lf/receive-pack-auto-gc-to-client'

Allow messages that are generated by auto gc during "git push" on
the receiving end to be explicitly passed back to the sending end
over sideband, so that they are shown with "remote: " prefix to
avoid confusing the users.

* lf/receive-pack-auto-gc-to-client:
receive-pack: send auto-gc output over sideband 2

Merge branch 'em/newer-freebsd-shells-are-fine-with... Junio C Hamano Mon, 27 Jun 2016 16:56:52 +0000 (09:56 -0700)

Merge branch 'em/newer-freebsd-shells-are-fine-with-returns'

Comments about misbehaving FreeBSD shells have been clarified with
the version number (9.x and before are broken, newer ones are OK).

* em/newer-freebsd-shells-are-fine-with-returns:
rebase: update comment about FreeBSD /bin/sh

Merge branch 'lv/status-say-working-tree-not-directory'Junio C Hamano Mon, 27 Jun 2016 16:56:51 +0000 (09:56 -0700)

Merge branch 'lv/status-say-working-tree-not-directory'

"git status" used to say "working directory" when it meant "working
tree".

* lv/status-say-working-tree-not-directory:
Use "working tree" instead of "working directory" for git status

Merge branch 'nb/gnome-keyring-build'Junio C Hamano Mon, 27 Jun 2016 16:56:50 +0000 (09:56 -0700)

Merge branch 'nb/gnome-keyring-build'

Build improvements for gnome-keyring (in contrib/)

* nb/gnome-keyring-build:
gnome-keyring: Don't hard-code pkg-config executable

Merge branch 'jc/deref-tag'Junio C Hamano Mon, 27 Jun 2016 16:56:49 +0000 (09:56 -0700)

Merge branch 'jc/deref-tag'

Code clean-up.

* jc/deref-tag:
blame, line-log: do not loop around deref_tag()

Merge branch 'et/add-chmod-x'Junio C Hamano Mon, 27 Jun 2016 16:56:49 +0000 (09:56 -0700)

Merge branch 'et/add-chmod-x'

"git update-index --add --chmod=+x file" may be usable as an escape
hatch, but not a friendly thing to force for people who do need to
use it regularly. "git add --chmod=+x file" can be used instead.

* et/add-chmod-x:
add: add --chmod=+x / --chmod=-x options

Merge branch 'jk/avoid-unbounded-alloca'Junio C Hamano Mon, 27 Jun 2016 16:56:48 +0000 (09:56 -0700)

Merge branch 'jk/avoid-unbounded-alloca'

* jk/avoid-unbounded-alloca:
tree-diff: avoid alloca for large allocations

Merge branch 'rj/compat-regex-size-max-fix'Junio C Hamano Mon, 27 Jun 2016 16:56:47 +0000 (09:56 -0700)

Merge branch 'rj/compat-regex-size-max-fix'

A compilation fix.

* rj/compat-regex-size-max-fix:
regex: fix a SIZE_MAX macro redefinition warning

Merge branch 'vs/prompt-avoid-unset-variable'Junio C Hamano Mon, 27 Jun 2016 16:56:47 +0000 (09:56 -0700)

Merge branch 'vs/prompt-avoid-unset-variable'

The git-prompt scriptlet (in contrib/) was not friendly with those
who uses "set -u", which has been fixed.

* vs/prompt-avoid-unset-variable:
git-prompt.sh: Don't error on null ${ZSH,BASH}_VERSION, $short_sha

Merge branch 'sg/reflog-past-root'Junio C Hamano Mon, 27 Jun 2016 16:56:46 +0000 (09:56 -0700)

Merge branch 'sg/reflog-past-root'

"git reflog" stopped upon seeing an entry that denotes a branch
creation event (aka "unborn"), which made it appear as if the
reflog was truncated.

* sg/reflog-past-root:
reflog: continue walking the reflog past root commits

Merge branch 'pb/strbuf-read-file-doc'Junio C Hamano Mon, 27 Jun 2016 16:56:46 +0000 (09:56 -0700)

Merge branch 'pb/strbuf-read-file-doc'

* pb/strbuf-read-file-doc:
strbuf: describe the return value of strbuf_read_file

Merge branch 'dn/gpg-doc'Junio C Hamano Mon, 27 Jun 2016 16:56:45 +0000 (09:56 -0700)

Merge branch 'dn/gpg-doc'

The documentation tries to consistently spell "GPG"; when
referring to the specific program name, "gpg" is used.

* dn/gpg-doc:
Documentation: GPG capitalization

Merge branch 'jk/fetch-prune-doc'Junio C Hamano Mon, 27 Jun 2016 16:56:44 +0000 (09:56 -0700)

Merge branch 'jk/fetch-prune-doc'

* jk/fetch-prune-doc:
fetch: document that pruning happens before fetching

Merge branch 'ap/git-svn-propset-doc'Junio C Hamano Mon, 27 Jun 2016 16:56:43 +0000 (09:56 -0700)

Merge branch 'ap/git-svn-propset-doc'

"git svn propset" subcommand that was added in 2.3 days is
documented now.

* ap/git-svn-propset-doc:
git-svn: document the 'git svn propset' command

Merge branch 'tr/doc-tt'Junio C Hamano Mon, 27 Jun 2016 16:56:42 +0000 (09:56 -0700)

Merge branch 'tr/doc-tt'

The documentation set has been updated so that literal commands,
configuration variables and environment variables are consistently
typeset in fixed-width font and bold in manpages.

* tr/doc-tt:
doc: change configuration variables format
doc: more consistency in environment variables format
doc: change environment variables format
doc: clearer rule about formatting literals