Commits on Jan 2, 2017
  1. l10n: zh_CN: review for git v2.11.0 l10n

    Signed-off-by: Ray Chen <>
    Signed-off-by: Jiang Xin <>
    oldsharp committed with jiangxin Dec 28, 2016
  2. Merge branch 'master' of

    * 'master' of
      l10n: New Catalan translation maintainer
    jiangxin committed Jan 2, 2017
Commits on Dec 26, 2016
  1. l10n: New Catalan translation maintainer

    Signed-off-by: Jordi Mas <>
    jordimas committed Dec 24, 2016
Commits on Dec 21, 2016
  1. Third batch for 2.12

    Signed-off-by: Junio C Hamano <>
    gitster committed Dec 21, 2016
  2. Merge branch 'jt/mailinfo-fold-in-body-headers'

    Fix for NDEBUG builds.
    * jt/mailinfo-fold-in-body-headers:
      mailinfo.c: move side-effects outside of assert
    gitster committed Dec 21, 2016
  3. Merge branch 'jk/index-pack-wo-repo-from-stdin'

    "git index-pack --stdin" needs an access to an existing repository,
    but "git index-pack file.pack" to generate an .idx file that
    corresponds to a packfile does not.
    * jk/index-pack-wo-repo-from-stdin:
      index-pack: skip collision check when not in repository
      t: use nongit() function where applicable
      index-pack: complain when --stdin is used outside of a repo
      t5000: extract nongit function to
    gitster committed Dec 21, 2016
  4. Merge branch 'jk/parseopt-usage-msg-opt'

    The function usage_msg_opt() has been updated to say "fatal:"
    before the custom message programs give, when they want to die
    with a message about wrong command line options followed by the
    standard usage string.
    * jk/parseopt-usage-msg-opt:
      parse-options: print "fatal:" before usage_msg_opt()
    gitster committed Dec 21, 2016
  5. Merge branch 'jk/quote-env-path-list-component'

    A recent update to receive-pack to make it easier to drop garbage
    objects made it clear that GIT_ALTERNATE_OBJECT_DIRECTORIES cannot
    have a pathname with a colon in it (no surprise!), and this in turn
    made it impossible to push into a repository at such a path.  This
    has been fixed by introducing a quoting mechanism used when
    appending such a path to the colon-separated list.
    * jk/quote-env-path-list-component:
      t5615-alternate-env: double-quotes in file names do not work on Windows
      t5547-push-quarantine: run the path separator test on Windows, too
      tmp-objdir: quote paths we add to alternates
      alternates: accept double-quoted paths
    gitster committed Dec 21, 2016
  6. Merge branch 'vs/submodule-clone-nested-submodules-alternates'

    "git clone --reference $there --recurse-submodules $super" has been
    taught to guess repositories usable as references for submodules of
    $super that are embedded in $there while making a clone of the
    superproject borrow objects from $there; extend the mechanism to
    also allow submodules of these submodules to borrow repositories
    embedded in these clones of the submodules embedded in the clone of
    the superproject.
    * vs/submodule-clone-nested-submodules-alternates:
      submodule--helper: set alternateLocation for cloned submodules
    gitster committed Dec 21, 2016
  7. Merge branch 'nd/shallow-fixup'

    Code cleanup in shallow boundary computation.
    * nd/shallow-fixup:
      shallow.c: remove useless code
      shallow.c: bit manipulation tweaks
      shallow.c: avoid theoretical pointer wrap-around
      shallow.c: make paint_alloc slightly more robust
      shallow.c: stop abusing COMMIT_SLAB_SIZE for paint_info's memory pools
      shallow.c: rename fields in paint_info to better express their purposes
    gitster committed Dec 21, 2016
  8. Merge branch 'sb/sequencer-abort-safety'

    Unlike "git am --abort", "git cherry-pick --abort" moved HEAD back
    to where cherry-pick started while picking multiple changes, when
    the cherry-pick stopped to ask for help from the user, and the user
    did "git reset --hard" to a different commit in order to re-attempt
    the operation.
    * sb/sequencer-abort-safety:
      Revert "sequencer: remove useless get_dir() function"
      sequencer: remove useless get_dir() function
      sequencer: make sequencer abort safer
      t3510: test that cherry-pick --abort does not unsafely change HEAD
      am: change safe_to_abort()'s not rewinding error into a warning
      am: fix filename in safe_to_abort() error message
    gitster committed Dec 21, 2016
  9. t5615-alternate-env: double-quotes in file names do not work on Windows

    Protect a recently added test case with !MINGW.
    Signed-off-by: Johannes Sixt <>
    Signed-off-by: Junio C Hamano <>
    j6t committed with gitster Dec 21, 2016
