git
11 years agogit-svn: fix signed commit parsing
Nicolas Vigier [Mon, 30 Sep 2013 14:46:14 +0000 (16:46 +0200)] 
git-svn: fix signed commit parsing

When parsing a commit object, git-svn wrongly think that a line
containing spaces means the end of headers and the start of the commit
message. In case of signed commit, the gpgsig entry contains a line with
one space, so "git svn dcommit" will include part of the signature in
the commit message.

An example of such problem :
http://svnweb.mageia.org/treasurer?view=revision&revision=86

This commit changes the regex to only match an empty line as separator
between the headers and the commit message.

Signed-off-by: Nicolas Vigier <boklm@mars-attacks.org>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Eric Wong <normalperson@yhbt.net>
11 years agoUpdate draft release notes to 1.8.5 for the fifth batch of topics
Junio C Hamano [Fri, 20 Sep 2013 19:42:02 +0000 (12:42 -0700)] 
Update draft release notes to 1.8.5 for the fifth batch of topics

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'jk/upload-pack-keepalive'
Junio C Hamano [Fri, 20 Sep 2013 19:39:05 +0000 (12:39 -0700)] 
Merge branch 'jk/upload-pack-keepalive'

When running "fetch -q", a long silence while the sender side
computes the set of objects to send can be mistaken by proxies as
dropped connection.  The server side has been taught to send a small
empty messages to keep the connection alive.

* jk/upload-pack-keepalive:
  upload-pack: bump keepalive default to 5 seconds
  upload-pack: send keepalive packets during pack computation

11 years agoMerge branch 'fc/at-head'
Junio C Hamano [Fri, 20 Sep 2013 19:38:10 +0000 (12:38 -0700)] 
Merge branch 'fc/at-head'

Instead of typing four capital letters "HEAD", you can say "@" now,
e.g. "git log @".

* fc/at-head:
  Add new @ shortcut for HEAD
  sha1-name: pass len argument to interpret_branch_name()

11 years agoMerge branch 'dw/check-ignore-sans-index'
Junio C Hamano [Fri, 20 Sep 2013 19:37:32 +0000 (12:37 -0700)] 
Merge branch 'dw/check-ignore-sans-index'

"git check-ignore" follows the same rule as "git add" and "git
status" in that the ignore/exclude mechanism does not take effect
on paths that are already tracked.  With "--no-index" option, it
can be used to diagnose which paths that should have been ignored
have been mistakenly added to the index.

* dw/check-ignore-sans-index:
  check-ignore: Add option to ignore index contents

11 years agoMerge branch 'mm/commit-template-squelch-advice-messages'
Junio C Hamano [Fri, 20 Sep 2013 19:36:31 +0000 (12:36 -0700)] 
Merge branch 'mm/commit-template-squelch-advice-messages'

From the commit log template, remove irrelevant "advice" messages
that are shared with "git status" output.

* mm/commit-template-squelch-advice-messages:
  commit: disable status hints when writing to COMMIT_EDITMSG
  wt-status: turn advice_status_hints into a field of wt_status
  commit: factor status configuration is a helper function

11 years agoMerge branch 'bk/refs-multi-update'
Junio C Hamano [Fri, 20 Sep 2013 19:36:12 +0000 (12:36 -0700)] 
Merge branch 'bk/refs-multi-update'

Give "update-refs" a "--stdin" option to read multiple update
requests and perform them in an all-or-none fashion.

* bk/refs-multi-update:
  update-ref: add test cases covering --stdin signature
  update-ref: support multiple simultaneous updates
  refs: add update_refs for multiple simultaneous updates
  refs: add function to repack without multiple refs
  refs: factor delete_ref loose ref step into a helper
  refs: factor update_ref steps into helpers
  refs: report ref type from lock_any_ref_for_update
  reset: rename update_refs to reset_refs

11 years agoMerge branch 'nr/git-cd-to-a-directory'
Junio C Hamano [Fri, 20 Sep 2013 19:35:42 +0000 (12:35 -0700)] 
Merge branch 'nr/git-cd-to-a-directory'

Just like "make -C <directory>", make "git -C <directory> ..." to
go there before doing anything else.

* nr/git-cd-to-a-directory:
  t0056: "git -C" test updates
  git: run in a directory given with -C option

11 years agoMerge branch 'mm/rebase-continue-freebsd-WB'
Junio C Hamano [Fri, 20 Sep 2013 19:34:36 +0000 (12:34 -0700)] 
Merge branch 'mm/rebase-continue-freebsd-WB'

Work around a bug in FreeBSD shell that caused a regression to "git
rebase" in v1.8.4.  May need to be later applied to 'maint'.

* mm/rebase-continue-freebsd-WB:
  rebase: fix run_specific_rebase's use of "return" on FreeBSD

11 years agoMerge branch 'jh/checkout-auto-tracking'
Junio C Hamano [Fri, 20 Sep 2013 19:31:57 +0000 (12:31 -0700)] 
Merge branch 'jh/checkout-auto-tracking'

Fix a minor regression in v1.8.3.2 and later that made it
impossible to base your local work on anything but a local branch
of the upstream repository you are tracking from.

* jh/checkout-auto-tracking:
  t3200: fix failure on case-insensitive filesystems
  branch.c: Relax unnecessary requirement on upstream's remote ref name
  t3200: Add test demonstrating minor regression in 41c21f2
  Refer to branch.<name>.remote/merge when documenting --track
  t3200: Minor fix when preparing for tracking failure
  t2024: Fix &&-chaining and a couple of typos

11 years agoMerge branch 'bc/http-backend-allow-405'
Junio C Hamano [Fri, 20 Sep 2013 19:30:54 +0000 (12:30 -0700)] 
Merge branch 'bc/http-backend-allow-405'

When the webserver responds with "405 Method Not Allowed", it
should tell the client what methods are allowed with the "Allow"
header.

* bc/http-backend-allow-405:
  http-backend: provide Allow header for 405

11 years agoMerge branch 'np/lookup-object-hashing'
Junio C Hamano [Fri, 20 Sep 2013 19:30:49 +0000 (12:30 -0700)] 
Merge branch 'np/lookup-object-hashing'

Micro optimize hash function used in the object hash table.

