]> git.ipfire.org Git - thirdparty/git.git/log
thirdparty/git.git
11 years agoSync with 1.7.12.1
Junio C Hamano [Tue, 18 Sep 2012 21:35:03 +0000 (14:35 -0700)] 
Sync with 1.7.12.1

11 years agoGit 1.7.12.1 v1.7.12.1
Junio C Hamano [Tue, 18 Sep 2012 21:34:31 +0000 (14:34 -0700)] 
Git 1.7.12.1

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'er/doc-fast-import-done' into maint
Junio C Hamano [Tue, 18 Sep 2012 21:33:52 +0000 (14:33 -0700)] 
Merge branch 'er/doc-fast-import-done' into maint

* er/doc-fast-import-done:
  fast-import: document the --done option

11 years agoMerge branch 'jk/config-warn-on-inaccessible-paths' into maint
Junio C Hamano [Tue, 18 Sep 2012 21:24:06 +0000 (14:24 -0700)] 
Merge branch 'jk/config-warn-on-inaccessible-paths' into maint

The attribute system may be asked for a path that itself or its
leading directories no longer exists in the working tree, and it is
fine if we cannot open .gitattribute file in such a case.  Failure
to open per-directory .gitattributes with error status other than
ENOENT and ENOTDIR should be diagnosed.

* jk/config-warn-on-inaccessible-paths:
  attr: failure to open a .gitattributes file is OK with ENOTDIR
  warn_on_inaccessible(): a helper to warn on inaccessible paths
  attr: warn on inaccessible attribute files
  gitignore: report access errors of exclude files
  config: warn on inaccessible files

11 years agoDoc: Improve shallow depth wording
Philip Oakley [Sun, 16 Sep 2012 10:57:58 +0000 (11:57 +0100)] 
Doc: Improve shallow depth wording

Avoid confusion in compound sentence about the start of the commit set
and the depth measure. Use two sentences.

Signed-off-by: Philip Oakley <philipoakley@iee.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoDocumentation/git-filter-branch: Move note about effect of removing commits
Andreas Schwab [Tue, 18 Sep 2012 15:55:08 +0000 (17:55 +0200)] 
Documentation/git-filter-branch: Move note about effect of removing commits

The note that explains that changes introduced by removed commits are
preserved should be placed directly after the paragraph that describes
such commits removal.  Otherwise the reference to "the commits" appears
out of context.

Also the big example that follows "Consider this history" is about
rewriting part of the history DAG.  Move the paragraph that
describes the operation close to it.

Signed-off-by: Andreas Schwab <schwab@linux-m68k.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoThe seventh batch for 1.8.0
Junio C Hamano [Mon, 17 Sep 2012 23:00:39 +0000 (16:00 -0700)] 
The seventh batch for 1.8.0

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'maint'
Junio C Hamano [Mon, 17 Sep 2012 22:59:34 +0000 (15:59 -0700)] 
Merge branch 'maint'

* maint:
  t/perf: add "trash directory" to .gitignore
  Add missing -z to git check-attr usage text for consistency with man page
  git-jump: ignore (custom) prefix in diff mode
  Documentation: indent-with-non-tab uses "equivalent tabs" not 8
  completion: add --no-edit to git-commit

11 years agoMerge branch 'mh/fetch-filter-refs'
Junio C Hamano [Mon, 17 Sep 2012 22:58:49 +0000 (15:58 -0700)] 
Merge branch 'mh/fetch-filter-refs'

Code simplification and clarification.

* mh/fetch-filter-refs:
  test-string-list.c: Fix some sparse warnings
  fetch-pack: eliminate spurious error messages
  cmd_fetch_pack(): simplify computation of return value
  fetch-pack: report missing refs even if no existing refs were received
  cmd_fetch_pack(): return early if finish_connect() fails
  filter_refs(): simplify logic
  filter_refs(): build refs list as we go
  filter_refs(): delete matched refs from sought list
  fetch_pack(): update sought->nr to reflect number of unique entries
  filter_refs(): do not check the same sought_pos twice
  Change fetch_pack() and friends to take string_list arguments
  fetch_pack(): reindent function decl and defn
  Rename static function fetch_pack() to http_fetch_pack()
  t5500: add tests of fetch-pack --all --depth=N $URL $REF
  t5500: add tests of error output for missing refs

11 years agoMerge branch 'nd/maint-diffstat-summary'
Junio C Hamano [Mon, 17 Sep 2012 22:57:22 +0000 (15:57 -0700)] 
Merge branch 'nd/maint-diffstat-summary'

Earlier we made the diffstat summary line that shows the number of
lines added/deleted localizable, but it was found irritating having
to see them in various languages on a list whose discussion language
is English.

The original had trivial thinko in reverting Q_(), which has been
fixed.

* nd/maint-diffstat-summary:
  Revert diffstat back to English

11 years agoMerge branch 'jk/config-warn-on-inaccessible-paths'
Junio C Hamano [Mon, 17 Sep 2012 22:55:41 +0000 (15:55 -0700)] 
Merge branch 'jk/config-warn-on-inaccessible-paths'

The attribute system may be asked for a path that itself or its
leading directories no longer exists in the working tree.  Failure
to open per-directory .gitattributes with error status other than
ENOENT and ENOTDIR are diagnosed.

* jk/config-warn-on-inaccessible-paths:
  attr: failure to open a .gitattributes file is OK with ENOTDIR

11 years agoMerge branch 'jw/doc-commit-title'
Junio C Hamano [Mon, 17 Sep 2012 22:53:39 +0000 (15:53 -0700)] 
Merge branch 'jw/doc-commit-title'

