gitweb.git
Merge branch 'js/compat-mkdir'Junio C Hamano Mon, 3 Sep 2012 22:54:37 +0000 (15:54 -0700)

Merge branch 'js/compat-mkdir'

Some mkdir(2) implementations do not want to see trailing slash in
its parameter.

* js/compat-mkdir:
compat: some mkdir() do not like a slash at the end

Merge branch 'js/no-curl-easy-strerror-on-old-curl'Junio C Hamano Mon, 3 Sep 2012 22:54:30 +0000 (15:54 -0700)

Merge branch 'js/no-curl-easy-strerror-on-old-curl'

Done to support compilation on __TANDEM, but is independently useful
for people with older version of libcURL.

* js/no-curl-easy-strerror-on-old-curl:
http.c: don't use curl_easy_strerror prior to curl-7.12.0

Merge branch 'jc/maint-mergetool-style-fix'Junio C Hamano Mon, 3 Sep 2012 22:54:25 +0000 (15:54 -0700)

Merge branch 'jc/maint-mergetool-style-fix'

* jc/maint-mergetool-style-fix:
mergetool: style fixes

Merge branch 'sz/submodule-force-update'Junio C Hamano Mon, 3 Sep 2012 22:54:17 +0000 (15:54 -0700)

Merge branch 'sz/submodule-force-update'

"git submodule update --force" used to leave the working tree of the
submodule intact when there were local changes. It is more intiutive
to make "--force" a sign to run "checkout -f" to overwrite them.

* sz/submodule-force-update:
Make 'git submodule update --force' always check out submodules.

Merge branch 'ph/stash-rerere'Junio C Hamano Mon, 3 Sep 2012 22:54:12 +0000 (15:54 -0700)

Merge branch 'ph/stash-rerere'

"git stash" internally used "git merge-recursive" backend, which did
not trigger "rerere" upon conflicts unlike other mergy operations.

* ph/stash-rerere:
stash: invoke rerere in case of conflict
test: git-stash conflict sets up rerere

Merge branch 'jc/daemon-access-hook'Junio C Hamano Mon, 3 Sep 2012 22:54:03 +0000 (15:54 -0700)

Merge branch 'jc/daemon-access-hook'

Allow an external command to tell git-daemon to decline service
based on the client address, repository path, etc.

* jc/daemon-access-hook:
daemon: --access-hook option

Merge branch 'jc/send-email-reconfirm'Junio C Hamano Mon, 3 Sep 2012 22:53:54 +0000 (15:53 -0700)

Merge branch 'jc/send-email-reconfirm'

Validate interactive input to "git send-email" to avoid common
mistakes such as saying "y<RETURN>" to sender mail address whose
prompt is given with a correctly guessed default.

* jc/send-email-reconfirm:
send-email: validate & reconfirm interactive responses

Merge branch 'cw/cherry-pick-allow-empty-message'Junio C Hamano Mon, 3 Sep 2012 22:53:37 +0000 (15:53 -0700)

Merge branch 'cw/cherry-pick-allow-empty-message'

"git cherry-pick" by default stops when it sees a commit without any
log message. The "--allow-empty-message" option can be used to
silently proceed.

* cw/cherry-pick-allow-empty-message:
cherry-pick: add --allow-empty-message option

Merge branch 'jc/maint-sane-execvp-notdir'Junio C Hamano Mon, 3 Sep 2012 22:53:26 +0000 (15:53 -0700)

Merge branch 'jc/maint-sane-execvp-notdir'

"git foo" errored out with "Not a directory" when the user had a non
directory on $PATH, and worse yet it masked an alias "foo" to run.

* jc/maint-sane-execvp-notdir:
sane_execvp(): ignore non-directory on $PATH

Merge branch 'jc/maint-config-exit-status'Junio C Hamano Mon, 3 Sep 2012 22:53:06 +0000 (15:53 -0700)

Merge branch 'jc/maint-config-exit-status'

The exit status code from "git config" was way overspecified while
being incorrect. Update the implementation to give the documented
status for a case that was documented, and introduce a new code for
"all other errors".

* jc/maint-config-exit-status:
config: "git config baa" should exit with status 1

Latter half of the second batch for 1.8.0Junio C Hamano Wed, 29 Aug 2012 22:00:30 +0000 (15:00 -0700)

Latter half of the second batch for 1.8.0

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

Merge branch 'rr/precompose-utf8-cleanup'Junio C Hamano Wed, 29 Aug 2012 21:50:35 +0000 (14:50 -0700)

Merge branch 'rr/precompose-utf8-cleanup'

* rr/precompose-utf8-cleanup:
precompose-utf8: do not call checks for non-ascii "utf8"
cleanup precompose_utf8

Merge branch 'mh/maint-config-doc-proxy-command'Junio C Hamano Wed, 29 Aug 2012 21:50:30 +0000 (14:50 -0700)

Merge branch 'mh/maint-config-doc-proxy-command'

* mh/maint-config-doc-proxy-command:
git-config doc: unconfuse an example
git-config.txt: fix example

Merge branch 'ef/win32-cred-helper'Junio C Hamano Wed, 29 Aug 2012 21:50:24 +0000 (14:50 -0700)

Merge branch 'ef/win32-cred-helper'

Credential helper for Win32 to allow access to the keychain of
the logged-in user.

