OSDN Git Service

git-core/git.git
8 years agoMerge branch 'jk/cat-file-batch-all'
Junio C Hamano [Mon, 3 Aug 2015 18:01:19 +0000 (11:01 -0700)]
Merge branch 'jk/cat-file-batch-all'

"cat-file" learned "--batch-all-objects" option to enumerate all
available objects in the repository more quickly than "rev-list
--all --objects" (the output includes unreachable objects, though).

* jk/cat-file-batch-all:
  cat-file: sort and de-dup output of --batch-all-objects
  cat-file: add --batch-all-objects option
  cat-file: split batch_one_object into two stages
  cat-file: stop returning value from batch_one_object
  cat-file: add --buffer option
  cat-file: move batch_options definition to top of file
  cat-file: minor style fix in options list

8 years agoMerge branch 'js/fsck-opt'
Junio C Hamano [Mon, 3 Aug 2015 18:01:18 +0000 (11:01 -0700)]
Merge branch 'js/fsck-opt'

Allow ignoring fsck errors on specific set of known-to-be-bad
objects, and also tweaking warning level of various kinds of non
critical breakages reported.

* js/fsck-opt:
  fsck: support ignoring objects in `git fsck` via fsck.skiplist
  fsck: git receive-pack: support excluding objects from fsck'ing
  fsck: introduce `git fsck --connectivity-only`
  fsck: support demoting errors to warnings
  fsck: document the new receive.fsck.<msg-id> options
  fsck: allow upgrading fsck warnings to errors
  fsck: optionally ignore specific fsck issues completely
  fsck: disallow demoting grave fsck errors to warnings
  fsck: add a simple test for receive.fsck.<msg-id>
  fsck: make fsck_tag() warn-friendly
  fsck: handle multiple authors in commits specially
  fsck: make fsck_commit() warn-friendly
  fsck: make fsck_ident() warn-friendly
  fsck: report the ID of the error/warning
  fsck (receive-pack): allow demoting errors to warnings
  fsck: offer a function to demote fsck errors to warnings
  fsck: provide a function to parse fsck message IDs
  fsck: introduce identifiers for fsck messages
  fsck: introduce fsck options

8 years agoMerge branch 'mh/init-delete-refs-api'
Junio C Hamano [Mon, 3 Aug 2015 18:01:17 +0000 (11:01 -0700)]
Merge branch 'mh/init-delete-refs-api'

Clean up refs API and make "git clone" less intimate with the
implementation detail.

* mh/init-delete-refs-api:
  delete_ref(): use the usual convention for old_sha1
  cmd_update_ref(): make logic more straightforward
  update_ref(): don't read old reference value before delete
  check_branch_commit(): make first parameter const
  refs.h: add some parameter names to function declarations
  refs: move the remaining ref module declarations to refs.h
  initial_ref_transaction_commit(): check for ref D/F conflicts
  initial_ref_transaction_commit(): check for duplicate refs
  refs: remove some functions from the module's public interface
  initial_ref_transaction_commit(): function for initial ref creation
  repack_without_refs(): make function private
  prune_refs(): use delete_refs()
  prune_remote(): use delete_refs()
  delete_refs(): bail early if the packed-refs file cannot be rewritten
  delete_refs(): make error message more generic
  delete_refs(): new function for the refs API
  delete_ref(): handle special case more explicitly
  remove_branches(): remove temporary
  delete_ref(): move declaration to refs.h

8 years agoMerge branch 'pt/pull-builtin'
Junio C Hamano [Mon, 3 Aug 2015 18:01:17 +0000 (11:01 -0700)]
Merge branch 'pt/pull-builtin'

Reimplement 'git pull' in C.

* pt/pull-builtin:
  pull: remove redirection to git-pull.sh
  pull --rebase: error on no merge candidate cases
  pull --rebase: exit early when the working directory is dirty
  pull: configure --rebase via branch.<name>.rebase or pull.rebase
  pull: teach git pull about --rebase
  pull: set reflog message
  pull: implement pulling into an unborn branch
  pull: fast-forward working tree if head is updated
  pull: check if in unresolved merge state
  pull: support pull.ff config
  pull: error on no merge candidates
  pull: pass git-fetch's options to git-fetch
  pull: pass git-merge's options to git-merge
  pull: pass verbosity, --progress flags to fetch and merge
  pull: implement fetch + merge
  pull: implement skeletal builtin pull
  argv-array: implement argv_array_pushv()
  parse-options-cb: implement parse_opt_passthru_argv()
  parse-options-cb: implement parse_opt_passthru()

8 years agoMerge branch 'jk/pkt-log-pack'
Junio C Hamano [Mon, 3 Aug 2015 18:01:16 +0000 (11:01 -0700)]
Merge branch 'jk/pkt-log-pack'

Enhance packet tracing machinery to allow capturing an incoming
pack data to a file for debugging.

* jk/pkt-log-pack:
  pkt-line: support tracing verbatim pack contents
  pkt-line: tighten sideband PACK check when tracing
  pkt-line: simplify starts_with checks in packet tracing

8 years agoMerge branch 'mr/rebase-i-customize-insn-sheet'
Junio C Hamano [Mon, 3 Aug 2015 18:01:16 +0000 (11:01 -0700)]
Merge branch 'mr/rebase-i-customize-insn-sheet'

"git rebase -i"'s list of todo is made configurable.

* mr/rebase-i-customize-insn-sheet:
  git-rebase--interactive.sh: add config option for custom instruction format

8 years agoMerge branch 'rl/send-email-aliases'
Junio C Hamano [Mon, 3 Aug 2015 18:01:15 +0000 (11:01 -0700)]
Merge branch 'rl/send-email-aliases'

"git send-email" now performs alias-expansion on names that are
given via --cccmd, etc.

This round comes with a lot more enhanced e-mail address parser,
which makes it a bit scary, but as long as it works as designed, it
makes it wonderful ;-).