Update parts of document that talked about "first line of commit
log" to say "title of commit" with definition of what that "title"
is.

* jw/doc-commit-title:
  Documentation: describe subject more precisely

11 years agoMerge branch 'mh/string-list'
Junio C Hamano [Mon, 17 Sep 2012 22:53:31 +0000 (15:53 -0700)] 
Merge branch 'mh/string-list'

* mh/string-list:
  api-string-list.txt: initialize the string_list the easy way
  string_list: add a function string_list_longest_prefix()
  string_list: add a new function, string_list_remove_duplicates()
  string_list: add a new function, filter_string_list()
  string_list: add two new functions for splitting strings
  string_list: add function string_list_append_nodup()

11 years agoMerge branch 'jc/maint-blame-no-such-path'
Junio C Hamano [Mon, 17 Sep 2012 22:52:32 +0000 (15:52 -0700)] 
Merge branch 'jc/maint-blame-no-such-path'

"git blame MAKEFILE" run in a history that has "Makefile" but not
"MAKEFILE" should say "No such file MAKEFILE in HEAD", but got
confused on a case insensitive filesystem and failed to do so.

Even during a conflicted merge, "git blame $path" always meant to
blame uncommitted changes to the "working tree" version; make it
more useful by showing cleanly merged parts as coming from the other
branch that is being merged.

* jc/maint-blame-no-such-path:
  blame: allow "blame file" in the middle of a conflicted merge
  blame $path: avoid getting fooled by case insensitive filesystems

11 years agot/perf: add "trash directory" to .gitignore
Ramkumar Ramachandra [Mon, 17 Sep 2012 17:06:18 +0000 (22:36 +0530)] 
t/perf: add "trash directory" to .gitignore

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoAdd missing -z to git check-attr usage text for consistency with man page
Adam Spiers [Mon, 17 Sep 2012 11:38:51 +0000 (12:38 +0100)] 
Add missing -z to git check-attr usage text for consistency with man page

Signed-off-by: Adam Spiers <git@adamspiers.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-jump: ignore (custom) prefix in diff mode
Mischa POSLAWSKY [Mon, 17 Sep 2012 01:21:55 +0000 (03:21 +0200)] 
git-jump: ignore (custom) prefix in diff mode

Matching the default file prefix b/ does not yield any results if config
option diff.noprefix or diff.mnemonicprefix is enabled.

Signed-off-by: Mischa POSLAWSKY <git@shiar.nl>
Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoDocumentation: indent-with-non-tab uses "equivalent tabs" not 8
Wesley J. Landaker [Mon, 17 Sep 2012 14:22:15 +0000 (08:22 -0600)] 
Documentation: indent-with-non-tab uses "equivalent tabs" not 8

Update the documentation of the core.whitespace option
"indent-with-non-tab" to correctly reflect that it catches the use of
spaces instead of the equivalent tabs, rather than a fixed number.

Signed-off-by: Wesley J. Landaker <wjl@icecavern.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agocompletion: add --no-edit to git-commit
Yacine Belkadi [Sun, 16 Sep 2012 16:06:11 +0000 (18:06 +0200)] 
completion: add --no-edit to git-commit

Signed-off-by: Yacine Belkadi <yacine.belkadi.1@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agotest-string-list.c: Fix some sparse warnings
Ramsay Jones [Sat, 15 Sep 2012 16:18:42 +0000 (17:18 +0100)] 
test-string-list.c: Fix some sparse warnings

In particular, sparse complains as follows:

        SP test-string-list.c
    test-string-list.c:10:6: warning: symbol 'parse_string_list' was not \
        declared. Should it be static?
    test-string-list.c:18:6: warning: symbol 'write_list' was not \
        declared. Should it be static?
    test-string-list.c:25:6: warning: symbol 'write_list_compact' was not \
        declared. Should it be static?
    test-string-list.c:38:5: warning: symbol 'prefix_cb' was not \
        declared. Should it be static?

In order to suppress the warnings, since the above symbols do not
need more than file scope, we simply include the static modifier
in their declaration.

Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoDraft release notes to 1.8.0
Junio C Hamano [Sat, 15 Sep 2012 04:44:37 +0000 (21:44 -0700)] 
Draft release notes to 1.8.0

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'jc/ll-merge-binary-ours'
Junio C Hamano [Sat, 15 Sep 2012 04:39:56 +0000 (21:39 -0700)] 
Merge branch 'jc/ll-merge-binary-ours'

"git merge -Xtheirs" did not help content-level merge of binary
files; it should just take their version.  Also "*.jpg binary" in
the attributes did not imply they should use the binary ll-merge
driver.

* jc/ll-merge-binary-ours:
  ll-merge: warn about inability to merge binary files only when we can't
  attr: "binary" attribute should choose built-in "binary" merge driver
  merge: teach -Xours/-Xtheirs to binary ll-merge driver

11 years agoMerge branch 'cn/branch-set-upstream-to'
Junio C Hamano [Sat, 15 Sep 2012 04:39:47 +0000 (21:39 -0700)] 
Merge branch 'cn/branch-set-upstream-to'

Finishing touches to the recently graduated topic to introduce
"git branch --set-upstream-to" option.

* cn/branch-set-upstream-to:
  completion: complete branch name for "branch --set-upstream-to="
  completion: add --set-upstream-to and --unset-upstream

11 years agoMerge branch 'sl/autoconf'
Junio C Hamano [Sat, 15 Sep 2012 04:39:42 +0000 (21:39 -0700)] 
Merge branch 'sl/autoconf'

Reduces repetition in configure.ac.

* sl/autoconf:
  build: don't duplicate substitution of make variables
  build: improve GIT_CONF_SUBST signature