* np/lookup-object-hashing:
  lookup_object: remove hashtable_index() and optimize hash_obj()

11 years agoMerge branch 'hu/cherry-pick-previous-branch'
Junio C Hamano [Fri, 20 Sep 2013 19:29:57 +0000 (12:29 -0700)] 
Merge branch 'hu/cherry-pick-previous-branch'

Just like "git checkout -" knows to check out and "git merge -"
knows to merge the branch you were previously on, "git cherry-pick"
now understands "git cherry-pick -" to pick from the previous
branch.

* hu/cherry-pick-previous-branch:
  cherry-pick: allow "-" as abbreviation of '@{-1}'

11 years agoMerge branch 'mm/status-without-comment-char'
Junio C Hamano [Fri, 20 Sep 2013 19:29:01 +0000 (12:29 -0700)] 
Merge branch 'mm/status-without-comment-char'

"git status" now omits the prefix to make its output a comment in a
commit log editor, which is not necessary for human consumption.

We may want to tighten the output to omit unnecessary trailing blank
lines, but that does not have to be in the scope of this series.

* mm/status-without-comment-char:
  t7508: avoid non-portable sed expression
  status: add missing blank line after list of "other" files
  tests: don't set status.displayCommentPrefix file-wide
  status: disable display of '#' comment prefix by default
  submodule summary: ignore --for-status option
  wt-status: use argv_array API
  builtin/stripspace.c: fix broken indentation

11 years agoMerge branch 'rh/peeling-tag-to-tag'
Junio C Hamano [Fri, 20 Sep 2013 19:27:18 +0000 (12:27 -0700)] 
Merge branch 'rh/peeling-tag-to-tag'

Make "foo^{tag}" to peel a tag to itself, i.e. no-op., and fail if
"foo" is not a tag.  "git rev-parse --verify v1.0^{tag}" would be a
more convenient way to say "test $(git cat-file -t v1.0) = tag".

* rh/peeling-tag-to-tag:
  peel_onion: do not assume length of x_type globals
  peel_onion(): add support for <rev>^{tag}

11 years agoMerge branch 'jx/branch-vv-always-compare-with-upstream'
Junio C Hamano [Fri, 20 Sep 2013 19:26:57 +0000 (12:26 -0700)] 
Merge branch 'jx/branch-vv-always-compare-with-upstream'

"git branch -v -v" (and "git status") did not distinguish among a
branch that does not build on any other branch, a branch that is in
sync with the branch it builds on, and a branch that is configured
to build on some other branch that no longer exists.

* jx/branch-vv-always-compare-with-upstream:
  status: always show tracking branch even no change
  branch: report invalid tracking branch as gone

11 years agoMerge branch 'nd/fetch-into-shallow'
Junio C Hamano [Fri, 20 Sep 2013 19:25:32 +0000 (12:25 -0700)] 
Merge branch 'nd/fetch-into-shallow'

When there is no sufficient overlap between old and new history
during a fetch into a shallow repository, we unnecessarily sent
objects the sending side knows the receiving end has.

* nd/fetch-into-shallow:
  Add testcase for needless objects during a shallow fetch
  list-objects: mark more commits as edges in mark_edges_uninteresting
  list-objects: reduce one argument in mark_edges_uninteresting
  upload-pack: delegate rev walking in shallow fetch to pack-objects
  shallow: add setup_temporary_shallow()
  shallow: only add shallow graft points to new shallow file
  move setup_alternate_shallow and write_shallow_commits to shallow.c

11 years agoMerge branch 'jk/config-int-range-check'
Junio C Hamano [Thu, 19 Sep 2013 18:04:25 +0000 (11:04 -0700)] 
Merge branch 'jk/config-int-range-check'

* jk/config-int-range-check:
  compat/mingw.h: define PRId64

11 years agocompat/mingw.h: define PRId64
Johannes Sixt [Thu, 19 Sep 2013 07:17:07 +0000 (09:17 +0200)] 
compat/mingw.h: define PRId64

Provide PRId64 alongside PRIuMAX.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot0056: "git -C" test updates
Nazri Ramliy [Thu, 19 Sep 2013 13:18:54 +0000 (21:18 +0800)] 
t0056: "git -C" test updates

Instead of repeating the text to record as the commit log message
and string we expect to see in "log" output, use the same variable
to avoid them going out of sync.

Use different names for test files in different directories to
improve our chance to catch future breakages that makes "-C <dir>"
go to a place that is different from what was specified.

Signed-off-by: Nazri Ramliy <ayiehere@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'maint'
Junio C Hamano [Wed, 18 Sep 2013 19:08:38 +0000 (12:08 -0700)] 
Merge branch 'maint'

* maint:
  Start preparing for 1.8.4.1

11 years agoStart preparing for 1.8.4.1
Junio C Hamano [Wed, 18 Sep 2013 19:08:09 +0000 (12:08 -0700)] 
Start preparing for 1.8.4.1

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'bc/completion-for-bash-3.0' into maint
Junio C Hamano [Wed, 18 Sep 2013 19:00:11 +0000 (12:00 -0700)] 
Merge branch 'bc/completion-for-bash-3.0' into maint

Some people still use rather old versions of bash, which cannot grok
some constructs like 'printf -v varname' the prompt and completion
code started to use recently.

* bc/completion-for-bash-3.0:
  contrib/git-prompt.sh: handle missing 'printf -v' more gracefully
  t9902-completion.sh: old Bash still does not support array+=('') notation
  git-completion.bash: use correct Bash/Zsh array length syntax

11 years agoMerge branch 'mm/no-shell-escape-in-die-message' into maint
Junio C Hamano [Wed, 18 Sep 2013 18:59:50 +0000 (11:59 -0700)] 
Merge branch 'mm/no-shell-escape-in-die-message' into maint

Fixes a minor bug in "git rebase -i" (there could be others, as the
root cause is pretty generic) where the code feeds a random, data
dependeant string to 'echo' and expects it to come out literally.

* mm/no-shell-escape-in-die-message:
  die_with_status: use "printf '%s\n'", not "echo"

11 years agoMerge branch 'jl/some-submodule-config-are-not-boolean' into maint
Junio C Hamano [Wed, 18 Sep 2013 18:59:35 +0000 (11:59 -0700)] 
Merge branch 'jl/some-submodule-config-are-not-boolean' into maint