* rl/send-email-aliases:
  send-email: suppress meaningless whitespaces in from field
  send-email: allow multiple emails using --cc, --to and --bcc
  send-email: consider quote as delimiter instead of character
  send-email: reduce dependencies impact on parse_address_line
  send-email: minor code refactoring
  send-email: allow use of aliases in the From field of --compose mode
  send-email: refactor address list process
  t9001-send-email: refactor header variable fields replacement
  send-email: allow aliases in patch header and command script outputs
  t9001-send-email: move script creation in a setup test

8 years agoMerge branch 'kb/i18n-doc'
Junio C Hamano [Mon, 3 Aug 2015 18:01:15 +0000 (11:01 -0700)]
Merge branch 'kb/i18n-doc'

* kb/i18n-doc:
  Documentation/i18n.txt: clarify character encoding support

8 years agoMerge branch 'nd/export-worktree'
Junio C Hamano [Mon, 3 Aug 2015 18:01:14 +0000 (11:01 -0700)]
Merge branch 'nd/export-worktree'

Running an aliased command from a subdirectory when the .git thing
in the working tree is a gitfile pointing elsewhere did not work.

* nd/export-worktree:
  setup: set env $GIT_WORK_TREE when work tree is set, like $GIT_DIR

8 years agoMerge branch 'ee/clean-remove-dirs'
Junio C Hamano [Mon, 3 Aug 2015 18:01:13 +0000 (11:01 -0700)]
Merge branch 'ee/clean-remove-dirs'

Replace "is this subdirectory a separate repository that should not
be touched?" check "git clean" does by checking if it has .git/HEAD
using the submodule-related code with a more optimized check.

* ee/clean-remove-dirs:
  read_gitfile_gently: fix use-after-free
  clean: improve performance when removing lots of directories
  p7300: add performance tests for clean
  t7300: add tests to document behavior of clean and nested git
  setup: sanity check file size in read_gitfile_gently
  setup: add gentle version of read_gitfile

8 years agoMerge branch 'cb/parse-magnitude'
Junio C Hamano [Mon, 3 Aug 2015 18:01:13 +0000 (11:01 -0700)]
Merge branch 'cb/parse-magnitude'

Move machinery to parse human-readable scaled numbers like 1k, 4M,
and 2G as an option parameter's value from pack-objects to
parse-options API, to make it available to other codepaths.

* cb/parse-magnitude:
  parse-options: move unsigned long option parsing out of pack-objects.c
  test-parse-options: update to handle negative ints

8 years agoMerge branch 'bc/gpg-verify-raw'
Junio C Hamano [Mon, 3 Aug 2015 18:01:12 +0000 (11:01 -0700)]
Merge branch 'bc/gpg-verify-raw'

"git verify-tag" and "git verify-commit" have been taught to share
more code, and then learned to optionally show the verification
message from the underlying GPG implementation.

* bc/gpg-verify-raw:
  verify-tag: add option to print raw gpg status information
  verify-commit: add option to print raw gpg status information
  gpg: centralize printing signature buffers
  gpg: centralize signature check
  verify-commit: add test for exit status on untrusted signature
  verify-tag: share code with verify-commit
  verify-tag: add tests

8 years agoMerge branch 'pt/am-foreign'
Junio C Hamano [Mon, 3 Aug 2015 18:01:12 +0000 (11:01 -0700)]
Merge branch 'pt/am-foreign'

Various enhancements around "git am" reading patches generated by
foreign SCM.

* pt/am-foreign:
  am: teach mercurial patch parser how to read from stdin
  am: use gmtime() to parse mercurial patch date
  t4150: test applying StGit series
  am: teach StGit patch parser how to read from stdin
  t4150: test applying StGit patch

8 years agoMerge branch 'kn/for-each-ref'
Junio C Hamano [Mon, 3 Aug 2015 18:01:10 +0000 (11:01 -0700)]
Merge branch 'kn/for-each-ref'

GSoC project to rebuild ref listing by branch and tag based on the
for-each-ref machinery.  This is its first part.

* kn/for-each-ref:
  ref-filter: make 'ref_array_item' use a FLEX_ARRAY for refname
  for-each-ref: introduce filter_refs()
  ref-filter: move code from 'for-each-ref'
  ref-filter: add 'ref-filter.h'
  for-each-ref: rename variables called sort to sorting
  for-each-ref: rename some functions and make them public
  for-each-ref: introduce 'ref_array_clear()'
  for-each-ref: introduce new structures for better organisation
  for-each-ref: rename 'refinfo' to 'ref_array_item'
  for-each-ref: clean up code
  for-each-ref: extract helper functions out of grab_single_ref()

8 years agoMerge branch 'mh/replace-refs'
Junio C Hamano [Mon, 3 Aug 2015 18:01:10 +0000 (11:01 -0700)]
Merge branch 'mh/replace-refs'

Add an environment variable to tell Git to look into refs hierarchy
other than refs/replace/ for the object replacement data.

* mh/replace-refs:
  Allow to control where the replace refs are looked for

8 years agoref-filter: make 'ref_array_item' use a FLEX_ARRAY for refname
Karthik Nayak [Sat, 13 Jun 2015 19:37:29 +0000 (01:07 +0530)]
ref-filter: make 'ref_array_item' use a FLEX_ARRAY for refname

This would remove the need of using a pointer to store refname.

Mentored-by: Christian Couder <christian.couder@gmail.com>
Mentored-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Karthik Nayak <karthik.188@gmail.com>
Reviewed-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agofor-each-ref: introduce filter_refs()
Karthik Nayak [Sat, 13 Jun 2015 19:37:28 +0000 (01:07 +0530)]
for-each-ref: introduce filter_refs()

Introduce filter_refs() which will act as an API for filtering
a set of refs. Based on the type of refs the user has requested,
we iterate through those refs and apply filters as per the
given ref_filter structure and finally store the filtered refs
in the ref_array structure.