Commits on Dec 20, 2016
  1. mailinfo.c: move side-effects outside of assert

    Since 6b4b013 (mailinfo: handle in-body header continuations,
    2016-09-20, v2.11.0) mailinfo.c has contained new code with an
    assert of the form:
    The function in question, check_header, has side effects.  This
    means that when NDEBUG is defined during a release build the
    function call is omitted entirely, the side effects do not
    take place and tests (fortunately) start failing.
    Since the only time that mi->inbody_header_accum is appended to is
    in check_inbody_header, and appending onto a blank
    mi->inbody_header_accum always happens when is_inbody_header is
    true, this guarantees a prefix that causes check_header to always
    return true.
    Therefore replace the assert with an if !check_header + DIE
    combination to reflect this.
    Helped-by: Jonathan Tan <>
    Helped-by: Jeff King <>
    Acked-by: Johannes Schindelin <>
    Signed-off-by: Kyle J. McKay <>
    Signed-off-by: Junio C Hamano <>
    mackyle committed with gitster Dec 19, 2016
Commits on Dec 19, 2016
  1. Second batch for 2.12

    Signed-off-by: Junio C Hamano <>
    gitster committed Dec 19, 2016
  2. Merge branch 'kh/tutorial-grammofix'

    * kh/tutorial-grammofix:
      doc: omit needless "for"
      doc: make the intent of sentence clearer
      doc: add verb in front of command to run
      doc: add articles (grammar)
    gitster committed Dec 19, 2016
  3. Merge branch 'da/mergetool-xxdiff-hotkey'

    The way to specify hotkeys to "xxdiff" that is used by "git
    mergetool" has been modernized to match recent versions of xxdiff.
    * da/mergetool-xxdiff-hotkey:
      mergetools: fix xxdiff hotkeys
    gitster committed Dec 19, 2016
  4. Merge branch 'lr/doc-fix-cet'

    * lr/doc-fix-cet:
      date-formats.txt: Typo fix
    gitster committed Dec 19, 2016
  5. Merge branch 'sb/t3600-cleanup'

    Code cleanup.
    * sb/t3600-cleanup:
      t3600: slightly modernize style
      t3600: remove useless redirect
    gitster committed Dec 19, 2016
  6. Merge branch 'jc/pull-rebase-ff'

    "git pull --rebase", when there is no new commits on our side since
    we forked from the upstream, should be able to fast-forward without
    invoking "git rebase", but it didn't.
    * jc/pull-rebase-ff:
      pull: fast-forward "pull --rebase=true"
    gitster committed Dec 19, 2016
  7. Merge branch 'ld/p4-worktree'

    "git p4" didn't interact with the internal of .git directory
    correctly in the modern "git-worktree"-enabled world.
    * ld/p4-worktree:
      git-p4: support git worktrees
    gitster committed Dec 19, 2016
  8. Merge branch 'jk/make-tags-find-sources-tweak'

    Update the procedure to generate "tags" for developer support.
    * jk/make-tags-find-sources-tweak:
      Makefile: exclude contrib from FIND_SOURCE_FILES
      Makefile: match shell scripts in FIND_SOURCE_FILES
      Makefile: exclude test cruft from FIND_SOURCE_FILES
      Makefile: reformat FIND_SOURCE_FILES
    gitster committed Dec 19, 2016
  9. Merge branch 'js/normalize-path-copy-ceil'

    A pathname that begins with "//" or "\\" on Windows is special but
    path normalization logic was unaware of it.
    * js/normalize-path-copy-ceil:
      normalize_path_copy(): fix pushing to //server/share/dir on Windows
    gitster committed Dec 19, 2016
  10. Merge branch 'bb/unicode-9.0'

    The character width table has been updated to match Unicode 9.0
    * bb/unicode-9.0:
      unicode_width.h: update the width tables to Unicode 9.0 remove the plane filter automatically download newer definition files pin the uniset repo to a known good commit remove an unnecessary subshell level move it into contrib/update-unicode
    gitster committed Dec 19, 2016
  11. Merge branch 'jk/readme-gmane-is-no-more'

    * jk/readme-gmane-is-no-more:
      README: replace gmane link with public-inbox
    gitster committed Dec 19, 2016
  12. Merge branch 'jc/lock-report-on-error'

    Git 2.11 had a minor regression in "merge --ff-only" that competed
    with another process that simultanously attempted to update the
    index. We used to explain what went wrong with an error message,
    but the new code silently failed.  The error message has been
    * jc/lock-report-on-error:
      lockfile: LOCK_REPORT_ON_ERROR
      hold_locked_index(): align error handling with hold_lockfile_for_update()
      wt-status: implement opportunisitc index update correctly
    gitster committed Dec 19, 2016
  13. Merge branch 'jk/xdiff-drop-xdl-fast-hash'

    Retire the "fast hash" that had disastrous performance issues in
    some corner cases.
    * jk/xdiff-drop-xdl-fast-hash:
      xdiff: drop XDL_FAST_HASH
    gitster committed Dec 19, 2016
  14. Merge branch 'nd/rebase-forget'

    "git rebase" learned "--quit" option, which allows a user to
    remove the metadata left by an earlier "git rebase" that was
    manually aborted without using "git rebase --abort".
    * nd/rebase-forget:
      rebase: add --quit to cleanup rebase, leave everything else untouched
    gitster committed Dec 19, 2016
  15. Merge branch 'jk/trailers-placeholder-in-pretty'

    In addition to %(subject), %(body), "log --pretty=format:..."
    learned a new placeholder %(trailers).
    * jk/trailers-placeholder-in-pretty:
      ref-filter: add support to display trailers as part of contents
      pretty: add %(trailers) format for displaying trailers of a commit message
    gitster committed Dec 19, 2016
  16. Merge branch 'ak/commit-only-allow-empty'

    "git commit --allow-empty --only" (no pathspec) with dirty index
    ought to be an acceptable way to create a new commit that does not
    change any paths, but it was forbidden, perhaps because nobody
    needed it so far.
    * ak/commit-only-allow-empty:
      commit: remove 'Clever' message for --only --amend
      commit: make --only --allow-empty work without paths
    gitster committed Dec 19, 2016
  17. Merge branch 'da/difftool-dir-diff-fix'

    "git difftool --dir-diff" had a minor regression when started from
    a subdirectory, which has been fixed.
    * da/difftool-dir-diff-fix:
      difftool: fix dir-diff index creation when in a subdirectory
    gitster committed Dec 19, 2016
  18. Merge branch 'jb/diff-no-index-no-abbrev'

    "git diff --no-index" did not take "--no-abbrev" option.
    * jb/diff-no-index-no-abbrev:
      diff: handle --no-abbrev in no-index case
    gitster committed Dec 19, 2016
  19. Merge branch 'rj/git-version-gen-do-not-force-abbrev'

    A minor build update.
    * rj/git-version-gen-do-not-force-abbrev:
      GIT-VERSION-GEN: do not force abbreviation length used by 'describe'
    gitster committed Dec 19, 2016
  20. Merge branch 'jk/stash-disable-renames-internally'

    When diff.renames configuration is on (and with Git 2.9 and later,
    it is enabled by default, which made it worse), "git stash"
    misbehaved if a file is removed and another file with a very
    similar content is added.
    * jk/stash-disable-renames-internally:
      stash: prefer plumbing over git-diff
    gitster committed Dec 19, 2016
  21. Merge branch 'jk/http-walker-limit-redirect'

    Update the error messages from the dumb-http client when it fails
    to obtain loose objects; we used to give sensible error message
    only upon 404 but we now forbid unexpected redirects that needs to
    be reported with something sensible.
    * jk/http-walker-limit-redirect:
      http-walker: complain about non-404 loose object errors
    gitster committed Dec 19, 2016
  22. Merge branch 'jk/http-walker-limit-redirect-2.9'

    Transport with dumb http can be fooled into following foreign URLs
    that the end user does not intend to, especially with the server
    side redirects and http-alternates mechanism, which can lead to
    security issues.  Tighten the redirection and make it more obvious
    to the end user when it happens.
    * jk/http-walker-limit-redirect-2.9:
      http: treat http-alternates like redirects
      http: make redirects more obvious
      remote-curl: rename shadowed options variable
      http: always update the base URL for redirects
      http: simplify update_url_from_redirect
    gitster committed Dec 19, 2016