11 years agoMerge branch 'dg/run-command-child-cleanup'
Junio C Hamano [Sat, 15 Sep 2012 04:39:37 +0000 (21:39 -0700)] 
Merge branch 'dg/run-command-child-cleanup'

The code to wait for subprocess and remove it from our internal queue
wasn't quite right.

* dg/run-command-child-cleanup:
  run-command.c: fix broken list iteration in clear_child_for_cleanup

11 years agoMerge branch 'jc/mailinfo-RE'
Junio C Hamano [Sat, 15 Sep 2012 04:39:27 +0000 (21:39 -0700)] 
Merge branch 'jc/mailinfo-RE'

We strip the prefix from "Re: subject" and also from a less common
"re: subject", but left even less common "RE: subject" intact.

* jc/mailinfo-RE:
  mailinfo: strip "RE: " prefix

11 years agoMerge branch 'maint'
Junio C Hamano [Sat, 15 Sep 2012 04:38:20 +0000 (21:38 -0700)] 
Merge branch 'maint'

11 years agoDraft release notes to 1.7.12.1
Junio C Hamano [Sat, 15 Sep 2012 04:37:51 +0000 (21:37 -0700)] 
Draft release notes to 1.7.12.1

We are almost there...

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'sb/send-email-reconfirm-fix' into maint
Junio C Hamano [Sat, 15 Sep 2012 04:32:07 +0000 (21:32 -0700)] 
Merge branch 'sb/send-email-reconfirm-fix' into maint

* sb/send-email-reconfirm-fix:
  send-email: initial_to and initial_reply_to are both optional

11 years agoMerge branch 'jc/send-email-reconfirm' into maint
Junio C Hamano [Sat, 15 Sep 2012 04:32:01 +0000 (21:32 -0700)] 
Merge branch 'jc/send-email-reconfirm' into maint

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

11 years agoMerge branch 'mz/cherry-pick-cmdline-order' into maint
Junio C Hamano [Sat, 15 Sep 2012 04:24:18 +0000 (21:24 -0700)] 
Merge branch 'mz/cherry-pick-cmdline-order' into maint

* mz/cherry-pick-cmdline-order:
  cherry-pick/revert: respect order of revisions to pick
  demonstrate broken 'git cherry-pick three one two'
  teach log --no-walk=unsorted, which avoids sorting

11 years agoSync with 1.7.11.7
Junio C Hamano [Sat, 15 Sep 2012 04:20:40 +0000 (21:20 -0700)] 
Sync with 1.7.11.7

11 years agoGit 1.7.11.7 v1.7.11.7
Junio C Hamano [Sat, 15 Sep 2012 03:57:23 +0000 (20:57 -0700)] 
Git 1.7.11.7

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'jk/maint-quiet-is-synonym-to-s-in-log' into maint-1.7.11
Junio C Hamano [Sat, 15 Sep 2012 03:48:31 +0000 (20:48 -0700)] 
Merge branch 'jk/maint-quiet-is-synonym-to-s-in-log' into maint-1.7.11

* jk/maint-quiet-is-synonym-to-s-in-log:
  log: fix --quiet synonym for -s

11 years agoMerge branch 'jc/maint-ident-missing-human-name' into maint-1.7.11
Junio C Hamano [Sat, 15 Sep 2012 03:48:22 +0000 (20:48 -0700)] 
Merge branch 'jc/maint-ident-missing-human-name' into maint-1.7.11

* jc/maint-ident-missing-human-name:
  split_ident_line(): make best effort when parsing author/committer line

11 years agoMerge branch 'rj/test-regex' into maint-1.7.11
Junio C Hamano [Sat, 15 Sep 2012 03:46:39 +0000 (20:46 -0700)] 
Merge branch 'rj/test-regex' into maint-1.7.11

* rj/test-regex:
  test-regex: Add a test to check for a bug in the regex routines

11 years agoMerge branch 'da/gitk-reload-tag-contents' into maint-1.7.11
Junio C Hamano [Sat, 15 Sep 2012 03:45:55 +0000 (20:45 -0700)] 
Merge branch 'da/gitk-reload-tag-contents' into maint-1.7.11

* da/gitk-reload-tag-contents:
  gitk: Rename 'tagcontents' to 'cached_tagcontent'
  gitk: Teach "Reread references" to reload tags
  gitk: Avoid Meta1-F5

11 years agoMerge branch 'jc/maint-checkout-fileglob-doc' into maint-1.7.11
Junio C Hamano [Sat, 15 Sep 2012 03:45:03 +0000 (20:45 -0700)] 
Merge branch 'jc/maint-checkout-fileglob-doc' into maint-1.7.11

* jc/maint-checkout-fileglob-doc:
  gitcli: contrast wildcard given to shell and to git
  gitcli: formatting fix
  Document file-glob for "git checkout -- '*.c'"

11 years agoThe sixth batch for 1.8.0
Junio C Hamano [Fri, 14 Sep 2012 19:34:11 +0000 (12:34 -0700)] 
The sixth batch for 1.8.0

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'nd/checkout-option-parsing-fix'
Junio C Hamano [Fri, 14 Sep 2012 18:54:34 +0000 (11:54 -0700)] 
Merge branch 'nd/checkout-option-parsing-fix'

The option parsing of "git checkout" had error checking, dwim and
defaulting missing options, all mixed in the code, and issuing an
appropriate error message with useful context was getting harder.
Reorganize the code and allow giving a proper diagnosis when the
user says "git checkout -b -t foo bar" (e.g. "-t" is not a good name
for a branch).