* ef/win32-cred-helper:
contrib: add win32 credential-helper

Merge branch 'hv/submodule-path-unmatch'Junio C Hamano Wed, 29 Aug 2012 21:50:15 +0000 (14:50 -0700)

Merge branch 'hv/submodule-path-unmatch'

* hv/submodule-path-unmatch:
Let submodule command exit with error status if path does not exist

Merge branch 'jc/capabilities'Junio C Hamano Wed, 29 Aug 2012 21:50:07 +0000 (14:50 -0700)

Merge branch 'jc/capabilities'

Some capabilities were asked by fetch-pack even when upload-pack did
not advertise that they are available. Fix fetch-pack not to do so.

* jc/capabilities:
fetch-pack: mention server version with verbose output
parse_feature_request: make it easier to see feature values
fetch-pack: do not ask for unadvertised capabilities
do not send client agent unless server does first
send-pack: fix capability-sending logic
include agent identifier in capability string

Merge branch 'mg/rebase-i-onto-reflog-in-full'Junio C Hamano Wed, 29 Aug 2012 21:50:01 +0000 (14:50 -0700)

Merge branch 'mg/rebase-i-onto-reflog-in-full'

The reflog entries left by "git rebase" and "git rebase -i" were
inconsistent.

* mg/rebase-i-onto-reflog-in-full:
rebase -i: use full onto sha1 in reflog

Merge branch 'mz/empty-rebase-test'Junio C Hamano Wed, 29 Aug 2012 21:49:57 +0000 (14:49 -0700)

Merge branch 'mz/empty-rebase-test'

* mz/empty-rebase-test:
add tests for 'git rebase --keep-empty'

Merge branch 'jc/maint-protect-sh-from-ifs'Junio C Hamano Wed, 29 Aug 2012 21:49:45 +0000 (14:49 -0700)

Merge branch 'jc/maint-protect-sh-from-ifs'

When the user exports a non-default IFS without HT, scripts that
rely on being able to parse "ls-files -s | while read a b c..."
start to fail. Protect them from such a misconfiguration.

* jc/maint-protect-sh-from-ifs:
sh-setup: protect from exported IFS

Merge branch 'bc/prune-info'Junio C Hamano Wed, 29 Aug 2012 21:49:39 +0000 (14:49 -0700)

Merge branch 'bc/prune-info'

Teach "git prune" without "-v" to be silent about leftover temporary
files.

* bc/prune-info:
prune.c: only print informational message in show_only or verbose mode

Merge branch 'mz/cherry-code-cleanup'Junio C Hamano Wed, 29 Aug 2012 21:49:29 +0000 (14:49 -0700)

Merge branch 'mz/cherry-code-cleanup'

Minor code clean-up on the cherry-pick codepath.

* mz/cherry-code-cleanup:
cherry: remove redundant check for merge commit
cherry: don't set ignored rev_info options
remove unnecessary parameter from get_patch_ids()

First half of the second batch for 1.8.0Junio C Hamano Mon, 27 Aug 2012 19:10:07 +0000 (12:10 -0700)

First half of the second batch for 1.8.0

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

Merge branch 'jk/docs-docbook-monospace-display'Junio C Hamano Mon, 27 Aug 2012 18:55:28 +0000 (11:55 -0700)

Merge branch 'jk/docs-docbook-monospace-display'

The documentation in the TeXinfo format was using indented output
for materials meant to be examples that are better typeset in
monospace.

* jk/docs-docbook-monospace-display:
docs: monospace listings in docbook output

Merge branch 'da/difftool-updates'Junio C Hamano Mon, 27 Aug 2012 18:55:16 +0000 (11:55 -0700)

Merge branch 'da/difftool-updates'

"git difftool --dir-diff" learned to use symbolic links to prepare
temporary copy of the working tree when available.

* da/difftool-updates:
difftool: silence warning
Add Code Compare v2.80.4 as a merge / diff tool for Windows
mergetool,difftool: Document --tool-help consistently
difftool: Disable --symlinks on cygwin
difftool: Handle compare() returning -1
difftool: Wrap long lines for readability
difftool: Check all return codes from compare()
difftool: Handle finding mergetools/ in a path with spaces
difftool: Use symlinks when diffing against the worktree
difftool: Call the temp directory "git-difftool"
difftool: Move option values into a hash
difftool: Eliminate global variables
difftool: Simplify print_tool_help()

Merge branch 'js/grep-patterntype-config'Junio C Hamano Mon, 27 Aug 2012 18:55:09 +0000 (11:55 -0700)

Merge branch 'js/grep-patterntype-config'

"grep" learned to use a non-standard pattern type by default if a
configuration variable tells it to.

* js/grep-patterntype-config:
grep: add a grep.patternType configuration setting

Merge branch 'bc/receive-pack-stdout-protection'Junio C Hamano Mon, 27 Aug 2012 18:55:00 +0000 (11:55 -0700)

Merge branch 'bc/receive-pack-stdout-protection'

When "git push" triggered the automatic gc on the receiving end, a
message from "git prune" that said it was removing cruft leaked to
the standard output, breaking the communication protocol.

* bc/receive-pack-stdout-protection:
receive-pack: do not leak output from auto-gc to standard output
t/t5400: demonstrate breakage caused by informational message from prune

Merge branch 'ab/diff-write-incomplete-line'Junio C Hamano Mon, 27 Aug 2012 18:54:46 +0000 (11:54 -0700)