Currently this will wrap around ref_filter_handler(). Hence,
ref_filter_handler is made file scope static.

As users of this API will no longer send a ref_filter_cbdata
structure directly, we make the elements of ref_filter_cbdata
pointers. We can now use the information given by the users
to obtain our own ref_filter_cbdata structure. Changes are made to
support the change in ref_filter_cbdata structure.

Make 'for-each-ref' use this API.

Helped-by: Junio C Hamano <gitster@pobox.com>
Mentored-by: Christian Couder <christian.couder@gmail.com>
Mentored-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Karthik Nayak <karthik.188@gmail.com>
Reviewed-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoref-filter: move code from 'for-each-ref'
Karthik Nayak [Sat, 13 Jun 2015 19:37:27 +0000 (01:07 +0530)]
ref-filter: move code from 'for-each-ref'

Move most of the code from 'for-each-ref' to 'ref-filter' to make
it publicly available to other commands, this is to unify the code
of 'tag -l', 'branch -l' and 'for-each-ref' so that they can share
their implementations with each other.

Add 'ref-filter' to the Makefile, this completes the movement of code
from 'for-each-ref' to 'ref-filter'.

Mentored-by: Christian Couder <christian.couder@gmail.com>
Mentored-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Karthik Nayak <karthik.188@gmail.com>
Reviewed-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoGit 2.5 v2.5.0
Junio C Hamano [Mon, 27 Jul 2015 19:29:47 +0000 (12:29 -0700)]
Git 2.5

Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoSync with 2.4.7
Junio C Hamano [Mon, 27 Jul 2015 19:26:36 +0000 (12:26 -0700)]
Sync with 2.4.7

9 years agoGit 2.4.7 v2.4.7
Junio C Hamano [Mon, 27 Jul 2015 19:25:42 +0000 (12:25 -0700)]
Git 2.4.7

Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoMerge branch 'jk/pretty-encoding-doc' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:48 +0000 (12:21 -0700)]
Merge branch 'jk/pretty-encoding-doc' into maint

Doc update.

* jk/pretty-encoding-doc:
  docs: clarify that --encoding can produce invalid sequences

9 years agoMerge branch 'tb/checkout-doc' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:47 +0000 (12:21 -0700)]
Merge branch 'tb/checkout-doc' into maint

Doc update.

* tb/checkout-doc:
  git-checkout.txt: document "git checkout <pathspec>" better

9 years agoMerge branch 'ls/hint-rev-list-count' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:47 +0000 (12:21 -0700)]
Merge branch 'ls/hint-rev-list-count' into maint

* ls/hint-rev-list-count:
  rev-list: add --count to usage guide

9 years agoMerge branch 'mm/branch-doc-updates' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:46 +0000 (12:21 -0700)]
Merge branch 'mm/branch-doc-updates' into maint

* mm/branch-doc-updates:
  Documentation/branch: document -M and -D in terms of --force
  Documentation/branch: document -d --force and -m --force

9 years agoMerge branch 'jc/fsck-retire-require-eoh' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:45 +0000 (12:21 -0700)]
Merge branch 'jc/fsck-retire-require-eoh' into maint

A fix to a minor regression to "git fsck" in v2.2 era that started
complaining about a body-less tag object when it lacks a separator
empty line after its header to separate it with a non-existent body.

* jc/fsck-retire-require-eoh:
  fsck: it is OK for a tag and a commit to lack the body

9 years agoMerge branch 'et/http-proxyauth' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:44 +0000 (12:21 -0700)]
Merge branch 'et/http-proxyauth' into maint

We used to ask libCURL to use the most secure authentication method
available when talking to an HTTP proxy only when we were told to
talk to one via configuration variables.  We now ask libCURL to
always use the most secure authentication method, because the user
can tell libCURL to use an HTTP proxy via an environment variable
without using configuration variables.

* et/http-proxyauth:
  http: always use any proxy auth method available

9 years agoMerge branch 'jc/unexport-git-pager-in-use-in-pager' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:43 +0000 (12:21 -0700)]
Merge branch 'jc/unexport-git-pager-in-use-in-pager' into maint

When you say "!<ENTER>" while running say "git log", you'd confuse
yourself in the resulting shell, that may look as if you took
control back to the original shell you spawned "git log" from but
that isn't what is happening.  To that new shell, we leaked
GIT_PAGER_IN_USE environment variable that was meant as a local
communication between the original "Git" and subprocesses that was
spawned by it after we launched the pager, which caused many
"interesting" things to happen, e.g. "git diff | cat" still paints
its output in color by default.

Stop leaking that environment variable to the pager's half of the
fork; we only need it on "Git" side when we spawn the pager.

* jc/unexport-git-pager-in-use-in-pager:
  pager: do not leak "GIT_PAGER_IN_USE" to the pager

9 years agoMerge branch 'mh/strbuf-read-file-returns-ssize-t' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:43 +0000 (12:21 -0700)]
Merge branch 'mh/strbuf-read-file-returns-ssize-t' into maint

Avoid possible ssize_t to int truncation.

* mh/strbuf-read-file-returns-ssize-t:
  strbuf: strbuf_read_file() should return ssize_t

9 years agoMerge branch 'kb/config-unmap-before-renaming' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:42 +0000 (12:21 -0700)]
Merge branch 'kb/config-unmap-before-renaming' into maint

"git config" failed to update the configuration file when the
underlying filesystem is incapable of renaming a file that is still
open.

* kb/config-unmap-before-renaming:
  config.c: fix writing config files on Windows network shares

9 years agoMerge branch 'jk/rev-list-no-bitmap-while-pruning' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:42 +0000 (12:21 -0700)]
Merge branch 'jk/rev-list-no-bitmap-while-pruning' into maint

A minor bugfix when pack bitmap is used with "rev-list --count".

* jk/rev-list-no-bitmap-while-pruning:
  rev-list: disable --use-bitmap-index when pruning commits