* nd/checkout-option-parsing-fix:
  checkout: reorder option handling
  checkout: move more parameters to struct checkout_opts
  checkout: pass "struct checkout_opts *" as const pointer

11 years agoMerge branch 'mh/abspath'
Junio C Hamano [Fri, 14 Sep 2012 18:54:28 +0000 (11:54 -0700)] 
Merge branch 'mh/abspath'

* mh/abspath:
  t0060: split absolute path test in two to exercise some of it on Windows
  t0060: verify that real_path() removes extra slashes
  real_path(): properly handle nonexistent top-level paths
  t0060: verify that real_path() works correctly with absolute paths
  real_path(): reject the empty string
  t0060: verify that real_path() fails if passed the empty string
  absolute_path(): reject the empty string
  t0060: verify that absolute_path() fails if passed the empty string
  t0060: move tests of real_path() from t0000 to here

11 years agoMerge branch 'dj/fetch-all-tags'
Junio C Hamano [Fri, 14 Sep 2012 18:54:19 +0000 (11:54 -0700)] 
Merge branch 'dj/fetch-all-tags'

"git fetch --all", when passed "--no-tags", did not honor the
"--no-tags" option while fetching from individual remotes (the same
issue existed with "--tags", but combination "--all --tags" makes
much less sense than "--all --no-tags").

* dj/fetch-all-tags:
  fetch --all: pass --tags/--no-tags through to each remote

11 years agoMerge branch 'sn/ls-remote-get-url-doc'
Junio C Hamano [Fri, 14 Sep 2012 18:54:12 +0000 (11:54 -0700)] 
Merge branch 'sn/ls-remote-get-url-doc'

* sn/ls-remote-get-url-doc:
  ls-remote: document the '--get-url' option

11 years agoMerge branch 'nd/i18n-status'
Junio C Hamano [Fri, 14 Sep 2012 18:54:04 +0000 (11:54 -0700)] 
Merge branch 'nd/i18n-status'

* nd/i18n-status:
  status: remove i18n legos

11 years agoMerge branch 'rj/path-cleanup'
Junio C Hamano [Fri, 14 Sep 2012 18:53:53 +0000 (11:53 -0700)] 
Merge branch 'rj/path-cleanup'

* rj/path-cleanup:
  Call mkpathdup() rather than xstrdup(mkpath(...))
  Call git_pathdup() rather than xstrdup(git_path("..."))
  path.c: Use vsnpath() in the implementation of git_path()
  path.c: Don't discard the return value of vsnpath()
  path.c: Remove the 'git_' prefix from a file scope function

11 years agoMerge branch 'rj/tap-fix'
Junio C Hamano [Fri, 14 Sep 2012 18:53:45 +0000 (11:53 -0700)] 
Merge branch 'rj/tap-fix'

* rj/tap-fix:
  test-lib.sh: Suppress the "passed all ..." message if no tests run
  test-lib.sh: Add check for invalid use of 'skip_all' facility
  test-lib.sh: Fix some shell coding style violations
  t4016-*.sh: Skip all tests rather than each test
  t3902-*.sh: Skip all tests rather than each test
  t3300-*.sh: Fix a TAP parse error

11 years agoRevert diffstat back to English
Nguyễn Thái Ngọc Duy [Thu, 13 Sep 2012 14:16:26 +0000 (21:16 +0700)] 
Revert diffstat back to English

This reverts the i18n part of 7f81463 (Use correct grammar in diffstat
summary line - 2012-02-01) but still keeps the grammar correctness for
English. It also reverts b354f11 (Fix tests under GETTEXT_POISON on
diffstat - 2012-08-27). The result is diffstat always in English
for all commands.

This helps stop users from accidentally sending localized
format-patch'd patches.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoattr: failure to open a .gitattributes file is OK with ENOTDIR
Junio C Hamano [Thu, 13 Sep 2012 19:40:39 +0000 (12:40 -0700)] 
attr: failure to open a .gitattributes file is OK with ENOTDIR

Often we consult an in-tree .gitattributes file that exists per
directory.  Majority of directories do not usually have such a file,
and it is perfectly fine if we cannot open it because there is no
such file, but we do want to know when there is an I/O or permission
error.  Earlier, we made the codepath warn when we fail to open it
for reasons other than ENOENT for that reason.

We however sometimes have to attempt to open the .gitattributes file
from a directory that does not exist in the commit that is currently
checked out.  "git pack-objects" wants to know if a path is marked
with "-delta" attributes, and "git archive" wants to know about
export-ignore and export-subst attributes.  Both commands may and do
need to ask the attributes system about paths in an arbitrary
commit.  "git diff", after removing an entire directory, may want to
know textconv on paths that used to be in that directory.

Make sure we also ignore a failure to open per-directory attributes
file due to ENOTDIR.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoDocumentation: describe subject more precisely
Jeremy White [Thu, 13 Sep 2012 22:27:09 +0000 (17:27 -0500)] 
Documentation: describe subject more precisely

The discussion of email subject throughout the documentation is
misleading; it indicates that the first line will always become
the subject.  In fact, the subject is generally all lines up until
the first full blank line.

This patch refines that, and makes more use of the concept of a
commit title, with the title being all text up to the first blank line.

Signed-off-by: Jeremy White <jwhite@codeweavers.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge git://github.com/git-l10n/git-po
Junio C Hamano [Wed, 12 Sep 2012 23:14:14 +0000 (16:14 -0700)] 
Merge git://github.com/git-l10n/git-po