* jl/some-submodule-config-are-not-boolean:
  avoid segfault on submodule.*.path set to an empty "true"

11 years agoMerge branch 'tr/log-full-diff-keep-true-parents' into maint
Junio C Hamano [Wed, 18 Sep 2013 18:59:05 +0000 (11:59 -0700)] 
Merge branch 'tr/log-full-diff-keep-true-parents' into maint

Output from "git log --full-diff -- <pathspec>" looked strange,
because comparison was done with the previous ancestor that touched
the specified <pathspec>, causing the patches for paths outside the
pathspec to show more than the single commit has changed.

* tr/log-full-diff-keep-true-parents:
  log: use true parents for diff when walking reflogs
  log: use true parents for diff even when rewriting

11 years agoMerge branch 'jc/transport-do-not-use-connect-twice-in-fetch' into maint
Junio C Hamano [Wed, 18 Sep 2013 18:58:18 +0000 (11:58 -0700)] 
Merge branch 'jc/transport-do-not-use-connect-twice-in-fetch' into maint

The auto-tag-following code in "git fetch" tries to reuse the same
transport twice when the serving end does not cooperate and does
not give tags that point to commits that are asked for as part of
the primary transfer.  Unfortunately, Git-aware transport helper
interface is not designed to be used more than once, hence this
does not work over smart-http transfer.

* jc/transport-do-not-use-connect-twice-in-fetch:
  builtin/fetch.c: Fix a sparse warning
  fetch: work around "transport-take-over" hack
  fetch: refactor code that fetches leftover tags
  fetch: refactor code that prepares a transport
  fetch: rename file-scope global "transport" to "gtransport"
  t5802: add test for connect helper

11 years agoMerge branch 'sp/clip-read-write-to-8mb' into maint
Junio C Hamano [Wed, 18 Sep 2013 18:57:58 +0000 (11:57 -0700)] 
Merge branch 'sp/clip-read-write-to-8mb' into maint

Send a large request to read(2)/write(2) as a smaller but still
reasonably large chunks, which would improve the latency when the
operation needs to be killed and incidentally works around broken
64-bit systems that cannot take a 2GB write or read in one go.

* sp/clip-read-write-to-8mb:
  Revert "compat/clipped-write.c: large write(2) fails on Mac OS X/XNU"
  xread, xwrite: limit size of IO to 8MB

11 years agoMerge branch 'jk/mailmap-incomplete-line' into maint
Junio C Hamano [Wed, 18 Sep 2013 18:57:32 +0000 (11:57 -0700)] 
Merge branch 'jk/mailmap-incomplete-line' into maint

* jk/mailmap-incomplete-line:
  mailmap: handle mailmap blobs without trailing newlines

11 years agoUpdate draft release notes to 1.8.5 for the fourth batch of topics
Junio C Hamano [Wed, 18 Sep 2013 18:55:59 +0000 (11:55 -0700)] 
Update draft release notes to 1.8.5 for the fourth batch of topics

11 years agoMerge branch 'jc/url-match'
Junio C Hamano [Wed, 18 Sep 2013 18:48:30 +0000 (11:48 -0700)] 
Merge branch 'jc/url-match'

While normalizing a URL, we forgot that the buffer that holds it
could be relocated when it grows, which was a brown-paper-bag bug
that can lead to a crash introduced on 'master' post 1.8.4 release.

* jc/url-match:
  urlmatch.c: recompute pointer after append_normalized_escapes

11 years agoMerge branch 'jc/cvsserver-perm-bit-fix'
Junio C Hamano [Wed, 18 Sep 2013 18:48:01 +0000 (11:48 -0700)] 
Merge branch 'jc/cvsserver-perm-bit-fix'

"git cvsserver" computed the permission mode bits incorrectly for
executable files.

* jc/cvsserver-perm-bit-fix:
  cvsserver: pick up the right mode bits

11 years agoMerge branch 'bc/send-email-ssl-die-message-fix'
Junio C Hamano [Wed, 18 Sep 2013 18:47:27 +0000 (11:47 -0700)] 
Merge branch 'bc/send-email-ssl-die-message-fix'

When send-email comes up with an error message to die with upon
failure to start an SSL session, it tried to read the error string
from a wrong place.

* bc/send-email-ssl-die-message-fix:
  send-email: don't call methods on undefined values

11 years agoMerge branch 'uh/git-svn-serf-fix'
Junio C Hamano [Wed, 18 Sep 2013 18:46:06 +0000 (11:46 -0700)] 
Merge branch 'uh/git-svn-serf-fix'

"git-svn" used with SVN 1.8.0 when talking over https:// connection
dumped core due to a bug in the serf library that SVN uses.  Work
it around on our side, even though the SVN side is being fixed.

* uh/git-svn-serf-fix:
  git-svn: fix termination issues for remote svn connections

11 years agoMerge branch 'fc/contrib-bzr-hg-fixes'
Junio C Hamano [Wed, 18 Sep 2013 18:45:49 +0000 (11:45 -0700)] 
Merge branch 'fc/contrib-bzr-hg-fixes'

* fc/contrib-bzr-hg-fixes:
  contrib/remote-helpers: quote variable references in redirection targets
  contrib/remote-helpers: style updates for test scripts
  remote-hg: use notes to keep track of Hg revisions
  remote-helpers: cleanup more global variables
  remote-helpers: trivial style fixes
  remote-hg: improve basic test
  remote-hg: add missing &&s in the test
  remote-hg: fix test
  remote-bzr: make bzr branches configurable per-repo
  remote-bzr: fix export of utf-8 authors

11 years agoMerge branch 'js/add-i-mingw'
Junio C Hamano [Wed, 18 Sep 2013 18:45:06 +0000 (11:45 -0700)] 
Merge branch 'js/add-i-mingw'

The implementation of "add -i" has a crippling code to work around
ActiveState Perl limitation but it by mistake also triggered on Git
for Windows where MSYS perl is used.

* js/add-i-mingw:
  add--interactive: fix external command invocation on Windows

11 years agoMerge branch 'ks/p4-view-spec'
Junio C Hamano [Wed, 18 Sep 2013 18:44:50 +0000 (11:44 -0700)] 
Merge branch 'ks/p4-view-spec'