9 years agoMerge branch 'rh/test-color-avoid-terminfo-in-original-home' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:41 +0000 (12:21 -0700)]
Merge branch 'rh/test-color-avoid-terminfo-in-original-home' into maint

An ancient test framework enhancement to allow color was not
entirely correct; this makes it work even when tput needs to read
from the ~/.terminfo under the user's real HOME directory.

* rh/test-color-avoid-terminfo-in-original-home:
  test-lib.sh: fix color support when tput needs ~/.terminfo
  Revert "test-lib.sh: do tests for color support after changing HOME"

9 years agoMerge branch 'jk/fix-refresh-utime' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:40 +0000 (12:21 -0700)]
Merge branch 'jk/fix-refresh-utime' into maint

Fix a small bug in our use of umask() return value.

* jk/fix-refresh-utime:
  check_and_freshen_file: fix reversed success-check

9 years agoMerge branch 'cb/rebase-am-exit-code' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:39 +0000 (12:21 -0700)]
Merge branch 'cb/rebase-am-exit-code' into maint

"git rebase" did not exit with failure when format-patch it invoked
failed for whatever reason.

* cb/rebase-am-exit-code:
  rebase: return non-zero error code if format-patch fails

9 years agoMerge branch 'jk/index-pack-reduce-recheck' into maint
Junio C Hamano [Mon, 27 Jul 2015 19:21:38 +0000 (12:21 -0700)]
Merge branch 'jk/index-pack-reduce-recheck' into maint

Disable "have we lost a race with competing repack?" check while
receiving a huge object transfer that runs index-pack.

* jk/index-pack-reduce-recheck:
  index-pack: avoid excessive re-reading of pack directory

9 years agoRelNotes: am.threeWay does not exist (yet)
Junio C Hamano [Fri, 24 Jul 2015 21:31:23 +0000 (14:31 -0700)]
RelNotes: am.threeWay does not exist (yet)

Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoRevert "git-am: add am.threeWay config variable"
Junio C Hamano [Fri, 24 Jul 2015 17:55:24 +0000 (10:55 -0700)]
Revert "git-am: add am.threeWay config variable"

This reverts commit d96a275b91bae1800cd43be0651e886e7e042a17.

It used to be possible to apply a patch series with "git am mbox"
and then only after seeing a failure, switch to three-way mode via
"git am -3" (no other options or arguments).  The commit being
reverted broke this workflow.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoGit 2.5.0-rc3 v2.5.0-rc3
Junio C Hamano [Tue, 21 Jul 2015 21:11:54 +0000 (14:11 -0700)]
Git 2.5.0-rc3

Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoMerge branch 'tf/gitweb-typofix'
Junio C Hamano [Tue, 21 Jul 2015 19:45:27 +0000 (12:45 -0700)]
Merge branch 'tf/gitweb-typofix'

* tf/gitweb-typofix:
  gitweb: fix typo in man page

9 years agoMerge tag 'l10n-2.5.0-rnd2' of git://github.com/git-l10n/git-po
Junio C Hamano [Tue, 21 Jul 2015 17:27:33 +0000 (10:27 -0700)]
Merge tag 'l10n-2.5.0-rnd2' of git://github.com/git-l10n/git-po

l10n-2.5.0-rnd2

* tag 'l10n-2.5.0-rnd2' of git://github.com/git-l10n/git-po:
  l10n: ca.po: update translation
  l10n: de.po: translate 9 new messages
  l10n: Updated Bulgarian translation of git (2359t,0f,0u)
  l10n: zh_CN: for git v2.5.0 l10n round 2
  l10n: sv.po: Update Swedish translation (2359t0f0u)
  l10n: fr v2.5.0 round 2 (2359t)
  l10n: ru.po: update Russian translation
  l10n: Updated Vietnamese translation (2359t)
  l10n: git.pot: v2.5.0 round 2 (9 new, 5 removed)

9 years agol10n: ca.po: update translation
Alex Henrie [Mon, 20 Jul 2015 17:54:40 +0000 (11:54 -0600)]
l10n: ca.po: update translation

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
9 years agoMerge branch 'jk/still-interesting'
Junio C Hamano [Fri, 17 Jul 2015 17:44:56 +0000 (10:44 -0700)]
Merge branch 'jk/still-interesting'

Code clean-up.

* jk/still-interesting:
  revision.c: remove unneeded check for NULL

9 years agoMerge branch 'es/worktree-add'
Junio C Hamano [Fri, 17 Jul 2015 17:44:54 +0000 (10:44 -0700)]
Merge branch 'es/worktree-add'

Update to the "linked checkout" in 2.5.0-rc1.

Instead of "checkout --to" that does not do what "checkout"
normally does, move the functionality to "git worktree add".

As this makes the end-user experience of the "worktree add" more or
less complete, I am tempted to say we should cook the other topic
that removes the internal "new-worktree-mode" hack from "checkout"
a bit longer in 'next', and release 2.5 final without that one.

* es/worktree-add:
  Documentation/git: fix stale "MULTIPLE CHECKOUT MODE" reference
  worktree: caution that this is still experimental
  Documentation/git-worktree: fix stale "git checkout --to" references

9 years agoDocumentation/git: fix stale "MULTIPLE CHECKOUT MODE" reference
Eric Sunshine [Fri, 17 Jul 2015 00:17:02 +0000 (20:17 -0400)]
Documentation/git: fix stale "MULTIPLE CHECKOUT MODE" reference

This should have been changed by 93a3649 (Documentation: move linked
worktree description from checkout to worktree, 2015-07-06).

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoworktree: caution that this is still experimental
Junio C Hamano [Thu, 16 Jul 2015 22:59:48 +0000 (15:59 -0700)]
worktree: caution that this is still experimental

Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoDocumentation/git-worktree: fix stale "git checkout --to" references
Eric Sunshine [Thu, 16 Jul 2015 22:09:43 +0000 (18:09 -0400)]
Documentation/git-worktree: fix stale "git checkout --to" references