Merge branch 'ab/diff-write-incomplete-line'

The output from "git diff -B" for a file that ends with an
incomplete line did not put "\ No newline..." on a line of its own.

* ab/diff-write-incomplete-line:
Fix '\ No newline...' annotation in rewrite diffs

Merge branch 'jc/maint-t7406-rev-parse-max-count-huh'Junio C Hamano Mon, 27 Aug 2012 18:54:36 +0000 (11:54 -0700)

Merge branch 'jc/maint-t7406-rev-parse-max-count-huh'

Test clean-up, with no behaviour change.

* jc/maint-t7406-rev-parse-max-count-huh:
t7406: fix misleading "rev-parse --max-count=1 HEAD"

Merge branch 'jk/maint-null-in-trees'Junio C Hamano Mon, 27 Aug 2012 18:54:28 +0000 (11:54 -0700)

Merge branch 'jk/maint-null-in-trees'

We do not want a link to 0{40} object stored anywhere in our objects.

* jk/maint-null-in-trees:
fsck: detect null sha1 in tree entries
do not write null sha1s to on-disk index
diff: do not use null sha1 as a sentinel value

Merge branch 'mm/push-default-switch-warning'Junio C Hamano Mon, 27 Aug 2012 18:54:04 +0000 (11:54 -0700)

Merge branch 'mm/push-default-switch-warning'

In the next major release, we will switch "git push [$there]" that
does not say what to push from the traditional "matching" to the
updated "simple" semantics, that pushes the current branch to the
branch with the same name only when the current branch is set to
integrate with that remote branch (all other cases will error out).

* mm/push-default-switch-warning:
push: start warning upcoming default change for push.default

Merge branch 'maint'Junio C Hamano Fri, 24 Aug 2012 20:13:53 +0000 (13:13 -0700)

Merge branch 'maint'

* maint:
Prepare for 1.7.11.6
Make the ciabot scripts completely self-configuring in the normal case.
Improved documentation for the ciabot scripts.

Merge branch 'maint-1.7.11' into maintJunio C Hamano Fri, 24 Aug 2012 19:34:19 +0000 (12:34 -0700)

Merge branch 'maint-1.7.11' into maint