* ks/p4-view-spec:
  git p4: implement view spec wildcards with "p4 where"
  git p4 test: sanitize P4CHARSET

11 years agoMerge branch 'jk/duplicate-objects-in-packs'
Junio C Hamano [Wed, 18 Sep 2013 18:43:47 +0000 (11:43 -0700)] 
Merge branch 'jk/duplicate-objects-in-packs'

A packfile that stores the same object more than once is broken and
will be rejected by "git index-pack" that is run when receiving data
over the wire.

* jk/duplicate-objects-in-packs:
  t5308: check that index-pack --strict detects duplicate objects
  test index-pack on packs with recoverable delta cycles
  add tests for indexing packs with delta cycles
  sha1-lookup: handle duplicate keys with GIT_USE_LOOKUP
  test-sha1: add a binary output mode

11 years agoMerge branch 'nd/git-dir-pointing-at-gitfile'
Junio C Hamano [Wed, 18 Sep 2013 18:42:36 +0000 (11:42 -0700)] 
Merge branch 'nd/git-dir-pointing-at-gitfile'

We made sure that we notice the user-supplied GIT_DIR is actually a
gitfile, but did not do the same when the default ".git" is a gitfile.

* nd/git-dir-pointing-at-gitfile:
  Make setup_git_env() resolve .git file when $GIT_DIR is not specified

11 years agoMerge branch 'jk/pager-bypass-cat-for-default-pager'
Junio C Hamano [Wed, 18 Sep 2013 18:42:15 +0000 (11:42 -0700)] 
Merge branch 'jk/pager-bypass-cat-for-default-pager'

If a build-time fallback is set to "cat" instead of "less", we
should apply the same "no subprocess or pipe" optimization as we
apply to user-supplied GIT_PAGER=cat.

* jk/pager-bypass-cat-for-default-pager:
  pager: turn on "cat" optimization for DEFAULT_PAGER

11 years agoMerge branch 'fc/t3200-fixes'
Junio C Hamano [Wed, 18 Sep 2013 18:42:13 +0000 (11:42 -0700)] 
Merge branch 'fc/t3200-fixes'

* fc/t3200-fixes:
  t: branch: fix broken && chains
  t: branch: fix typo
  t: branch: trivial style fix

11 years agoMerge branch 'fc/rev-parse-test-updates'
Junio C Hamano [Wed, 18 Sep 2013 18:42:03 +0000 (11:42 -0700)] 
Merge branch 'fc/rev-parse-test-updates'

Modernize tests.

* fc/rev-parse-test-updates:
  rev-parse test: use standard test functions for setup
  rev-parse test: use test_cmp instead of "test" builtin
  rev-parse test: use test_must_fail, not "if <command>; then false; fi"
  rev-parse test: modernize quoting and whitespace

11 years agoUpdate draft release notes to 1.8.5 for the first half of the fourth batch
Junio C Hamano [Tue, 17 Sep 2013 18:43:58 +0000 (11:43 -0700)] 
Update draft release notes to 1.8.5 for the first half of the fourth batch

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'jk/remove-remote-helpers-in-python'
Junio C Hamano [Tue, 17 Sep 2013 18:43:01 +0000 (11:43 -0700)] 
Merge branch 'jk/remove-remote-helpers-in-python'

Remove now disused remote-helpers framework for helpers written in
Python.

* jk/remove-remote-helpers-in-python:
  git_remote_helpers: remove little used Python library

11 years agoMerge branch 'ss/doclinks'
Junio C Hamano [Tue, 17 Sep 2013 18:42:54 +0000 (11:42 -0700)] 
Merge branch 'ss/doclinks'

When we converted many documents that were traditionally text-only
to be formatted to AsciiDoc, we did not update links that point at
them to refer to the formatted HTML files.

* ss/doclinks:
  Documentation: make AsciiDoc links always point to HTML files

11 years agoMerge branch 'rh/ishes-doc'
Junio C Hamano [Tue, 17 Sep 2013 18:42:51 +0000 (11:42 -0700)] 
Merge branch 'rh/ishes-doc'

We liberally use "committish" and "commit-ish" (and "treeish" and
"tree-ish"); as these are non-words, let's unify these terms to
their dashed form.  More importantly, clarify the documentation on
object peeling using these terms.

* rh/ishes-doc:
  glossary: fix and clarify the definition of 'ref'
  revisions.txt: fix and clarify <rev>^{<type>}
  glossary: more precise definition of tree-ish (a.k.a. treeish)
  use 'commit-ish' instead of 'committish'
  use 'tree-ish' instead of 'treeish'
  glossary: define commit-ish (a.k.a. committish)
  glossary: mention 'treeish' as an alternative to 'tree-ish'

11 years agoMerge branch 'dw/diff-no-index-doc'
Junio C Hamano [Tue, 17 Sep 2013 18:42:44 +0000 (11:42 -0700)] 
Merge branch 'dw/diff-no-index-doc'

When the user types "git diff" outside a working tree, thinking he
is inside one, the current error message that is a single-liner
"usage: git diff --no-index <path> <path>" may not be sufficient to
make him realize the mistake. Add "Not a git repository" to the
error message when we fell into the "--no-index" mode without an
explicit command line option to instruct us to do so.

* dw/diff-no-index-doc:
  diff --no-index: describe in a separate paragraph
  diff --no-index: clarify operation when not inside a repository

11 years agoMerge branch 'ta/user-manual'
Junio C Hamano [Tue, 17 Sep 2013 18:42:41 +0000 (11:42 -0700)] 
Merge branch 'ta/user-manual'

Update the user's manual to more recent versions of Git.

* ta/user-manual:
  "git prune" is safe
  Remove irrelevant reference from "Tying it all together"
  Remove unnecessary historical note from "Object storage format"
  Improve section "Merging multiple trees"
  Improve section "Manipulating branches"
  Simplify "How to make a commit"
  Fix some typos and improve wording
  Use "git merge" instead of "git pull ."
  Use current output for "git repack"
  Use current "detached HEAD" message
  Call it "Git User Manual" and remove reference to very old Git version