* git://github.com/git-l10n/git-po:
  l10n: Update Swedish translation (1166t0f0u)
  l10n: vi.po: update to v1.7.12-146-g16d26
  l10n: de.po: translate 2 new messages
  l10n: zh_CN.po: translate 2 new messages
  l10n: Update git.pot (2 new, 4 removed messages)
  l10n: vi.po & TEAMS: review Vietnamese translation

11 years agol10n: Update Swedish translation (1166t0f0u)
Peter Krefting [Fri, 7 Sep 2012 09:10:23 +0000 (10:10 +0100)] 
l10n: Update Swedish translation (1166t0f0u)

Signed-off-by: Peter Krefting <peter@softwolves.pp.se>
11 years agoMerge git://github.com/vnwildman/git
Jiang Xin [Wed, 12 Sep 2012 22:32:36 +0000 (06:32 +0800)] 
Merge git://github.com/vnwildman/git

* git://github.com/vnwildman/git:
  l10n: vi.po: update to v1.7.12-146-g16d26

11 years agoStart merging the sixth batch for 1.8.0
Junio C Hamano [Wed, 12 Sep 2012 21:33:50 +0000 (14:33 -0700)] 
Start merging the sixth batch for 1.8.0

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'maint'
Junio C Hamano [Wed, 12 Sep 2012 21:36:39 +0000 (14:36 -0700)] 
Merge branch 'maint'

11 years agoMerge branch 'jc/maint-checkout-fileglob-doc'
Junio C Hamano [Wed, 12 Sep 2012 21:22:08 +0000 (14:22 -0700)] 
Merge branch 'jc/maint-checkout-fileglob-doc'

Updated with help from Peff.

* jc/maint-checkout-fileglob-doc:
  gitcli: contrast wildcard given to shell and to git
  gitcli: formatting fix
  Document file-glob for "git checkout -- '*.c'"

11 years agoMerge branch 'sb/send-email-reconfirm-fix'
Junio C Hamano [Wed, 12 Sep 2012 21:22:03 +0000 (14:22 -0700)] 
Merge branch 'sb/send-email-reconfirm-fix'

* sb/send-email-reconfirm-fix:
  send-email: initial_to and initial_reply_to are both optional

11 years agoMerge branch 'nd/maint-remote-remove'
Junio C Hamano [Wed, 12 Sep 2012 21:21:58 +0000 (14:21 -0700)] 
Merge branch 'nd/maint-remote-remove'

* nd/maint-remote-remove:
  remote: prefer subcommand name 'remove' to 'rm'

11 years agoMerge branch 'nd/log-n-doc'
Junio C Hamano [Wed, 12 Sep 2012 21:21:55 +0000 (14:21 -0700)] 
Merge branch 'nd/log-n-doc'

* nd/log-n-doc:
  doc: move rev-list option -<n> from git-log.txt to rev-list-options.txt

11 years agoMerge branch 'kd/cvsimport-avoid-invalid-tag'
Junio C Hamano [Wed, 12 Sep 2012 21:21:50 +0000 (14:21 -0700)] 
Merge branch 'kd/cvsimport-avoid-invalid-tag'

"cvsimport" tried to create a tag taken from CVS without
sufficiently sanitizing it, causing the import to fail when an
invalid character in the tagname made underlying "git tag" to fail.

* kd/cvsimport-avoid-invalid-tag:
  cvsimport: strip all inappropriate tag strings

11 years agoMerge branch 'js/compat-itimer'
Junio C Hamano [Wed, 12 Sep 2012 21:21:44 +0000 (14:21 -0700)] 
Merge branch 'js/compat-itimer'

Pieces to support compilation on __TANDEM.

* js/compat-itimer:
  Add a no-op setitimer() wrapper

11 years agoMerge branch 'js/compat-mkdir'
Junio C Hamano [Wed, 12 Sep 2012 21:21:39 +0000 (14:21 -0700)] 
Merge branch 'js/compat-mkdir'

Finishing touches to recently added wrapper for mkdir() that do not
want to see trailing slashes.

* js/compat-mkdir:
  Document MKDIR_WO_TRAILING_SLASH in Makefile

11 years agoFurther merging in preparation for 1.7.12.1
Junio C Hamano [Wed, 12 Sep 2012 21:10:54 +0000 (14:10 -0700)] 
Further merging in preparation for 1.7.12.1

Describe the following in the draft release notes:

 . jc/apply-binary-p0
 . jc/dotdot-is-parent-directory
 . jc/maint-doc-checkout-b-always-takes-branch-name
 . jk/maint-http-half-auth-push
 . kk/maint-for-each-ref-multi-sort

Yet to be merged before 1.7.12.1 are:

 . jk/config-warn-on-inaccessible-paths
 . jk/maint-quiet-is-synonym-to-s-in-log
 . mz/cherry-pick-cmdline-order

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'maint-1.7.11' into maint
Junio C Hamano [Wed, 12 Sep 2012 21:08:05 +0000 (14:08 -0700)] 
Merge branch 'maint-1.7.11' into maint

11 years agoMerge branch 'jc/apply-binary-p0' into maint-1.7.11
Junio C Hamano [Wed, 12 Sep 2012 21:00:52 +0000 (14:00 -0700)] 
Merge branch 'jc/apply-binary-p0' into maint-1.7.11

"git apply -p0" did not parse pathnames on "diff --git" line
correctly.  This caused patches that had pathnames in no other
places to be mistakenly rejected (most notably, binary patch that
does not rename nor change mode).  Textual patches, renames or mode
changes have preimage and postimage pathnames in different places in
a form that can be parsed unambiguously and did not suffer from this
problem.

* jc/apply-binary-p0:
  apply: compute patch->def_name correctly under -p0