* maint-1.7.11:
Prepare for 1.7.11.6
Make the ciabot scripts completely self-configuring in the normal case.
Improved documentation for the ciabot scripts.
man: git pull -r is a short for --rebase
gitcli: describe abbreviation of long options
rev-list docs: clarify --topo-order description
Documentation/CodingGuidelines: spell out more shell guidelines
Documentation: do not mention .git/refs/* directories
tests: Introduce test_seq

Prepare for 1.7.11.6Junio C Hamano Fri, 24 Aug 2012 19:33:31 +0000 (12:33 -0700)

Prepare for 1.7.11.6

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

Merge branch 'mv/pull-r-for-rebase' into maint-1.7.11Junio C Hamano Fri, 24 Aug 2012 19:05:47 +0000 (12:05 -0700)

Merge branch 'mv/pull-r-for-rebase' into maint-1.7.11

A minor documentation update.

* mv/pull-r-for-rebase:
man: git pull -r is a short for --rebase

Merge branch 'jc/maint-abbrev-option-cli' into maint... Junio C Hamano Fri, 24 Aug 2012 19:05:44 +0000 (12:05 -0700)

Merge branch 'jc/maint-abbrev-option-cli' into maint-1.7.11

We did not document that many commands take unique prefix
abbreviations of long options (e.g. "--option" may be the only flag
that the command accepts that begin with "--opt", in which case you
can give "--opt") anywhere easy to find for new people.

* jc/maint-abbrev-option-cli:
gitcli: describe abbreviation of long options

Merge branch 'jc/maint-rev-list-topo-doc' into maint... Junio C Hamano Fri, 24 Aug 2012 19:05:40 +0000 (12:05 -0700)

Merge branch 'jc/maint-rev-list-topo-doc' into maint-1.7.11

It was unclear what "--topo-order" was really about in the
documentation. It is not just about "children before parent", but
also about "don't mix lineages".

* jc/maint-rev-list-topo-doc:
rev-list docs: clarify --topo-order description

Merge branch 'hv/coding-guidelines' into maint-1.7.11Junio C Hamano Fri, 24 Aug 2012 19:05:35 +0000 (12:05 -0700)

Merge branch 'hv/coding-guidelines' into maint-1.7.11

In earlier days, "imitate the style in the neibouring code" was
sufficient to keep the coherent style, but over time some parts of
the codebase have drifted enough to make it ineffective.

* hv/coding-guidelines:
Documentation/CodingGuidelines: spell out more shell guidelines

Merge branch 'jc/tag-doc' into maint-1.7.11Junio C Hamano Fri, 24 Aug 2012 19:05:30 +0000 (12:05 -0700)

Merge branch 'jc/tag-doc' into maint-1.7.11

Our documentation used to assume having files in .git/refs/*
directories was the only to have branches and tags, but that is not
true for quite some time.

* jc/tag-doc:
Documentation: do not mention .git/refs/* directories

Merge branch 'mk/test-seq' into maint-1.7.11Junio C Hamano Fri, 24 Aug 2012 19:05:24 +0000 (12:05 -0700)

Merge branch 'mk/test-seq' into maint-1.7.11

Add a compatibility/utility function to the test framework.

* mk/test-seq:
tests: Introduce test_seq

Merge branch 'lp/no-cmd-http-fetch' into maint-1.7.11Junio C Hamano Fri, 24 Aug 2012 19:05:19 +0000 (12:05 -0700)

Merge branch 'lp/no-cmd-http-fetch' into maint-1.7.11

* lp/no-cmd-http-fetch:
builtin.h: remove unused cmd_<foo> declarations

Merge branch 'bw/maint-1.7.9-solaris-getpass' into... Junio C Hamano Fri, 24 Aug 2012 19:05:11 +0000 (12:05 -0700)

Merge branch 'bw/maint-1.7.9-solaris-getpass' into maint-1.7.11

* bw/maint-1.7.9-solaris-getpass:
Enable HAVE_DEV_TTY for Solaris
terminal: seek when switching between reading and writing

Merge branch 'jk/maint-commit-check-committer-early... Junio C Hamano Fri, 24 Aug 2012 19:05:08 +0000 (12:05 -0700)

Merge branch 'jk/maint-commit-check-committer-early' into maint-1.7.11

* jk/maint-commit-check-committer-early:
commit: check committer identity more strictly

compat: some mkdir() do not like a slash at the endJoachim Schmitz Fri, 24 Aug 2012 10:31:03 +0000 (12:31 +0200)

compat: some mkdir() do not like a slash at the end

Introduce a compatibility helper for platforms with such a mkdir().

Signed-off-by: Joachim Schmitz <jojo@schmitz-digital.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Make 'git submodule update --force' always check out... Stefan Zager Wed, 25 Jul 2012 17:41:54 +0000 (10:41 -0700)

Make 'git submodule update --force' always check out submodules.

Currently, it will only do a checkout if the sha1 registered in the containing
repository doesn't match the HEAD of the submodule, regardless of whether the
submodule is dirty. As discussed on the mailing list, the '--force' flag is a
strong indicator that the state of the submodule is suspect, and should be reset
to HEAD.

Signed-off-by: Stefan Zager <szager@google.com>
Acked-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

mergetool: style fixesJunio C Hamano Thu, 23 Aug 2012 05:33:15 +0000 (22:33 -0700)

mergetool: style fixes

This script is one of the sizeable ones that tempted people to copy
its "neibouring style" in their new code, but was littered with
styles incompatible with our style guide.

- use one tab, not four spaces, per indent level;

- long lines can be wrapped after '|', '&&', or '||' for
readability.

- structures like "if .. then .. else .. fi", "while .. do .. done"
are split into lines in such a way that does not require
unnecessary semicolon.

- case, esac and case-arms align at the same column.

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

Make the ciabot scripts completely self-configuring... Eric S. Raymond Thu, 23 Aug 2012 05:21:53 +0000 (01:21 -0400)

Make the ciabot scripts completely self-configuring in the normal case.

Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Improved documentation for the ciabot scripts.Eric S. Raymond Thu, 23 Aug 2012 04:10:53 +0000 (00:10 -0400)

Improved documentation for the ciabot scripts.

Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

http.c: don't use curl_easy_strerror prior to curl... Joachim Schmitz Thu, 23 Aug 2012 07:33:55 +0000 (09:33 +0200)

http.c: don't use curl_easy_strerror prior to curl-7.12.0

Reverts be22d92 (http: avoid empty error messages for some curl
errors, 2011-09-05) on platforms with older versions of libcURL
where the function is not available.

Signed-off-by: Joachim Schmitz <jojo@schmitz-digital.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Kick off cycle towards 1.8.0Junio C Hamano Wed, 22 Aug 2012 18:49:26 +0000 (11:49 -0700)

Kick off cycle towards 1.8.0

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

Merge branch 'maint'Junio C Hamano Wed, 22 Aug 2012 18:53:58 +0000 (11:53 -0700)

Merge branch 'maint'

* maint:
contrib/ciabot: Get ciabot configuration from git variables

Merge branch 'jc/doc-git-updates'Junio C Hamano Wed, 22 Aug 2012 18:53:36 +0000 (11:53 -0700)

Merge branch 'jc/doc-git-updates'

A minor documentation update.

* jc/doc-git-updates:
Documentation: update the introductory section

Merge branch 'mv/pull-r-for-rebase'Junio C Hamano Wed, 22 Aug 2012 18:53:31 +0000 (11:53 -0700)

Merge branch 'mv/pull-r-for-rebase'

A minor documentation update.

* mv/pull-r-for-rebase:
man: git pull -r is a short for --rebase

Merge branch 'jc/maint-abbrev-option-cli'Junio C Hamano Wed, 22 Aug 2012 18:53:25 +0000 (11:53 -0700)

Merge branch 'jc/maint-abbrev-option-cli'

We did not document that many commands take unique prefix
abbreviations of long options (e.g. "--option" may be the only flag
that the command accepts that begin with "--opt", in which case you
can give "--opt") anywhere easy to find for new people.

* jc/maint-abbrev-option-cli:
gitcli: describe abbreviation of long options

Merge branch 'jc/maint-rev-list-topo-doc'Junio C Hamano Wed, 22 Aug 2012 18:53:20 +0000 (11:53 -0700)

Merge branch 'jc/maint-rev-list-topo-doc'

It was unclear what "--topo-order" was really about in the
documentation. It is not just about "children before parent", but
also about "don't mix lineages".

* jc/maint-rev-list-topo-doc:
rev-list docs: clarify --topo-order description

Merge branch 'hv/coding-guidelines'Junio C Hamano Wed, 22 Aug 2012 18:53:07 +0000 (11:53 -0700)

Merge branch 'hv/coding-guidelines'

In earlier days, "imitate the style in the neibouring code" was
sufficient to keep the coherent style, but over time some parts of
the codebase have drifted enough to make it ineffective.

* hv/coding-guidelines:
Documentation/CodingGuidelines: spell out more shell guidelines

Merge branch 'jk/check-docs-update'Junio C Hamano Wed, 22 Aug 2012 18:53:00 +0000 (11:53 -0700)

Merge branch 'jk/check-docs-update'

Simplify "make check-docs" implementation and update its coverage.

* jk/check-docs-update:
check-docs: get documented command list from Makefile
check-docs: drop git-help special-case
check-docs: list git-gui as a command
check-docs: factor out command-list
command-list: mention git-credential-* helpers
command-list: add git-sh-i18n
check-docs: update non-command documentation list
check-docs: mention gitweb specially

Merge branch 'jc/tag-doc'Junio C Hamano Wed, 22 Aug 2012 18:52:55 +0000 (11:52 -0700)

Merge branch 'jc/tag-doc'

Our documentation used to assume having files in .git/refs/*
directories was the only to have branches and tags, but that is not
true for quite some time.

* jc/tag-doc:
Documentation: do not mention .git/refs/* directories

Merge branch 'js/gitweb-path-info-unquote'Junio C Hamano Wed, 22 Aug 2012 18:52:32 +0000 (11:52 -0700)

Merge branch 'js/gitweb-path-info-unquote'

"gitweb" when used with PATH_INFO failed to notice directories with
SP (and other characters that need URL-style quoting) in them.

* js/gitweb-path-info-unquote:
gitweb: URL-decode $my_url/$my_uri when stripping PATH_INFO

Merge branch 'tr/void-diff-setup-done'Junio C Hamano Wed, 22 Aug 2012 18:52:26 +0000 (11:52 -0700)

Merge branch 'tr/void-diff-setup-done'

Remove unnecessary code.

* tr/void-diff-setup-done:
diff_setup_done(): return void

Merge branch 'tr/merge-recursive-flush'Junio C Hamano Wed, 22 Aug 2012 18:52:19 +0000 (11:52 -0700)

Merge branch 'tr/merge-recursive-flush'

Remove unnecessary code.

* tr/merge-recursive-flush:
merge-recursive: eliminate flush_buffer() in favor of write_in_full()

Merge branch 'mm/die-with-dashdash-help'Junio C Hamano Wed, 22 Aug 2012 18:51:53 +0000 (11:51 -0700)

Merge branch 'mm/die-with-dashdash-help'

When the user gives an argument that can be taken as both a revision
name and a pathname without disambiguating with "--", we used to
give a help message "Use '--' to separate". The message has been
clarified to show where that '--' goes on the command line.

* mm/die-with-dashdash-help:
setup: clarify error messages for file/revisions ambiguity

Merge branch 'tr/maint-send-email-2047'Junio C Hamano Wed, 22 Aug 2012 18:51:47 +0000 (11:51 -0700)

Merge branch 'tr/maint-send-email-2047'

"git send-email" did not unquote encoded words that appear on the
header correctly, and lost "_" from strings.

* tr/maint-send-email-2047:
send-email: improve RFC2047 quote parsing

Merge branch 'nd/index-errno'Junio C Hamano Wed, 22 Aug 2012 18:51:42 +0000 (11:51 -0700)

Merge branch 'nd/index-errno'

Assignments to errno before calling system functions that used to
matter in the old code were left behind after the code structure
changed sufficiently to make them useless.

* nd/index-errno:
read_index_from: remove bogus errno assignments

Merge branch 'mk/test-seq'Junio C Hamano Wed, 22 Aug 2012 18:51:37 +0000 (11:51 -0700)

Merge branch 'mk/test-seq'

Add a compatibility/utility function to the test framework.

* mk/test-seq:
tests: Introduce test_seq

Merge branch 'pg/maint-apply-remove-unused-variable'Junio C Hamano Wed, 22 Aug 2012 18:51:33 +0000 (11:51 -0700)

Merge branch 'pg/maint-apply-remove-unused-variable'

Remove an unused field.

* pg/maint-apply-remove-unused-variable:
apply: delete unused deflate_origlen from patch struct

Merge branch 'jc/test-prereq'Junio C Hamano Wed, 22 Aug 2012 18:51:26 +0000 (11:51 -0700)

Merge branch 'jc/test-prereq'

Teaches the test framework to probe rarely used prerequistes lazily,
and make use of it for detecting SYMLINKS, CASE_INSENSITIVE_FS and
NKD/NKC MacOS x gotcha.

* jc/test-prereq:
t3910: use the UTF8_NFD_TO_NFC test prereq
test-lib: provide UTF8 behaviour as a prerequisite
t0050: use the SYMLINKS test prereq
t0050: use the CASE_INSENSITIVE_FS test prereq
test-lib: provide case insensitivity as a prerequisite
test: allow prerequisite to be evaluated lazily
test: rename $satisfied to $satisfied_prereq

Merge branch 'ms/git-svn-1.7'Junio C Hamano Wed, 22 Aug 2012 18:51:20 +0000 (11:51 -0700)

Merge branch 'ms/git-svn-1.7'

A series by Michael Schwern via Eric to update git-svn to revamp the
way URLs are internally passed around, to make it work with SVN 1.7.

* ms/git-svn-1.7:
git-svn: remove ad-hoc canonicalizations
git-svn: canonicalize newly-minted URLs
git-svn: introduce add_path_to_url function
git-svn: canonicalize earlier
git-svn: replace URL escapes with canonicalization
git-svn: attempt to mimic SVN 1.7 URL canonicalization
t9107: fix typo
t9118: workaround inconsistency between SVN versions
Git::SVN{,::Ra}: canonicalize earlier
git-svn: path canonicalization uses SVN API
Git::SVN::Utils: remove irrelevant comment
git-svn: add join_paths() to safely concatenate paths
git-svn: factor out _collapse_dotdot function
git-svn: use SVN 1.7 to canonicalize when possible
git-svn: move canonicalization to Git::SVN::Utils
use Git::SVN{,::RA}->url accessor globally
use Git::SVN->path accessor globally
Git::SVN::Ra: use accessor for URLs
Git::SVN: use accessor for URLs internally
Git::SVN: use accessors internally for path

t3910: use the UTF8_NFD_TO_NFC test prereqMichael J Gruber Mon, 30 Jul 2012 09:57:18 +0000 (11:57 +0200)

t3910: use the UTF8_NFD_TO_NFC test prereq

Besides reusing the new test prerequisite, this fixes also the issue
that the current output is not TAP compliant and produces the output "no
reason given" [for skipping].

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'maint-1.7.11' into maintJunio C Hamano Wed, 22 Aug 2012 18:27:30 +0000 (11:27 -0700)

Merge branch 'maint-1.7.11' into maint

* maint-1.7.11:
contrib/ciabot: Get ciabot configuration from git variables

contrib/ciabot: Get ciabot configuration from git variablesEric S. Raymond Wed, 22 Aug 2012 10:52:30 +0000 (06:52 -0400)

contrib/ciabot: Get ciabot configuration from git variables

These changes remove all need to modify the ciabot scripts for installation.
Instead, per-project configuration can be dome via variables in a [ciabot]
section of the config file.

Also, correct for the new server address.

Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: silence warningRoss Lagerwall Tue, 21 Aug 2012 10:21:40 +0000 (12:21 +0200)

difftool: silence warning

Silence a warning given when running git difftool --dir-diff and
there are no changes.

This is because command_oneline returns undef when the command has no
output, not ''.

Signed-off-by: Ross Lagerwall <rosslagerwall@gmail.com>
Acked-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

precompose-utf8: do not call checks for non-ascii ... Junio C Hamano Mon, 20 Aug 2012 18:12:58 +0000 (11:12 -0700)

precompose-utf8: do not call checks for non-ascii "utf8"

As suggested by Linus, this function is not checking UTF-8-ness of the
string; it only is seeing if it is pure US-ASCII.

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

Git 1.7.12 v1.7.12Junio C Hamano Mon, 20 Aug 2012 00:02:11 +0000 (17:02 -0700)

Git 1.7.12

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

git-config doc: unconfuse an exampleJunio C Hamano Sat, 18 Aug 2012 23:35:09 +0000 (16:35 -0700)

git-config doc: unconfuse an example

One fictitious command "proxy-command" is enclosed inside a double
quote pair, while another fictitious command "default-proxy" is not
in the example, but the quoting does not change anything in the pair
of examples. Remove the quotes to avoid unnecessary confusion.

Noticed by Michael Haggerty.

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

git-config.txt: fix exampleMichael Haggerty Sat, 18 Aug 2012 17:32:10 +0000 (19:32 +0200)

git-config.txt: fix example

The "--add" option is required to add a new value to a multivalued
configuration entry.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'jc/doc-git-updates' (early part)Junio C Hamano Fri, 17 Aug 2012 20:27:10 +0000 (13:27 -0700)

Merge branch 'jc/doc-git-updates' (early part)

* 'jc/doc-git-updates' (early part):
Documentation: update URL for formatted pages

Documentation: update the introductory sectionJunio C Hamano Fri, 17 Aug 2012 19:48:52 +0000 (12:48 -0700)

Documentation: update the introductory section

The second paragraph in the git(1) description section were meant to
guide people who are not ready to dive into this page away from here.
Referring migrating CVS users to another page before they get
acquainted with Git was somewhat out of place. Move the reference to
the "FURTHER DOCUMENTATION" section and push that section down.

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

Documentation: update URL for formatted pagesJunio C Hamano Fri, 17 Aug 2012 19:14:57 +0000 (12:14 -0700)

Documentation: update URL for formatted pages

The one at kernel.org has not been updated for quite a while and
can no longer be called "the latest".

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

stash: invoke rerere in case of conflictPhil Hord Tue, 10 Jul 2012 22:52:28 +0000 (18:52 -0400)

stash: invoke rerere in case of conflict

"stash apply" directly calls a backend merge function which does not
automatically invoke rerere. This confuses mergetool when leftover
rerere state is left behind from previous merges.

Invoke rerere explicitly when we encounter a conflict during stash
apply. This turns the test introduced by the previous commit to
succeed.

Signed-off-by: Phil Hord <hordp@cisco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

test: git-stash conflict sets up rererePhil Hord Tue, 10 Jul 2012 22:52:27 +0000 (18:52 -0400)

test: git-stash conflict sets up rerere

Add a test to make sure that a conflicted "stash apply" invokes
rerere to record the conflicts and resolve the the files it can
(the current code doesn't, so the test is marked as failing).

Without correct state recorded for rerere, mergetool may be
confused, causing it to think no files have conflicts even though
they do. This condition is not verified by this test since a
subsequent commit will change the behavior to enable rerere for
stash conflicts.

Also, the next test expected us to finish up with a reset, which is
impossible to do if we fail (as we must) and it's an unreasonable
expectation anyway. Begin the next test with a reset of its own
instead.

Signed-off-by: Phil Hord <hordp@cisco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

cleanup precompose_utf8Robin Rosenberg Fri, 17 Aug 2012 14:53:10 +0000 (16:53 +0200)

cleanup precompose_utf8

- Remove extraneous parentheses and braces;

- Remove redundant NUL-termination before strcpy();

- Check result of unlink when probing for decomposed file names;

- Adjust for the coding style by adding missing whitespaces;

- Move storage class "static" at the beginning of the decl.

Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

man: git pull -r is a short for --rebaseMiklos Vajna Thu, 16 Aug 2012 09:50:18 +0000 (11:50 +0200)

man: git pull -r is a short for --rebase

Letting the "--rebase" option squat on the short-and-sweet single
letter option "-r" was an unintended accident and was not even
documented, but the short option seems to be already used in the
wild. Let's document it so that other options that begin with "r"
would not be tempted to steal it.

Signed-off-by: Miklos Vajna <vmiklos@suse.cz>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

gitcli: describe abbreviation of long optionsJunio C Hamano Fri, 17 Aug 2012 06:16:22 +0000 (23:16 -0700)

gitcli: describe abbreviation of long options

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

contrib: add win32 credential-helperErik Faye-Lund Fri, 27 Jul 2012 17:10:06 +0000 (19:10 +0200)

contrib: add win32 credential-helper

Since the Windows port of Git expects binary pipes, we need to make
sure the helper-end also sets up binary pipes.

Side-step CRLF-issue in test to make it pass.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge git://github.com/git-l10n/git-po to update Swedis... Junio C Hamano Fri, 17 Aug 2012 03:13:45 +0000 (20:13 -0700)

Merge git://github.com/git-l10n/git-po to update Swedish translation

* git://github.com/git-l10n/git-po:
l10n: Fixes to Swedish translation

l10n: Fixes to Swedish translationPeter Krefting Tue, 14 Aug 2012 08:58:14 +0000 (09:58 +0100)

l10n: Fixes to Swedish translation

Tersify texts overflowing an 80-character terminal.
Fix spelling mistakes.

Signed-off-by: Peter Krefting <peter@softwolves.pp.se>

Git 1.7.12-rc3 v1.7.12-rc3Junio C Hamano Wed, 15 Aug 2012 20:46:16 +0000 (13:46 -0700)

Git 1.7.12-rc3

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

Sync with 1.7.11.5Junio C Hamano Wed, 15 Aug 2012 20:41:17 +0000 (13:41 -0700)

Sync with 1.7.11.5

Git 1.7.11.5 v1.7.11.5Junio C Hamano Wed, 15 Aug 2012 20:39:53 +0000 (13:39 -0700)

Git 1.7.11.5

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

Merge branch 'rj/maint-grep-remove-redundant-test'... Junio C Hamano Wed, 15 Aug 2012 20:37:20 +0000 (13:37 -0700)

Merge branch 'rj/maint-grep-remove-redundant-test' into maint

* rj/maint-grep-remove-redundant-test:
t7810-*.sh: Remove redundant test

Merge branch 'hv/link-alt-odb-entry' into maintJunio C Hamano Wed, 15 Aug 2012 20:36:47 +0000 (13:36 -0700)

Merge branch 'hv/link-alt-odb-entry' into maint

* hv/link-alt-odb-entry:
link_alt_odb_entry: fix read over array bounds reported by valgrind

rev-list docs: clarify --topo-order descriptionJunio C Hamano Wed, 15 Aug 2012 20:02:48 +0000 (13:02 -0700)

rev-list docs: clarify --topo-order description

It was unclear what "--topo-order" was really about in the
documentation. It is not just about "children before parent", but
also about "don't mix lineages".

Reword the description for both "--date-order" and "--topo-order",
and add an illustration to it.

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

gitweb: URL-decode $my_url/$my_uri when stripping PATH_INFOJay Soffian Thu, 9 Aug 2012 02:29:26 +0000 (22:29 -0400)

gitweb: URL-decode $my_url/$my_uri when stripping PATH_INFO

When gitweb is used as a DirectoryIndex, it attempts to strip
PATH_INFO on its own, as $cgi->url() fails to do so.

However, it fails to account for the fact that PATH_INFO has
already been URL-decoded by the web server, but the value
returned by $cgi->url() has not been. This causes the stripping
to fail whenever the URL contains encoded characters.

To see this in action, setup gitweb as a DirectoryIndex and
then use it on a repository with a directory containing a
space in the name. Navigate to tree view, examine the gitweb
generated html and you'll see a link such as:

<a href="/test.git/tree/HEAD:/directory with spaces">directory with spaces</a>

When clicked on, the browser will URL-encode this link, giving
a $cgi->url() of the form:

/test.git/tree/HEAD:/directory%20with%20spaces

While PATH_INFO is:

/test.git/tree/HEAD:/directory with spaces

Fix this by calling unescape() on both $my_url and $my_uri before
stripping PATH_INFO from them.

Signed-off-by: Jay Soffian <jaysoffian@gmail.com>
Acked-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

daemon: --access-hook optionJunio C Hamano Tue, 14 Aug 2012 18:37:51 +0000 (11:37 -0700)

daemon: --access-hook option

The --access-hook option to "git daemon" specifies an external
command to be run every time a client connects, with

- service name (e.g. "upload-pack", etc.),
- path to the repository,
- hostname (%H),
- canonical hostname (%CH),
- ip address (%IP),
- tcp port (%P)

as its command line arguments. The external command can decide to
decline the service by exiting with a non-zero status (or to allow it
by exiting with a zero status). It can also look at the $REMOTE_ADDR
and $REMOTE_PORT environment variables to learn about the requestor
when making this decision.

The external command can optionally write a single line to its
standard output to be sent to the requestor as an error message when
it declines the service.

Acked-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/CodingGuidelines: spell out more shell... Heiko Voigt Wed, 15 Aug 2012 17:06:01 +0000 (19:06 +0200)

Documentation/CodingGuidelines: spell out more shell guidelines

In earlier days, "imitate the style in the neibouring code" was
sufficient to keep the coherent style, but over time some parts of
the codebase have drifted enough to make it ineffective.

Spell some of the guidelines out.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

send-email: validate & reconfirm interactive responsesJunio C Hamano Tue, 14 Aug 2012 22:15:53 +0000 (15:15 -0700)

send-email: validate & reconfirm interactive responses

People answer 'y' to "Who should the emails appear to be from?" and
'n' to "Message-ID to be used as In-Reply-To for the first email?"
for some unknown reason. While it is possible that your local
username really is "y" and you are sending the mail to your local
colleagues, it is possible, and some might even say it is likely,
that it is a user error.

Fortunately, our interactive prompter already has input validation
mechanism built-in. Enhance it so that we can optionally reconfirm
and allow the user to pass an input that does not validate, and
"softly" require input to the sender, in-reply-to, and recipient to
contain "@" and "." in this order, which would catch most cases of
mistakes.

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

Let submodule command exit with error status if path... Heiko Voigt Tue, 14 Aug 2012 20:35:27 +0000 (22:35 +0200)

Let submodule command exit with error status if path does not exist

Various subcommands of the "git submodule" command exited with 0
status even though the path given by the user did not exist.

The reason behind that was that they all pipe the output of
module_list into the while loop which then does the action on the
paths specified by the commandline. Since the exit code of the
command on the upstream side of the pipe is ignored by the shell,
the status code of "ls-files --error-unmatch" nor "module_list" was
not propagated.

In case ls-files returns with an error code, we write a special
string that is not possible in non error situations, and no other
output, so that the downstream can detect the error and die with an
error code.

The error message that there is an unmatched pathspec comes through
stderr directly from ls-files. So the user still gets a hint whats going
on.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

fetch-pack: mention server version with verbose outputJeff King Tue, 14 Aug 2012 02:02:10 +0000 (22:02 -0400)

fetch-pack: mention server version with verbose output

Fetch-pack's verbose mode is more of a debugging mode (and
in fact takes two "-v" arguments to trigger via the
porcelain layer). Let's mention the server version as
another possible item of interest.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

parse_feature_request: make it easier to see feature... Jeff King Tue, 14 Aug 2012 01:59:27 +0000 (21:59 -0400)

parse_feature_request: make it easier to see feature values

We already take care to parse key/value capabilities like
"foo=bar", but the code does not provide a good way of
actually finding out what is on the right-hand side of the
"=".

A server using "parse_feature_request" could accomplish this
with some extra parsing. You must skip past the "key"
portion manually, check for "=" versus NUL or space, and
then find the length by searching for the next space (or
NUL). But clients can't even do that, since the
"server_supports" interface does not even return the
pointer.

Instead, let's have our parser share more information by
providing a pointer to the value and its length. The
"parse_feature_value" function returns a pointer to the
feature's value portion, along with the length of the value.
If the feature is missing, NULL is returned. If it does not
have an "=", then a zero-length value is returned.

Similarly, "server_feature_value" behaves in the same way,
but always checks the static server_feature_list variable.

We can then implement "server_supports" in terms of
"server_feature_value". We cannot implement the original
"parse_feature_request" in terms of our new function,
because it returned a pointer to the beginning of the
feature. However, no callers actually cared about the value
of the returned pointer, so we can simplify it to a boolean
just as we do for "server_supports".

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

fetch-pack: do not ask for unadvertised capabilitiesJunio C Hamano Fri, 10 Aug 2012 21:27:52 +0000 (14:27 -0700)

fetch-pack: do not ask for unadvertised capabilities

In the same spirit as the previous fix, stop asking for thin-pack, no-progress
and include-tag capabilities when the other end does not claim to support them.

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