11 years agoMerge branch 'fc/trivial'
Junio C Hamano [Tue, 17 Sep 2013 18:42:34 +0000 (11:42 -0700)] 
Merge branch 'fc/trivial'

* fc/trivial:
  pull: use $curr_branch_short more
  add: trivial style cleanup
  reset: trivial style cleanup
  branch: trivial style fix
  reset: trivial refactoring

11 years agoMerge branch 'fc/fast-export'
Junio C Hamano [Tue, 17 Sep 2013 18:42:31 +0000 (11:42 -0700)] 
Merge branch 'fc/fast-export'

Code simpification.

* fc/fast-export:
  fast-export: refactor get_tags_and_duplicates()
  fast-export: make extra_refs global

11 years agoMerge branch 'ab/gitweb-author-initials'
Junio C Hamano [Tue, 17 Sep 2013 18:42:27 +0000 (11:42 -0700)] 
Merge branch 'ab/gitweb-author-initials'

* ab/gitweb-author-initials:
  gitweb: Fix the author initials in blame for non-ASCII names

11 years agoMerge branch 'jk/has-sha1-file-retry-packed'
Junio C Hamano [Tue, 17 Sep 2013 18:41:34 +0000 (11:41 -0700)] 
Merge branch 'jk/has-sha1-file-retry-packed'

When an object is not found after checking the packfiles and then
loose object directory, read_sha1_file() re-checks the packfiles to
prevent racing with a concurrent repacker; teach the same logic to
has_sha1_file().

* jk/has-sha1-file-retry-packed:
  has_sha1_file: re-check pack directory before giving up

11 years agoMerge branch 'jk/write-broken-index-with-nul-sha1'
Junio C Hamano [Tue, 17 Sep 2013 18:40:27 +0000 (11:40 -0700)] 
Merge branch 'jk/write-broken-index-with-nul-sha1'

Earlier we started rejecting an attempt to add 0{40} object name to
the index and to tree objects, but it sometimes is necessary to
allow so to be able to use tools like filter-branch to correct such
broken tree objects.

* jk/write-broken-index-with-nul-sha1:
  write_index: optionally allow broken null sha1s

11 years agoMerge branch 'jx/clean-interactive'
Junio C Hamano [Tue, 17 Sep 2013 18:40:23 +0000 (11:40 -0700)] 
Merge branch 'jx/clean-interactive'

Finishing touches to update the document to adjust to a new option
"git clean" learned recently.

* jx/clean-interactive:
  documentation: clarify notes for clean.requireForce

11 years agoMerge branch 'tb/precompose-autodetect-fix'
Junio C Hamano [Tue, 17 Sep 2013 18:39:59 +0000 (11:39 -0700)] 
Merge branch 'tb/precompose-autodetect-fix'

On MacOS X, we detected if the filesystem needs the "pre-composed
unicode strings" workaround, but did not automatically enable it.
Now we do.

* tb/precompose-autodetect-fix:
  Set core.precomposeunicode to true on e.g. HFS+

11 years agoMerge branch 'kk/tests-with-no-perl'
Junio C Hamano [Tue, 17 Sep 2013 18:39:35 +0000 (11:39 -0700)] 
Merge branch 'kk/tests-with-no-perl'

Some tests were not skipped under NO_PERL build.

* kk/tests-with-no-perl:
  reset test: modernize style
  t/t7106-reset-unborn-branch.sh: Add PERL prerequisite
  add -i test: use skip_all instead of repeated PERL prerequisite
  Make test "using invalid commit with -C" more strict

11 years agoMerge branch 'ap/commit-author-mailmap'
Junio C Hamano [Tue, 17 Sep 2013 18:38:33 +0000 (11:38 -0700)] 
Merge branch 'ap/commit-author-mailmap'

"git commit --author=$name", when $name is not in the canonical
"A. U. Thor <au.thor@example.xz>" format, looks for a matching name
from existing history, but did not consult mailmap to grab the
preferred author name.

* ap/commit-author-mailmap:
  commit: search author pattern against mailmap

11 years agoMerge branch 'jk/free-tree-buffer'
Junio C Hamano [Tue, 17 Sep 2013 18:37:33 +0000 (11:37 -0700)] 
Merge branch 'jk/free-tree-buffer'

* jk/free-tree-buffer:
  clear parsed flag when we free tree buffers

11 years agoMerge branch 'maint'
Junio C Hamano [Tue, 17 Sep 2013 18:37:13 +0000 (11:37 -0700)] 
Merge branch 'maint'

* maint:
  t7406-submodule-update: add missing &&

11 years agot3200: fix failure on case-insensitive filesystems
Eric Sunshine [Sat, 14 Sep 2013 07:36:24 +0000 (03:36 -0400)] 
t3200: fix failure on case-insensitive filesystems

62d94a3a (t3200: Add test demonstrating minor regression in 41c21f2;
2013-09-08) introduced a test which creates a directory named 'a',
however, on case-insensitive filesystems, this action fails with a
"fatal: cannot mkdir a: File exists" error due to a file named 'A' left
over from earlier tests. Resolve this problem.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot7508: avoid non-portable sed expression
Eric Sunshine [Sat, 14 Sep 2013 04:47:12 +0000 (00:47 -0400)] 
t7508: avoid non-portable sed expression

2556b996 (status: disable display of '#' comment prefix by default;
2013-09-06) introduced tests which fail on Mac OS X due to unportable
use of \t (for TAB) in a sed expression. POSIX [1][2] also disallows
it. Fix this.

[1]: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/sed.html#tag_20_116_13_02
[2]: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html#tag_09_03_02

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Acked-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot7406-submodule-update: add missing &&
Tay Ray Chuan [Sun, 15 Sep 2013 17:38:21 +0000 (01:38 +0800)] 
t7406-submodule-update: add missing &&

322bb6e (2011 Aug 11) introduced a new subshell at the end of a test
case but omitted a '&&' to join the two; fix this.

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agocheck-ignore: Add option to ignore index contents
Dave Williams [Thu, 5 Sep 2013 16:08:01 +0000 (17:08 +0100)] 
check-ignore: Add option to ignore index contents

check-ignore currently shows how .gitignore rules would treat untracked
paths. Tracked paths do not generate useful output.  This prevents
debugging of why a path became tracked unexpectedly unless that path is
first removed from the index with `git rm --cached <path>`.