11 years agoMerge branch 'jc/dotdot-is-parent-directory' into maint-1.7.11
Junio C Hamano [Wed, 12 Sep 2012 21:00:34 +0000 (14:00 -0700)] 
Merge branch 'jc/dotdot-is-parent-directory' into maint-1.7.11

"git log .." errored out saying it is both rev range and a path when
there is no disambiguating "--" is on the command line.  Update the
command line parser to interpret ".." as a path in such a case.

* jc/dotdot-is-parent-directory:
  specifying ranges: we did not mean to make ".." an empty set

11 years agoMerge branch 'jc/maint-doc-checkout-b-always-takes-branch-name' into maint-1.7.11
Junio C Hamano [Wed, 12 Sep 2012 20:59:58 +0000 (13:59 -0700)] 
Merge branch 'jc/maint-doc-checkout-b-always-takes-branch-name' into maint-1.7.11

The synopsis said "checkout [-B branch]" to make it clear the
branch name is a parameter to the option, but the heading for the
option description was "-B::", not "-B branch::", making the
documentation misleading.

* jc/maint-doc-checkout-b-always-takes-branch-name:
  doc: "git checkout -b/-B/--orphan" always takes a branch name

11 years agoMerge branch 'jk/maint-http-half-auth-push' into maint-1.7.11
Junio C Hamano [Wed, 12 Sep 2012 20:58:22 +0000 (13:58 -0700)] 
Merge branch 'jk/maint-http-half-auth-push' into maint-1.7.11

Pushing to smart HTTP server with recent Git fails without having
the username in the URL to force authentication, if the server is
configured to allow GET anonymously, while requiring authentication
for POST.