These should have been changed to "git worktree add" by fc56361
(worktree: introduce "add" command, 2015-07-06.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoMerge branch 'master' of https://github.com/ralfth/git-po-de
Jiang Xin [Wed, 15 Jul 2015 23:44:43 +0000 (07:44 +0800)]
Merge branch 'master' of https://github.com/ralfth/git-po-de

* 'master' of https://github.com/ralfth/git-po-de:
  l10n: de.po: translate 9 new messages

9 years agoSync with 2.4.6
Junio C Hamano [Wed, 15 Jul 2015 19:32:37 +0000 (12:32 -0700)]
Sync with 2.4.6

9 years agoGit 2.4.6 v2.4.6
Junio C Hamano [Wed, 15 Jul 2015 18:45:42 +0000 (11:45 -0700)]
Git 2.4.6

Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoMerge branch 'jc/diff-ws-error-highlight'
Junio C Hamano [Wed, 15 Jul 2015 19:30:14 +0000 (12:30 -0700)]
Merge branch 'jc/diff-ws-error-highlight'

A hotfix to a new feature in 2.5.0-rc.

* jc/diff-ws-error-highlight:
  diff: parse ws-error-highlight option more strictly

9 years agoMerge branch 'mm/describe-doc' into maint
Junio C Hamano [Wed, 15 Jul 2015 18:41:26 +0000 (11:41 -0700)]
Merge branch 'mm/describe-doc' into maint

Docfix.

* mm/describe-doc:
  Documentation/describe: improve one-line summary

9 years agoMerge branch 'jc/prompt-document-ps1-state-separator' into maint
Junio C Hamano [Wed, 15 Jul 2015 18:41:26 +0000 (11:41 -0700)]
Merge branch 'jc/prompt-document-ps1-state-separator' into maint

Docfix.

* jc/prompt-document-ps1-state-separator:
  git-prompt.sh: document GIT_PS1_STATESEPARATOR

9 years agoMerge branch 'es/osx-header-pollutes-mask-macro' into maint
Junio C Hamano [Wed, 15 Jul 2015 18:41:24 +0000 (11:41 -0700)]
Merge branch 'es/osx-header-pollutes-mask-macro' into maint

* es/osx-header-pollutes-mask-macro:
  ewah: use less generic macro name
  ewah/bitmap: silence warning about MASK macro redefinition

9 years agoMerge branch 'es/utf8-stupid-compiler-workaround' into maint
Junio C Hamano [Wed, 15 Jul 2015 18:41:23 +0000 (11:41 -0700)]
Merge branch 'es/utf8-stupid-compiler-workaround' into maint

A compilation workaround.

* es/utf8-stupid-compiler-workaround:
  utf8: NO_ICONV: silence uninitialized variable warning

9 years agoMerge branch 'fk/doc-format-patch-vn' into maint
Junio C Hamano [Wed, 15 Jul 2015 18:41:22 +0000 (11:41 -0700)]
Merge branch 'fk/doc-format-patch-vn' into maint

Docfix.

* fk/doc-format-patch-vn:
  doc: format-patch: fix typo

9 years agoMerge branch 'pt/t0302-needs-sanity' into maint
Junio C Hamano [Wed, 15 Jul 2015 18:41:21 +0000 (11:41 -0700)]
Merge branch 'pt/t0302-needs-sanity' into maint

* pt/t0302-needs-sanity:
  t0302: "unreadable" test needs SANITY prereq

9 years agoMerge branch 'me/fetch-into-shallow-safety' into maint
Junio C Hamano [Wed, 15 Jul 2015 18:41:20 +0000 (11:41 -0700)]
Merge branch 'me/fetch-into-shallow-safety' into maint

"git fetch --depth=<depth>" and "git clone --depth=<depth>" issued
a shallow transfer request even to an upload-pack that does not
support the capability.

* me/fetch-into-shallow-safety:
  fetch-pack: check for shallow if depth given

9 years agoMerge branch 'mh/fsck-reflog-entries' into maint
Junio C Hamano [Wed, 15 Jul 2015 18:41:19 +0000 (11:41 -0700)]
Merge branch 'mh/fsck-reflog-entries' into maint

"git fsck" used to ignore missing or invalid objects recorded in reflog.

* mh/fsck-reflog-entries:
  fsck: report errors if reflog entries point at invalid objects
  fsck_handle_reflog_sha1(): new function

9 years agoMerge branch 'af/tcsh-completion-noclobber' into maint
Junio C Hamano [Wed, 15 Jul 2015 18:41:18 +0000 (11:41 -0700)]
Merge branch 'af/tcsh-completion-noclobber' into maint

The tcsh completion writes a bash scriptlet but that would have
failed for users with noclobber set.

* af/tcsh-completion-noclobber:
  git-completion.tcsh: fix redirect with noclobber

9 years agoMerge branch 'pa/auto-gc-mac-osx' into maint
Junio C Hamano [Wed, 15 Jul 2015 18:41:17 +0000 (11:41 -0700)]
Merge branch 'pa/auto-gc-mac-osx' into maint

Recent Mac OS X updates breaks the logic to detect that the machine
is on the AC power in the sample pre-auto-gc script.

* pa/auto-gc-mac-osx:
  hooks/pre-auto-gc: adjust power checking for newer OS X

9 years agoMerge branch 'jc/do-not-feed-tags-to-clear-commit-marks' into maint
Junio C Hamano [Wed, 15 Jul 2015 18:41:16 +0000 (11:41 -0700)]
Merge branch 'jc/do-not-feed-tags-to-clear-commit-marks' into maint

"git format-patch --ignore-if-upstream A..B" did not like to be fed
tags as boundary commits.

* jc/do-not-feed-tags-to-clear-commit-marks:
  format-patch: do not feed tags to clear_commit_marks()

9 years agol10n: de.po: translate 9 new messages
Ralf Thielow [Tue, 14 Jul 2015 17:41:07 +0000 (19:41 +0200)]
l10n: de.po: translate 9 new messages

Translate 9 new messages came from git.pot update in a4156d2
(l10n: git.pot: v2.5.0 round 2 (9 new, 5 removed)).

Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
Acked-by: Phillip Sz <phillip.szelat@gmail.com>
9 years agol10n: Updated Bulgarian translation of git (2359t,0f,0u)
Alexander Shopov [Tue, 14 Jul 2015 16:09:55 +0000 (19:09 +0300)]
l10n: Updated Bulgarian translation of git (2359t,0f,0u)

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
9 years agol10n: zh_CN: for git v2.5.0 l10n round 2
Jiang Xin [Mon, 13 Jul 2015 23:33:09 +0000 (07:33 +0800)]
l10n: zh_CN: for git v2.5.0 l10n round 2

Update 9 translations (2359t0f0u) for git v2.5.0-rc2.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
9 years agol10n: sv.po: Update Swedish translation (2359t0f0u)
Peter Krefting [Wed, 15 Jul 2015 11:54:11 +0000 (12:54 +0100)]
l10n: sv.po: Update Swedish translation (2359t0f0u)

Signed-off-by: Peter Krefting <peter@softwolves.pp.se>
9 years agoMerge branch 'fr_v2.5.0-round2' of git://github.com/jnavila/git
Jiang Xin [Tue, 14 Jul 2015 23:06:49 +0000 (07:06 +0800)]
Merge branch 'fr_v2.5.0-round2' of git://github.com/jnavila/git

* 'fr_v2.5.0-round2' of git://github.com/jnavila/git:
  l10n: fr v2.5.0 round 2 (2359t)

9 years agol10n: fr v2.5.0 round 2 (2359t)
Jean-Noel Avila [Tue, 14 Jul 2015 10:25:06 +0000 (12:25 +0200)]
l10n: fr v2.5.0 round 2 (2359t)

Signed-off-by: Jean-Noel Avila <jn.avila@free.fr>
9 years agoMerge branch 'russian-l10n' of https://github.com/DJm00n/git-po-ru
Jiang Xin [Tue, 14 Jul 2015 14:30:12 +0000 (22:30 +0800)]
Merge branch 'russian-l10n' of https://github.com/DJm00n/git-po-ru

* 'russian-l10n' of https://github.com/DJm00n/git-po-ru:
  l10n: ru.po: update Russian translation

9 years agol10n: ru.po: update Russian translation
Dimitriy Ryazantcev [Tue, 14 Jul 2015 13:34:00 +0000 (16:34 +0300)]
l10n: ru.po: update Russian translation

Signed-off-by: Dimitriy Ryazantcev <dimitriy.ryazantcev@gmail.com>
9 years agol10n: Updated Vietnamese translation (2359t)
Tran Ngoc Quan [Tue, 14 Jul 2015 00:30:51 +0000 (07:30 +0700)]
l10n: Updated Vietnamese translation (2359t)

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
9 years agol10n: git.pot: v2.5.0 round 2 (9 new, 5 removed)
Jiang Xin [Mon, 13 Jul 2015 23:20:08 +0000 (07:20 +0800)]
l10n: git.pot: v2.5.0 round 2 (9 new, 5 removed)

Generate po/git.pot from v2.5.0-rc2 for git v2.5.0 l10n round 2.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
9 years agoMerge tag 'l10n-2.5.0-rnd1' of git://github.com/git-l10n/git-po
Junio C Hamano [Mon, 13 Jul 2015 22:37:24 +0000 (15:37 -0700)]
Merge tag 'l10n-2.5.0-rnd1' of git://github.com/git-l10n/git-po

l10n-2.5.0-rnd1

* tag 'l10n-2.5.0-rnd1' of git://github.com/git-l10n/git-po:
  l10n: de.po: translate 65 new messages
  l10n: de.po: translate "index" as "Index"
  l10n: de.po: fix translation of "head nodes"
  l10n: zh_CN: for git v2.5.0 l10n round 1
  l10n: ca.po: update translation
  l10n: fr.po v2.5.0-rc0 (2355t)
  l10n: Updated Bulgarian translation of git (2355t,0f,0u)
  l10n: sv.po: Update Swedish translation (2355t0f0u)
  l10n: Updated Vietnamese translation (2355t)
  l10n: git.pot: v2.5.0 round 1 (65 new, 15 removed)

9 years agoGit 2.5.0-rc2 v2.5.0-rc2
Junio C Hamano [Mon, 13 Jul 2015 21:03:44 +0000 (14:03 -0700)]
Git 2.5.0-rc2

Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoMerge branch 'es/worktree-add'
Junio C Hamano [Mon, 13 Jul 2015 21:02:18 +0000 (14:02 -0700)]
Merge branch 'es/worktree-add'

Update to the "linked checkout" in 2.5.0-rc1.

Instead of "checkout --to" that does not do what "checkout"
normally does, move the functionality to "git worktree add".

* es/worktree-add: (24 commits)
  Revert "checkout: retire --ignore-other-worktrees in favor of --force"
  checkout: retire --ignore-other-worktrees in favor of --force
  worktree: add: auto-vivify new branch when <branch> is omitted
  worktree: add: make -b/-B default to HEAD when <branch> is omitted
  worktree: extract basename computation to new function
  checkout: require worktree unconditionally
  checkout: retire --to option
  tests: worktree: retrofit "checkout --to" tests for "worktree add"
  worktree: add -b/-B options
  worktree: add --detach option
  worktree: add --force option
  worktree: introduce "add" command
  checkout: drop 'checkout_opts' dependency from prepare_linked_checkout
  checkout: make --to unconditionally verbose
  checkout: prepare_linked_checkout: drop now-unused 'new' argument
  checkout: relocate --to's "no branch specified" check
  checkout: fix bug with --to and relative HEAD
  Documentation/git-worktree: add EXAMPLES section
  Documentation/git-worktree: add high-level 'lock' overview
  Documentation/git-worktree: split technical info from general description
  ...

9 years agoMerge branch 'nd/multiple-work-trees'
Junio C Hamano [Mon, 13 Jul 2015 21:02:02 +0000 (14:02 -0700)]
Merge branch 'nd/multiple-work-trees'

"git checkout [<tree-ish>] <paths>" spent unnecessary cycles
checking if the current branch was checked out elsewhere, when we
know we are not switching the branches ourselves.

* nd/multiple-work-trees:
  worktree: new place for "git prune --worktrees"
  checkout: don't check worktrees when not necessary

9 years agoMerge branch 'ss/clone-guess-dir-name-simplify'
Junio C Hamano [Mon, 13 Jul 2015 21:00:28 +0000 (14:00 -0700)]
Merge branch 'ss/clone-guess-dir-name-simplify'

Code simplification.

* ss/clone-guess-dir-name-simplify:
  clone: simplify string handling in guess_dir_name()

9 years agoMerge branch 'kb/config-unmap-before-renaming'
Junio C Hamano [Mon, 13 Jul 2015 21:00:27 +0000 (14:00 -0700)]
Merge branch 'kb/config-unmap-before-renaming'

"git config" failed to update the configuration file when the
underlying filesystem is incapable of renaming a file that is still
open.

* kb/config-unmap-before-renaming:
  config.c: fix writing config files on Windows network shares

9 years agoMerge branch 'mh/strbuf-read-file-returns-ssize-t'
Junio C Hamano [Mon, 13 Jul 2015 21:00:27 +0000 (14:00 -0700)]
Merge branch 'mh/strbuf-read-file-returns-ssize-t'

Avoid possible ssize_t to int truncation.

* mh/strbuf-read-file-returns-ssize-t:
  strbuf: strbuf_read_file() should return ssize_t

9 years agoMerge branch 'jc/unexport-git-pager-in-use-in-pager'
Junio C Hamano [Mon, 13 Jul 2015 21:00:26 +0000 (14:00 -0700)]
Merge branch 'jc/unexport-git-pager-in-use-in-pager'

When you say "!<ENTER>" while running say "git log", you'd confuse
yourself in the resulting shell, that may look as if you took
control back to the original shell you spawned "git log" from but
that isn't what is happening.  To that new shell, we leaked
GIT_PAGER_IN_USE environment variable that was meant as a local
communication between the original "Git" and subprocesses that was
spawned by it after we launched the pager, which caused many
"interesting" things to happen, e.g. "git diff | cat" still paints
its output in color by default.

Stop leaking that environment variable to the pager's half of the
fork; we only need it on "Git" side when we spawn the pager.

* jc/unexport-git-pager-in-use-in-pager:
  pager: do not leak "GIT_PAGER_IN_USE" to the pager

9 years agoMerge branch 'kb/use-nsec-doc'
Junio C Hamano [Mon, 13 Jul 2015 21:00:26 +0000 (14:00 -0700)]
Merge branch 'kb/use-nsec-doc'

Clarify in the Makefile a guideline to decide use of USE_NSEC.

* kb/use-nsec-doc:
  Makefile / racy-git.txt: clarify USE_NSEC prerequisites

9 years agoMerge branch 'js/rebase-i-clean-up-upon-continue-to-skip'
Junio C Hamano [Mon, 13 Jul 2015 21:00:25 +0000 (14:00 -0700)]
Merge branch 'js/rebase-i-clean-up-upon-continue-to-skip'

Abandoning an already applied change in "git rebase -i" with
"--continue" left CHERRY_PICK_HEAD and confused later steps.

* js/rebase-i-clean-up-upon-continue-to-skip:
  rebase -i: do not leave a CHERRY_PICK_HEAD file behind
  t3404: demonstrate CHERRY_PICK_HEAD bug

9 years agoMerge branch 'et/http-proxyauth'
Junio C Hamano [Mon, 13 Jul 2015 21:00:24 +0000 (14:00 -0700)]
Merge branch 'et/http-proxyauth'

We used to ask libCURL to use the most secure authentication method
available when talking to an HTTP proxy only when we were told to
talk to one via configuration variables.  We now ask libCURL to
always use the most secure authentication method, because the user
can tell libCURL to use an HTTP proxy via an environment variable
without using configuration variables.

* et/http-proxyauth:
  http: always use any proxy auth method available

9 years agoMerge branch 'jc/fsck-retire-require-eoh'
Junio C Hamano [Mon, 13 Jul 2015 21:00:23 +0000 (14:00 -0700)]
Merge branch 'jc/fsck-retire-require-eoh'

A fix to a minor regression to "git fsck" in v2.2 era that started
complaining about a body-less tag object when it lacks a separator
empty line after its header to separate it with a non-existent body.

* jc/fsck-retire-require-eoh:
  fsck: it is OK for a tag and a commit to lack the body

9 years agodiff: parse ws-error-highlight option more strictly
René Scharfe [Sat, 11 Jul 2015 12:58:21 +0000 (14:58 +0200)]
diff: parse ws-error-highlight option more strictly

Check if a matched token is followed by a delimiter before advancing the
pointer arg.  This avoids accepting composite words like "allnew" or
"defaultcontext" and misparsing them as "new" or "context".

Signed-off-by: Rene Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoRevert "checkout: retire --ignore-other-worktrees in favor of --force"
Junio C Hamano [Sun, 12 Jul 2015 16:38:21 +0000 (09:38 -0700)]
Revert "checkout: retire --ignore-other-worktrees in favor of --force"

This reverts commit 0d1a1517835a10818f2d40d8780a268dbb5e20ce.

When trying to switch to a different branch, that happens to be
checked out in another working tree, the user shouldn't have to
give up the other safety measures (like protecting the local changes
that overlap the difference between the branches) while defeating
the "no two checkouts of the same branch" safety.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoThe last minute bits of fixes
Junio C Hamano [Fri, 10 Jul 2015 21:29:00 +0000 (14:29 -0700)]
The last minute bits of fixes

Signed-off-by: Junio C Hamano <gitster@pobox.com>
9 years agoMerge branch 'cb/rebase-am-exit-code'
Junio C Hamano [Fri, 10 Jul 2015 21:26:16 +0000 (14:26 -0700)]
Merge branch 'cb/rebase-am-exit-code'

"git rebase" did not exit with failure when format-patch it invoked
failed for whatever reason.

* cb/rebase-am-exit-code:
  rebase: return non-zero error code if format-patch fails

9 years agoMerge branch 'jk/fix-refresh-utime'
Junio C Hamano [Fri, 10 Jul 2015 21:26:14 +0000 (14:26 -0700)]
Merge branch 'jk/fix-refresh-utime'

Fix a small bug in our use of umask() return value.

* jk/fix-refresh-utime:
  check_and_freshen_file: fix reversed success-check

9 years agoMerge branch 'mm/branch-doc-updates'
Junio C Hamano [Fri, 10 Jul 2015 21:26:13 +0000 (14:26 -0700)]
Merge branch 'mm/branch-doc-updates'

* mm/branch-doc-updates:
  Documentation/branch: document -M and -D in terms of --force
  Documentation/branch: document -d --force and -m --force

9 years agoMerge branch 'ls/hint-rev-list-count'
Junio C Hamano [Fri, 10 Jul 2015 21:26:12 +0000 (14:26 -0700)]
Merge branch 'ls/hint-rev-list-count'

* ls/hint-rev-list-count:
  rev-list: add --count to usage guide

9 years agoMerge branch 'jk/rev-list-no-bitmap-while-pruning'
Junio C Hamano [Fri, 10 Jul 2015 21:26:12 +0000 (14:26 -0700)]
Merge branch 'jk/rev-list-no-bitmap-while-pruning'

A minor bugfix when pack bitmap is used with "rev-list --count".

* jk/rev-list-no-bitmap-while-pruning:
  rev-list: disable --use-bitmap-index when pruning commits

9 years agoMerge branch 'cb/subtree-tests-update'
Junio C Hamano [Fri, 10 Jul 2015 21:17:56 +0000 (14:17 -0700)]
Merge branch 'cb/subtree-tests-update'

Tests update in contrib/subtree.

* cb/subtree-tests-update:
  contrib/subtree: small tidy-up to test
  contrib/subtree: fix broken &&-chains and revealed test error
  contrib/subtree: use tabs consitently for indentation in tests

9 years agoMerge branch 'rh/test-color-avoid-terminfo-in-original-home'
Junio C Hamano [Fri, 10 Jul 2015 21:17:55 +0000 (14:17 -0700)]
Merge branch 'rh/test-color-avoid-terminfo-in-original-home'

An ancient test framework enhancement to allow color was not
entirely correct; this makes it work even when tput needs to read
from the ~/.terminfo under the user's real HOME directory.

* rh/test-color-avoid-terminfo-in-original-home:
  test-lib.sh: fix color support when tput needs ~/.terminfo
  Revert "test-lib.sh: do tests for color support after changing HOME"

9 years agoMerge branch 'sb/p5310-and-chain'
Junio C Hamano [Fri, 10 Jul 2015 21:17:54 +0000 (14:17 -0700)]
Merge branch 'sb/p5310-and-chain'

Code clean-up.

* sb/p5310-and-chain:
  p5310: Fix broken && chain in performance test

9 years agoMerge branch 'tb/checkout-doc'
Junio C Hamano [Fri, 10 Jul 2015 21:17:54 +0000 (14:17 -0700)]
Merge branch 'tb/checkout-doc'

Doc update.

* tb/checkout-doc:
  git-checkout.txt: document "git checkout <pathspec>" better

9 years agoMerge branch 'jk/pretty-encoding-doc'
Junio C Hamano [Fri, 10 Jul 2015 21:17:53 +0000 (14:17 -0700)]
Merge branch 'jk/pretty-encoding-doc'

Doc update.

* jk/pretty-encoding-doc:
  docs: clarify that --encoding can produce invalid sequences

9 years agoMerge branch 'nd/dwim-wildcards-as-pathspecs'
Junio C Hamano [Fri, 10 Jul 2015 21:17:52 +0000 (14:17 -0700)]
Merge branch 'nd/dwim-wildcards-as-pathspecs'

Test updates to a topic already in 2.5-rc.

* nd/dwim-wildcards-as-pathspecs:
  Add tests for wildcard "path vs ref" disambiguation

9 years agoMerge branch 'jk/maint-for-each-packed-object'
Junio C Hamano [Thu, 9 Jul 2015 21:31:43 +0000 (14:31 -0700)]
Merge branch 'jk/maint-for-each-packed-object'

The for_each_packed_object() API function did not iterate over
objects in a packfile that hasn't been used yet.

* jk/maint-for-each-packed-object:
  for_each_packed_object: automatically open pack index

9 years agoMerge branch 'jc/fix-alloc-sortbuf-in-index-pack'
Junio C Hamano [Thu, 9 Jul 2015 21:31:42 +0000 (14:31 -0700)]
Merge branch 'jc/fix-alloc-sortbuf-in-index-pack'

A hotfix for what is in 2.5-rc but not in 2.4.

* jc/fix-alloc-sortbuf-in-index-pack:
  index-pack: fix allocation of sorted_by_pos array

9 years agoclone: simplify string handling in guess_dir_name()
Sebastian Schuberth [Thu, 9 Jul 2015 18:24:08 +0000 (18:24 +0000)]
clone: simplify string handling in guess_dir_name()

Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>