The option --no-index tells the command to bypass the check for the
path being in the index and hence allows tracked paths to be checked
too.

Whilst this behaviour deviates from the characteristics of `git add` and
`git status` its use case is unlikely to cause any user confusion.

Test scripts are augmented to check this option against the standard
ignores to ensure correct behaviour.

Signed-off-by: Dave Williams <dave@opensourcesolutions.co.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agourlmatch.c: recompute pointer after append_normalized_escapes
Thomas Rast [Thu, 12 Sep 2013 14:15:40 +0000 (07:15 -0700)] 
urlmatch.c: recompute pointer after append_normalized_escapes

When append_normalized_escapes is called, its internal strbuf_add* calls can
cause the strbuf's buf to be reallocated changing the value of the buf pointer.

Do not use the strbuf buf pointer from before any append_normalized_escapes
calls afterwards.  Instead recompute the needed pointer.

Signed-off-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Kyle J. McKay <mackyle@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoSync with maint for l10n updates
Junio C Hamano [Thu, 12 Sep 2013 21:53:47 +0000 (14:53 -0700)] 
Sync with maint for l10n updates

* maint:
  l10n: de.po: use "das Tag" instead of "der Tag"

11 years agoUpdate draft release notes to 1.8.5 for the third batch of topics
Junio C Hamano [Thu, 12 Sep 2013 21:42:47 +0000 (14:42 -0700)] 
Update draft release notes to 1.8.5 for the third batch of topics

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'jc/pager-configuration-doc'
Junio C Hamano [Thu, 12 Sep 2013 21:41:53 +0000 (14:41 -0700)] 
Merge branch 'jc/pager-configuration-doc'

It was unclear in the documentation how various configurations and
environment variables determine which pager is eventually used.

* jc/pager-configuration-doc:
  config: rewrite core.pager documentation

11 years agoMerge branch 'mm/remote-helpers-doc'
Junio C Hamano [Thu, 12 Sep 2013 21:41:50 +0000 (14:41 -0700)] 
Merge branch 'mm/remote-helpers-doc'

* mm/remote-helpers-doc:
  Documentation/remote-helpers: document common use-case for private ref

11 years agoMerge branch 'mn/doc-pack-heu-remove-dead-pastebin'
Junio C Hamano [Thu, 12 Sep 2013 21:41:47 +0000 (14:41 -0700)] 
Merge branch 'mn/doc-pack-heu-remove-dead-pastebin'

* mn/doc-pack-heu-remove-dead-pastebin:
  remove dead pastebin link from pack-heuristics document

11 years agoMerge branch 'mm/fast-import-feature-doc'
Junio C Hamano [Thu, 12 Sep 2013 21:41:45 +0000 (14:41 -0700)] 
Merge branch 'mm/fast-import-feature-doc'

* mm/fast-import-feature-doc:
  Documentation/fast-import: clarify summary for `feature` command

11 years agoMerge branch 'mm/mediawiki-dumb-push-fix'
Junio C Hamano [Thu, 12 Sep 2013 21:41:41 +0000 (14:41 -0700)] 
Merge branch 'mm/mediawiki-dumb-push-fix'

* mm/mediawiki-dumb-push-fix:
  git-remote-mediawiki: no need to update private ref in non-dumb push
  git-remote-mediawiki: use no-private-update capability on dumb push
  transport-helper: add no-private-update capability
  git-remote-mediawiki: add test and check Makefile targets

11 years agoMerge branch 'jc/commit-is-spelled-with-two-ems'
Junio C Hamano [Thu, 12 Sep 2013 21:41:38 +0000 (14:41 -0700)] 
Merge branch 'jc/commit-is-spelled-with-two-ems'

* jc/commit-is-spelled-with-two-ems:
  typofix: cherry is spelled with two ars
  typofix: commit is spelled with two ems

11 years agoMerge branch 'jk/config-int-range-check'
Junio C Hamano [Thu, 12 Sep 2013 21:41:00 +0000 (14:41 -0700)] 
Merge branch 'jk/config-int-range-check'

"git config" did not provide a way to set or access numbers larger
than a native "int" on the platform; it now provides 64-bit signed
integers on all platforms.

* jk/config-int-range-check:
  git-config: always treat --int as 64-bit internally
  config: make numeric parsing errors more clear
  config: set errno in numeric git_parse_* functions
  config: properly range-check integer values
  config: factor out integer parsing from range checks

11 years agoAdd new @ shortcut for HEAD
Felipe Contreras [Mon, 2 Sep 2013 06:34:30 +0000 (01:34 -0500)] 
Add new @ shortcut for HEAD

Typing 'HEAD' is tedious, especially when we can use '@' instead.

The reason for choosing '@' is that it follows naturally from the
ref@op syntax (e.g. HEAD@{u}), except we have no ref, and no
operation, and when we don't have those, it makes sens to assume
'HEAD'.

So now we can use 'git show @~1', and all that goody goodness.

Until now '@' was a valid name, but it conflicts with this idea, so
let's make it invalid. Probably very few people, if any, used this name.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agocommit: disable status hints when writing to COMMIT_EDITMSG
Matthieu Moy [Thu, 12 Sep 2013 10:50:06 +0000 (12:50 +0200)] 
commit: disable status hints when writing to COMMIT_EDITMSG

This turns the template COMMIT_EDITMSG from e.g

  # [...]
  # Changes to be committed:
  #   (use "git reset HEAD <file>..." to unstage)
  #
  # modified:   builtin/commit.c
  #
  # Untracked files:
  #   (use "git add <file>..." to include in what will be committed)
  #
  # t/foo
  #

to

  # [...]
  # Changes to be committed:
  # modified:   builtin/commit.c
  #
  # Untracked files:
  # t/foo
  #

Most status hints were written to be accurate when running "git status"
before running a commit. Many of them are not applicable when the commit
has already been started, and should not be shown in COMMIT_EDITMSG. The
most obvious are hints advising to run "git commit",
"git rebase/am/cherry-pick --continue", which do not make sense when the
command has already been run.