* jk/maint-http-half-auth-push:
  http: prompt for credentials on failed POST
  http: factor out http error code handling
  t: test http access to "half-auth" repositories
  t: test basic smart-http authentication
  t/lib-httpd: recognize */smart/* repos as smart-http
  t/lib-httpd: only route auth/dumb to dumb repos
  t5550: factor out http auth setup
  t5550: put auth-required repo in auth/dumb

11 years agoMerge branch 'kk/maint-for-each-ref-multi-sort' into maint-1.7.11
Junio C Hamano [Wed, 12 Sep 2012 20:57:43 +0000 (13:57 -0700)] 
Merge branch 'kk/maint-for-each-ref-multi-sort' into maint-1.7.11

"git for-each-ref" did not honor multiple "--sort=<key>" arguments
correctly.

* kk/maint-for-each-ref-multi-sort:
  for-each-ref: Fix sort with multiple keys
  t6300: test sort with multiple keys

11 years agofetch-pack: eliminate spurious error messages
Michael Haggerty [Sun, 9 Sep 2012 06:19:49 +0000 (08:19 +0200)] 
fetch-pack: eliminate spurious error messages

It used to be that if "--all", "--depth", and also explicit references
were sought, then the explicit references were not handled correctly
in filter_refs() because the "--all --depth" code took precedence over
the explicit reference handling, and the explicit references were
never noted as having been found.  So check for explicitly sought
references before proceeding to the "--all --depth" logic.

This fixes two test cases in t5500.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agocmd_fetch_pack(): simplify computation of return value
Michael Haggerty [Sun, 9 Sep 2012 06:19:48 +0000 (08:19 +0200)] 
cmd_fetch_pack(): simplify computation of return value

Set the final value at initialization rather than initializing it then
sometimes changing it.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agofetch-pack: report missing refs even if no existing refs were received
Michael Haggerty [Sun, 9 Sep 2012 06:19:47 +0000 (08:19 +0200)] 
fetch-pack: report missing refs even if no existing refs were received

This fixes a test in t5500.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agocmd_fetch_pack(): return early if finish_connect() fails
Michael Haggerty [Sun, 9 Sep 2012 06:19:46 +0000 (08:19 +0200)] 
cmd_fetch_pack(): return early if finish_connect() fails

This simplifies the logic without changing the behavior.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agofilter_refs(): simplify logic
Michael Haggerty [Sun, 9 Sep 2012 06:19:45 +0000 (08:19 +0200)] 
filter_refs(): simplify logic

Simplify flow within loop: first decide whether to keep the reference,
then keep/free it.  This makes it clearer that each ref has exactly
two possible destinies, and removes duplication of the code for
appending the reference to the linked list.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agofilter_refs(): build refs list as we go
Michael Haggerty [Sun, 9 Sep 2012 06:19:44 +0000 (08:19 +0200)] 
filter_refs(): build refs list as we go

Instead of temporarily storing matched refs to temporary array
"return_refs", simply append them to newlist as we go.  This changes
the order of references in newlist to strictly sorted if "--all" and
"--depth" and named references are all specified, but that usage is
broken anyway (see the last two tests in t5500).

This changes the last test in t5500 from segfaulting into just
emitting a spurious error (this will be fixed in a moment).

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agofilter_refs(): delete matched refs from sought list
Michael Haggerty [Sun, 9 Sep 2012 06:19:43 +0000 (08:19 +0200)] 
filter_refs(): delete matched refs from sought list

Remove any references that are available from the remote from the
sought list (rather than overwriting their names with NUL characters,
as previously).  Mark matching entries by writing a non-NULL pointer
to string_list_item::util during the iteration, then use
filter_string_list() later to filter out the entries that have been
marked.

Document this aspect of fetch_pack() in a comment in the header file.
(More documentation is obviously still needed.)

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agofetch_pack(): update sought->nr to reflect number of unique entries
Michael Haggerty [Sun, 9 Sep 2012 06:19:42 +0000 (08:19 +0200)] 
fetch_pack(): update sought->nr to reflect number of unique entries

fetch_pack() removes duplicates from the "sought" list, thereby
shrinking the list.  But previously, the caller was not informed about
the shrinkage.  This would cause a spurious error message to be
emitted by cmd_fetch_pack() if "git fetch-pack" is called with
duplicate refnames.

Instead, remove duplicates using string_list_remove_duplicates(),
which adjusts sought->nr to reflect the new length of the list.

The last test of t5500 inexplicably *required* "git fetch-pack" to
fail when fetching a list of references that contains duplicates;
i.e., it insisted on the buggy behavior.  So change the test to expect
the correct behavior.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agofilter_refs(): do not check the same sought_pos twice
Michael Haggerty [Sun, 9 Sep 2012 06:19:41 +0000 (08:19 +0200)] 
filter_refs(): do not check the same sought_pos twice

Once a match has been found at sought_pos, the entry is zeroed and no
future attempts will match that entry.  So increment sought_pos to
avoid checking against the zeroed-out entry during the next iteration.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoChange fetch_pack() and friends to take string_list arguments
Michael Haggerty [Sun, 9 Sep 2012 06:19:40 +0000 (08:19 +0200)] 
Change fetch_pack() and friends to take string_list arguments

Instead of juggling <nr_heads,heads> (sometimes called
<nr_match,match>), pass around the list of references to be sought in
a single string_list variable called "sought".  Future commits will
make more use of string_list functionality.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agofetch_pack(): reindent function decl and defn
Michael Haggerty [Sun, 9 Sep 2012 06:19:39 +0000 (08:19 +0200)] 
fetch_pack(): reindent function decl and defn

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoRename static function fetch_pack() to http_fetch_pack()
Michael Haggerty [Sun, 9 Sep 2012 06:19:38 +0000 (08:19 +0200)] 
Rename static function fetch_pack() to http_fetch_pack()

Avoid confusion with the non-static function of the same name from
fetch-pack.h.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot5500: add tests of fetch-pack --all --depth=N $URL $REF
Michael Haggerty [Sun, 9 Sep 2012 06:19:37 +0000 (08:19 +0200)] 
t5500: add tests of fetch-pack --all --depth=N $URL $REF

Document some bugs in "git fetch-pack":

1. If "git fetch-pack" is called with "--all", "--depth", and an
explicit existing non-tag reference to fetch, then it falsely reports
that the reference was not found, even though it was fetched
correctly.

2. If "git fetch-pack" is called with "--all", "--depth", and an
explicit existing tag reference to fetch, then it segfaults in
filter_refs() because return_refs is used without having been
initialized.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot5500: add tests of error output for missing refs
Michael Haggerty [Sun, 9 Sep 2012 06:19:36 +0000 (08:19 +0200)] 
t5500: add tests of error output for missing refs

If "git fetch-pack" is called with reference names that do not exist
on the remote, then it should emit an error message

    error: no such remote ref refs/heads/xyzzy

This is currently broken if *only* missing references are passed to
"git fetch-pack".

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoapi-string-list.txt: initialize the string_list the easy way
Michael Haggerty [Wed, 12 Sep 2012 14:04:47 +0000 (16:04 +0200)] 
api-string-list.txt: initialize the string_list the easy way

In the demo code blurb, show how to initialize the string_list using
STRING_LIST_INIT_NODUP rather than memset().

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agostring_list: add a function string_list_longest_prefix()
Michael Haggerty [Wed, 12 Sep 2012 14:04:46 +0000 (16:04 +0200)] 
string_list: add a function string_list_longest_prefix()

Add a function that finds the longest string from a string_list that
is a prefix of a given string.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agostring_list: add a new function, string_list_remove_duplicates()
Michael Haggerty [Wed, 12 Sep 2012 14:04:45 +0000 (16:04 +0200)] 
string_list: add a new function, string_list_remove_duplicates()

Add a function that deletes duplicate entries from a sorted
string_list.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agostring_list: add a new function, filter_string_list()
Michael Haggerty [Wed, 12 Sep 2012 14:04:44 +0000 (16:04 +0200)] 
string_list: add a new function, filter_string_list()

This function allows entries that don't match a specified criterion to
be discarded from a string_list while preserving the order of the
remaining entries.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agostring_list: add two new functions for splitting strings
Michael Haggerty [Wed, 12 Sep 2012 14:04:43 +0000 (16:04 +0200)] 
string_list: add two new functions for splitting strings

Add two new functions, string_list_split() and
string_list_split_in_place().  These split a string into a string_list
on a separator character.  The first makes copies of the substrings
(leaving the input string untouched) and the second splits the
original string in place, overwriting the separator characters with
NULs and referring to the original string's memory.

These functions are similar to the strbuf_split_*() functions except
that they work with the more powerful string_list interface.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agostring_list: add function string_list_append_nodup()
Michael Haggerty [Wed, 12 Sep 2012 14:04:42 +0000 (16:04 +0200)] 
string_list: add function string_list_append_nodup()

Add a new function that appends a string to a string_list without
copying it.  This can be used to pass ownership of an already-copied
string to a string_list that has strdup_strings set.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge git://ozlabs.org/~paulus/gitk
Junio C Hamano [Wed, 12 Sep 2012 16:32:22 +0000 (09:32 -0700)] 
Merge git://ozlabs.org/~paulus/gitk

* git://ozlabs.org/~paulus/gitk:
  gitk: Fix GIT_TRACE issues

11 years agoMerge branch 'da/gitk-reload-tag-contents'
Junio C Hamano [Wed, 12 Sep 2012 16:32:03 +0000 (09:32 -0700)] 
Merge branch 'da/gitk-reload-tag-contents'

After overwriting a tag with a new tag, "Reread references" action
in "gitk" correctly moved the marker in the display, but it failed
to discard a cached contents of the tag (even "Reload" didn't).

* da/gitk-reload-tag-contents:
  gitk: Rename 'tagcontents' to 'cached_tagcontent'
  gitk: Teach "Reread references" to reload tags
  gitk: Avoid Meta1-F5

11 years agoMerge branch 'da/gitk-reload-tag-contents' of git://github.com/gitster/git
Paul Mackerras [Wed, 12 Sep 2012 12:34:24 +0000 (22:34 +1000)] 
Merge branch 'da/gitk-reload-tag-contents' of git://github.com/gitster/git
to get two commits from David Aguilar.

11 years agoll-merge: warn about inability to merge binary files only when we can't
Junio C Hamano [Wed, 12 Sep 2012 09:01:52 +0000 (02:01 -0700)] 
ll-merge: warn about inability to merge binary files only when we can't

When a path being merged is auto detected to be a binary file, we
warned "Cannot merge binary files" before switching to activate the
binary ll-merge driver.  When we are merging with the -Xours/theirs
option, however, we know what the "clean" merge result is, and the
warning is inappropriate.

In addition, when the path is explicitly marked as a binary file,
this warning was not issued, even though without -Xours/theirs, we
cannot cleanly automerge such a path, which was inconsistent.

Move the warning code from ll_xdl_merge() to ll_binary_merge(), and
issue the message only when we cannot cleanly automerge.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoblame: allow "blame file" in the middle of a conflicted merge
Junio C Hamano [Tue, 11 Sep 2012 21:30:03 +0000 (14:30 -0700)] 
blame: allow "blame file" in the middle of a conflicted merge

"git blame file" has always meant "find the origin of each line of
the file in the history leading to HEAD, oh by the way, blame the
lines that are modified locally to the working tree".

This teaches "git blame" that during a conflicted merge, some
uncommitted changes may have come from the other history that is
being merged.

The verify_working_tree_path() function introduced in the previous
patch to notice a typo in the filename (primarily on case insensitive
filesystems) has been updated to allow a filename that does not exist
in HEAD (i.e. the tip of our history) as long as it exists one of the
commits being merged, so that a "we deleted, the other side modified"
case tracks the history of the file in the history of the other side.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agocheckout: reorder option handling
Nguyễn Thái Ngọc Duy [Thu, 30 Aug 2012 12:45:50 +0000 (19:45 +0700)] 
checkout: reorder option handling

checkout operates in three different modes. On top of that it tries to
be smart by guessing the branch name for switching. This results in
messy option handling code. This patch reorders it so that

 - cmd_checkout() is responsible for parsing, preparing input and
   determining mode

 - Code of each mode is in checkout_paths() and checkout_branch(),
   where sanity checks are performed

Another slight improvement is always print branch name (or commit
name) when printing errors related ot them. This helps catch the case
where an option is mistaken as branch/commit.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoSecond half of the fifth batch for 1.8.0
Junio C Hamano [Tue, 11 Sep 2012 18:41:35 +0000 (11:41 -0700)] 
Second half of the fifth batch for 1.8.0

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'rj/test-regex'
Junio C Hamano [Tue, 11 Sep 2012 18:36:25 +0000 (11:36 -0700)] 
Merge branch 'rj/test-regex'

Git ships with a fall-back regexp implementation for platforms with
buggy regexp library; give people a tool to see if they should be
using it on their platform.

* rj/test-regex:
  test-regex: Add a test to check for a bug in the regex routines

11 years agoMerge branch 'jk/argv-array'
Junio C Hamano [Tue, 11 Sep 2012 18:36:18 +0000 (11:36 -0700)] 
Merge branch 'jk/argv-array'

Use argv-array API in "git fetch" implementation.

* jk/argv-array:
  submodule: use argv_array instead of hand-building arrays
  fetch: use argv_array instead of hand-building arrays
  argv-array: fix bogus cast when freeing array
  argv-array: add pop function

11 years agoMerge branch 'jc/merge-bases'
Junio C Hamano [Tue, 11 Sep 2012 18:35:26 +0000 (11:35 -0700)] 
Merge branch 'jc/merge-bases'

Optimise the "merge-base" computation a bit, and also update its
users that do not need the full merge-base information to call a
cheaper subset.

* jc/merge-bases:
  reduce_heads(): reimplement on top of remove_redundant()
  merge-base: "--is-ancestor A B"
  get_merge_bases_many(): walk from many tips in parallel
  in_merge_bases(): use paint_down_to_common()
  merge_bases_many(): split out the logic to paint history
  in_merge_bases(): omit unnecessary redundant common ancestor reduction
  http-push: use in_merge_bases() for fast-forward check
  receive-pack: use in_merge_bases() for fast-forward check
  in_merge_bases(): support only one "other" commit

11 years agoMerge branch 'nd/i18n-index-pack'
Junio C Hamano [Tue, 11 Sep 2012 18:35:22 +0000 (11:35 -0700)] 
Merge branch 'nd/i18n-index-pack'

* nd/i18n-index-pack:
  i18n: mark more index-pack strings for translation

11 years agoMerge branch 'jc/maint-ident-missing-human-name'
Junio C Hamano [Tue, 11 Sep 2012 18:35:15 +0000 (11:35 -0700)] 
Merge branch 'jc/maint-ident-missing-human-name'

"git show --format='%ci'" did not give timestamp correctly for
commits created without human readable name on "committer" line.

* jc/maint-ident-missing-human-name:
  split_ident_line(): make best effort when parsing author/committer line