Other messages become slightly inaccurate (e.g. hint to use "git add" to
add untracked files), as the suggested commands are not immediately
applicable during the editing of COMMIT_EDITMSG, but would be applicable
if the commit is aborted. These messages are both potentially helpful and
slightly misleading. This patch chose to remove them too, to avoid
introducing too much complexity in the status code.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agowt-status: turn advice_status_hints into a field of wt_status
Matthieu Moy [Thu, 12 Sep 2013 10:50:05 +0000 (12:50 +0200)] 
wt-status: turn advice_status_hints into a field of wt_status

No behavior change in this patch, but this makes the display of status
hints more flexible as they can be enabled or disabled for individual
calls to commit.c:run_status().

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agocommit: factor status configuration is a helper function
Matthieu Moy [Thu, 12 Sep 2013 10:50:04 +0000 (12:50 +0200)] 
commit: factor status configuration is a helper function

cmd_commit and cmd_status use very similar code to initialize the
wt_status structure. Factor this code into a function to ensure future
changes will keep both versions consistent.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agohttp-backend: provide Allow header for 405
Brian M. Carlson [Thu, 12 Sep 2013 00:30:01 +0000 (00:30 +0000)] 
http-backend: provide Allow header for 405

The HTTP 1.1 standard requires an Allow header for 405 Method Not Allowed:

  The response MUST include an Allow header containing a list of valid methods
  for the requested resource.

So provide such a header when we return a 405 to the user agent.

Signed-off-by: Brian M. Carlson <sandals@crustytoothpaste.net>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'maint' of git://github.com/git-l10n/git-po into maint
Junio C Hamano [Thu, 12 Sep 2013 04:12:02 +0000 (21:12 -0700)] 
Merge branch 'maint' of git://github.com/git-l10n/git-po into maint

* 'maint' of git://github.com/git-l10n/git-po:
  l10n: de.po: use "das Tag" instead of "der Tag"

11 years agoUpdate draft release notes to 1.8.5
Junio C Hamano [Wed, 11 Sep 2013 22:05:57 +0000 (15:05 -0700)] 
Update draft release notes to 1.8.5

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'jc/ls-files-killed-optim'
Junio C Hamano [Wed, 11 Sep 2013 22:03:28 +0000 (15:03 -0700)] 
Merge branch 'jc/ls-files-killed-optim'

"git ls-files -k" needs to crawl only the part of the working tree
that may overlap the paths in the index to find killed files, but
shared code with the logic to find all the untracked files, which
made it unnecessarily inefficient.

* jc/ls-files-killed-optim:
  dir.c::test_one_path(): work around directory_exists_in_index_icase() breakage
  t3010: update to demonstrate "ls-files -k" optimization pitfalls
  ls-files -k: a directory only can be killed if the index has a non-directory
  dir.c: use the cache_* macro to access the current index

11 years agoMerge branch 'es/rebase-i-no-abbrev'
Junio C Hamano [Wed, 11 Sep 2013 22:02:29 +0000 (15:02 -0700)] 
Merge branch 'es/rebase-i-no-abbrev'

The commit object names in the insn sheet that was prepared at the
beginning of "rebase -i" session can become ambiguous as the
rebasing progresses and the repository gains more commits. Make
sure the internal record is kept with full 40-hex object names.

* es/rebase-i-no-abbrev:
  rebase -i: fix short SHA-1 collision
  t3404: rebase -i: demonstrate short SHA-1 collision
  t3404: make tests more self-contained

11 years agoMerge branch 'rt/rebase-p-no-merge-summary'
Junio C Hamano [Wed, 11 Sep 2013 22:00:56 +0000 (15:00 -0700)] 
Merge branch 'rt/rebase-p-no-merge-summary'

"git rebase -p" internally used the merge machinery, but when
rebasing, there should not be a need for merge summary.

* rt/rebase-p-no-merge-summary:
  rebase --preserve-merges: ignore "merge.log" config

11 years agoMerge branch 'tf/gitweb-ss-tweak'
Junio C Hamano [Wed, 11 Sep 2013 22:00:54 +0000 (15:00 -0700)] 
Merge branch 'tf/gitweb-ss-tweak'

Tweak Gitweb CSS to layout some elements better.

* tf/gitweb-ss-tweak:
  gitweb: make search help link less ugly
  gitweb: omit the repository owner when it is unset
  gitweb: vertically centre contents of page footer
  gitweb: ensure OPML text fits inside its box

11 years agoMerge branch 'sb/mailmap-freeing-NULL-is-ok'
Junio C Hamano [Wed, 11 Sep 2013 22:00:43 +0000 (15:00 -0700)] 
Merge branch 'sb/mailmap-freeing-NULL-is-ok'

* sb/mailmap-freeing-NULL-is-ok:
  mailmap: remove redundant check for freeing memory

11 years agoMerge branch 'js/xread-in-full'
Junio C Hamano [Wed, 11 Sep 2013 21:59:46 +0000 (14:59 -0700)] 
Merge branch 'js/xread-in-full'

A call to xread() was used without a loop around to cope with short
read in the codepath to stream new contents to a pack.

* js/xread-in-full:
  stream_to_pack: xread does not guarantee to read all requested bytes

11 years agoMerge branch 'es/rebase-i-respect-core-commentchar'
Junio C Hamano [Wed, 11 Sep 2013 21:58:52 +0000 (14:58 -0700)] 
Merge branch 'es/rebase-i-respect-core-commentchar'

"rebase -i" forgot that the comment character can be configurable
while reading its insn sheet.

* es/rebase-i-respect-core-commentchar:
  rebase -i: fix cases ignoring core.commentchar

11 years agoMerge branch 'jn/post-receive-utf8'
Junio C Hamano [Wed, 11 Sep 2013 21:58:46 +0000 (14:58 -0700)] 
Merge branch 'jn/post-receive-utf8'

Update post-receive-email script to make sure the message contents
and pathnames are encoded consistently in UTF-8.

* jn/post-receive-utf8:
  hooks/post-receive-email: set declared encoding to utf-8
  hooks/post-receive-email: force log messages in UTF-8
  hooks/post-receive-email: use plumbing instead of git log/show

11 years agoMerge branch 'sh/pull-rebase-preserve'
Junio C Hamano [Wed, 11 Sep 2013 21:57:49 +0000 (14:57 -0700)] 
Merge branch 'sh/pull-rebase-preserve'

"git pull --rebase" always flattened the history; pull.rebase can
now be set to "preserve" to invoke "rebase --preserve-merges".

* sh/pull-rebase-preserve:
  pull: allow pull to preserve merges when rebasing

11 years agoMerge branch 'nd/push-no-thin'
Junio C Hamano [Wed, 11 Sep 2013 21:56:58 +0000 (14:56 -0700)] 
Merge branch 'nd/push-no-thin'

"git push --no-thin" was a no-op by mistake.

* nd/push-no-thin:
  push: respect --no-thin

11 years agolookup_object: remove hashtable_index() and optimize hash_obj()
Nicolas Pitre [Tue, 10 Sep 2013 22:17:12 +0000 (18:17 -0400)] 
lookup_object: remove hashtable_index() and optimize hash_obj()

hashtable_index() appears to be a close duplicate of hash_obj().
Keep only the later and make it usable for all cases.

Also remove the modulus as this is an expensive operation.
The size argument is always a power of 2 anyway, so a simple
mask operation provides the same result.

On a 'git rev-list --all --objects' run this decreased the time spent
in lookup_object from 27.5% to 24.1%.

[jc: with a few comments on "modulus turned into mask" by Peff]

Signed-off-by: Nicolas Pitre <nico@fluxnic.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoupdate-ref: add test cases covering --stdin signature
Brad King [Wed, 11 Sep 2013 12:46:18 +0000 (08:46 -0400)] 
update-ref: add test cases covering --stdin signature

Extend t/t1400-update-ref.sh to cover cases using the --stdin option.

Signed-off-by: Brad King <brad.king@kitware.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agocvsserver: pick up the right mode bits
Junio C Hamano [Tue, 10 Sep 2013 22:33:06 +0000 (15:33 -0700)] 
cvsserver: pick up the right mode bits

When determining the file mode from either ls-tree or diff-tree
output, we used to grab these octal mode string (typically 100644 or
100755) and then did

$git_perms .= "r" if ( $mode & 4 );
$git_perms .= "w" if ( $mode & 2 );
$git_perms .= "x" if ( $mode & 1 );

which was already wrong, as (100644 & 4) is very different from
oct("100644") & 4.  An earlier refactoring 2c3af7e7 (cvsserver:
factor out git-log parsing logic, 2012-10-13) further changed it to
pick the third octal digit (10*0*644 or 10*0*755) from the left and
then do the above conversion, which does not make sense, either.

Let's use the third digit from the last of the octal mode string to
make sure we get the executable and read bits right.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
Tested-by: Michael Cronenworth <mike@cchtml.com>
11 years agosend-email: don't call methods on undefined values
Brian M. Carlson [Sun, 8 Sep 2013 20:54:34 +0000 (20:54 +0000)] 
send-email: don't call methods on undefined values

If SSL verification is enabled in git send-email, we could attempt to call a
method on an undefined value if the verification failed, since $smtp would end
up being undef.  Look up the error string in a way that will produce a helpful
error message and not cause further errors.

Signed-off-by: Brian M. Carlson <sandals@crustytoothpaste.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoUpdate draft release notes to 1.8.5 for the second batch of topics
Junio C Hamano [Mon, 9 Sep 2013 21:51:42 +0000 (14:51 -0700)] 
Update draft release notes to 1.8.5 for the second batch of topics

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'nd/magic-pathspec'
Junio C Hamano [Mon, 9 Sep 2013 21:50:42 +0000 (14:50 -0700)] 
Merge branch 'nd/magic-pathspec'

Use "struct pathspec" interface in more places, instead of array of
characters, the latter of which cannot express magic pathspecs
(e.g. ":(icase)makefile" that matches both Makefile and makefile).

* nd/magic-pathspec:
  add: lift the pathspec magic restriction on "add -p"
  pathspec: catch prepending :(prefix) on pathspec with short magic

11 years agoMerge branch 'jk/mailmap-incomplete-line'
Junio C Hamano [Mon, 9 Sep 2013 21:50:41 +0000 (14:50 -0700)] 
Merge branch 'jk/mailmap-incomplete-line'

* jk/mailmap-incomplete-line:
  mailmap: handle mailmap blobs without trailing newlines

11 years agoMerge branch 'sp/clip-read-write-to-8mb'
Junio C Hamano [Mon, 9 Sep 2013 21:50:39 +0000 (14:50 -0700)] 
Merge branch 'sp/clip-read-write-to-8mb'

Send a large request to read(2)/write(2) as a smaller but still
reasonably large chunks, which would improve the latency when the
operation needs to be killed and incidentally works around broken
64-bit systems that cannot take a 2GB write or read in one go.

* sp/clip-read-write-to-8mb:
  Revert "compat/clipped-write.c: large write(2) fails on Mac OS X/XNU"
  xread, xwrite: limit size of IO to 8MB

11 years agoMerge branch 'tg/index-struct-sizes'
Junio C Hamano [Mon, 9 Sep 2013 21:50:38 +0000 (14:50 -0700)] 
Merge branch 'tg/index-struct-sizes'

The code that reads from a region that mmaps an on-disk index
assumed that "int"/"short" are always 32/16 bits.

* tg/index-struct-sizes:
  read-cache: use fixed width integer types

11 years agoMerge branch 'jc/transport-do-not-use-connect-twice-in-fetch'
Junio C Hamano [Mon, 9 Sep 2013 21:50:37 +0000 (14:50 -0700)] 
Merge branch 'jc/transport-do-not-use-connect-twice-in-fetch'

The auto-tag-following code in "git fetch" tries to reuse the same
transport twice when the serving end does not cooperate and does
not give tags that point to commits that are asked for as part of
the primary transfer.  Unfortunately, Git-aware transport helper
interface is not designed to be used more than once, hence this
does not work over smart-http transfer.

* jc/transport-do-not-use-connect-twice-in-fetch:
  builtin/fetch.c: Fix a sparse warning
  fetch: work around "transport-take-over" hack
  fetch: refactor code that fetches leftover tags
  fetch: refactor code that prepares a transport
  fetch: rename file-scope global "transport" to "gtransport"
  t5802: add test for connect helper