Skip to content
Commits on Feb 10, 2016
  1. @gitster

    Sixth batch for the 2.8 cycle

    gitster committed
    Signed-off-by: Junio C Hamano <>
  2. @gitster

    Merge branch 'js/test-lib-windows-emulated-yes'

    gitster committed
    The emulated "yes" command used in our test scripts has been
    tweaked not to spend too much time generating unnecessary output
    that is not used, to help those who test on Windows where it would
    not stop until it fills the pipe buffer due to lack of SIGPIPE.
    * js/test-lib-windows-emulated-yes:
      test-lib: limit the output of the yes utility
  3. @gitster

    Merge branch 'wp/sha1-name-negative-match'

    gitster committed
    A new "<branch>^{/!-<pattern>}" notation can be used to name a
    commit that is reachable from <branch> that does not match the
    given <pattern>.
    * wp/sha1-name-negative-match:
      object name: introduce '^{/!-<negative pattern>}' notation
      test for '!' handling in rev-parse's named commits
  4. @gitster

    Merge branch 'jk/options-cleanup'

    gitster committed
    Various clean-ups to the command line option parsing.
    * jk/options-cleanup:
      apply, ls-files: simplify "-z" parsing
      checkout-index: disallow "--no-stage" option
      checkout-index: handle "--no-index" option
      checkout-index: handle "--no-prefix" option
      checkout-index: simplify "-z" option parsing
      give "nbuf" strbuf a more meaningful name
  5. @gitster

    Merge branch 'aw/push-force-with-lease-reporting'

    gitster committed
    "git push --force-with-lease" has been taught to report if the push
    needed to force (or fast-forwarded).
    * aw/push-force-with-lease-reporting:
      push: fix ref status reporting for --force-with-lease
  6. @gitster

    Merge branch 'ls/clean-smudge-override-in-config'

    gitster committed
    Clean/smudge filters defined in a configuration file of lower
    precedence can now be overridden to be a pass-through no-op by
    setting the variable to an empty string.
    * ls/clean-smudge-override-in-config:
      convert: treat an empty string for clean/smudge filters as "cat"
  7. @gitster

    Merge branch 'ew/connect-verbose'

    gitster committed
    There were a few "now I am doing this thing" progress messages in
    the TCP connection code that can be triggered by setting a verbose
    option internally in the code, but "git fetch -v" and friends never
    passed the verbose option down to that codepath.
    There was a brief discussion about the impact on the end-user
    experience by not limiting this to "fetch -v -v", but I think the
    conclusion is that this is OK to enable with a single "-v" as it is
    not too noisy.
    * ew/connect-verbose:
      pass transport verbosity down to git_connect
  8. @gitster

    Merge branch 'cc/untracked'

    gitster committed
    Update the untracked cache subsystem and change its primary UI from
    "git update-index" to "git config".
    * cc/untracked:
      t7063: add tests for core.untrackedCache
      test-dump-untracked-cache: don't modify the untracked cache
      config: add core.untrackedCache
      dir: simplify untracked cache "ident" field
      dir: add remove_untracked_cache()
      dir: add {new,add}_untracked_cache()
      update-index: move 'uc' var declaration
      update-index: add untracked cache notifications
      update-index: add --test-untracked-cache
      update-index: use enum for untracked cache options
      dir: free untracked cache when removing it
  9. @gitster

    Merge branch 'js/xmerge-marker-eol'

    gitster committed
    The low-level merge machinery has been taught to use CRLF line
    termination when inserting conflict markers to merged contents that
    are themselves CRLF line-terminated.
    * js/xmerge-marker-eol:
      merge-file: ensure that conflict sections match eol style
      merge-file: let conflict markers match end-of-line style of the context
  10. @gitster

    Merge branch 'nd/do-not-move-worktree-manually'

    gitster committed
    "git worktree" had a broken code that attempted to auto-fix
    possible inconsistency that results from end-users moving a
    worktree to different places without telling Git (the original
    repository needs to maintain backpointers to its worktrees, but
    "mv" run by end-users who are not familiar with that fact will
    obviously not adjust them), which actually made things worse
    when triggered.
    * nd/do-not-move-worktree-manually:
      worktree: stop supporting moving worktrees manually
      worktree.c: fix indentation
Commits on Feb 5, 2016
  1. @gitster

    Sync with 2.7.1

    gitster committed
  2. @gitster

    Git 2.7.1

    gitster committed
    Signed-off-by: Junio C Hamano <>
  3. @gitster

    Merge branch 'lv/add-doc-working-tree' into maint

    gitster committed
    * lv/add-doc-working-tree:
      git-add doc: do not say working directory when you mean working tree
  4. @gitster

    Merge branch 'ss/clone-depth-single-doc' into maint

    gitster committed
    Documentation for "git fetch --depth" has been updated for clarity.
    * ss/clone-depth-single-doc:
      docs: clarify that --depth for git-fetch works with newly initialized repos
      docs: say "commits" in the --depth option wording for git-clone
      docs: clarify that passing --depth to git-clone implies --single-branch
  5. @gitster

    Merge branch 'sg/t6050-failing-editor-test-fix' into maint

    gitster committed
    * sg/t6050-failing-editor-test-fix:
      t6050-replace: make failing editor test more robust
  6. @gitster

    Merge branch 'ew/for-each-ref-doc' into maint

    gitster committed
    * ew/for-each-ref-doc:
      for-each-ref: document `creatordate` and `creator` fields
  7. @gitster

    Merge branch 'ss/user-manual' into maint

    gitster committed
    Drop a few old "todo" items by deciding that the change one of them
    suggests is not such a good idea, and doing the change the other
    one suggested to do.
    * ss/user-manual:
      user-manual: add addition gitweb information
      user-manual: add section documenting shallow clones
      glossary: define the term shallow clone
      user-manual: remove temporary branch entry from todo list
  8. @gitster

    Merge branch 'jk/ref-cache-non-repository-optim' into maint

    gitster committed
    The underlying machinery used by "ls-files -o" and other commands
    have been taught not to create empty submodule ref cache for a
    directory that is not a submodule.  This removes a ton of wasted
    CPU cycles.
    * jk/ref-cache-non-repository-optim:
      resolve_gitlink_ref: ignore non-repository paths
      clean: make is_git_repository a public function
  9. @gitster

    Merge branch 'js/dirname-basename' into maint

    gitster committed
    dirname() emulation has been added, as Msys2 lacks it.
    * js/dirname-basename:
      mingw: avoid linking to the C library's isalpha()
      t0060: loosen overly strict expectations
      t0060: verify that basename() and dirname() work as expected
      compat/basename.c: provide a dirname() compatibility function
      compat/basename: make basename() conform to POSIX
      Refactor skipping DOS drive prefixes
  10. @gitster

    Merge branch 'tb/complete-word-diff-regex' into maint

    gitster committed
    * tb/complete-word-diff-regex:
      completion: complete "diff --word-diff-regex="
  11. @gitster

    Merge branch 'pw/completion-stash' into maint

    gitster committed
    * pw/completion-stash:
      completion: update completion arguments for stash
  12. @gitster

    Merge branch 'pw/completion-show-branch' into maint

    gitster committed
    * pw/completion-show-branch:
      completion: complete show-branch "--date-order"
  13. @gitster

    Merge branch 'jk/completion-rebase' into maint

    gitster committed
    * jk/completion-rebase:
      completion: add missing git-rebase options
  14. @gitster

    Merge branch 'nd/diff-with-path-params' into maint

    gitster committed
    A few options of "git diff" did not work well when the command was
    run from a subdirectory.
    * nd/diff-with-path-params:
      diff: make -O and --output work in subdirectory
      diff-no-index: do not take a redundant prefix argument
  15. @gitster

    Merge branch 'dw/subtree-split-do-not-drop-merge' into maint

    gitster committed
    The "split" subcommand of "git subtree" (in contrib/) incorrectly
    skipped merges when it shouldn't, which was corrected.
    * dw/subtree-split-do-not-drop-merge:
      contrib/subtree: fix "subtree split" skipped-merge bug
  16. @gitster

    Merge branch 'ew/svn-1.9.0-auth' into maint

    gitster committed
    * ew/svn-1.9.0-auth:
      git-svn: fix auth parameter handling on SVN 1.9.0+
  17. @gitster

    Merge branch 'jk/list-tag-2.7-regression' into maint

    gitster committed
    "git tag" started listing a tag "foo" as "tags/foo" when a branch
    named "foo" exists in the same repository; remove this unnecessary
    disambiguation, which is a regression introduced in v2.7.0.
    * jk/list-tag-2.7-regression:
      tag: do not show ambiguous tag names as "tags/foo"
      t6300: use test_atom for some un-modern tests
  18. @gitster

    Merge branch 'jk/sanity' into maint

    gitster committed
    The description for SANITY prerequisite the test suite uses has
    been clarified both in the comment and in the implementation.
    * jk/sanity:
      test-lib: clarify and tighten SANITY
  19. @gitster

    Merge branch 'jk/filter-branch-no-index' into maint

    gitster committed
    A recent optimization to filter-branch in v2.7.0 introduced a
    regression when --prune-empty filter is used, which has been
    * jk/filter-branch-no-index:
      filter-branch: resolve $commit^{tree} in no-index case
  20. @gitster

    Merge branch 'js/close-packs-before-gc' into maint

    gitster committed
    Many codepaths that run "gc --auto" before exiting kept packfiles
    mapped and left the file descriptors to them open, which was not
    friendly to systems that cannot remove files that are open.  They
    now close the packs before doing so.
    * js/close-packs-before-gc:
      receive-pack: release pack files before garbage-collecting
      merge: release pack files before garbage-collecting
      am: release pack files before garbage-collecting
      fetch: release pack files before garbage-collecting
  21. @gitster

    Merge branch 'jk/ok-to-fail-gc-auto-in-rebase' into maint

    gitster committed
    "git rebase", unlike all other callers of "gc --auto", did not
    ignore the exit code from "gc --auto".
    * jk/ok-to-fail-gc-auto-in-rebase:
      rebase: ignore failures from "gc --auto"
  22. @gitster

    Merge branch 'ho/gitweb-squelch-undef-warning' into maint

    gitster committed
    Asking gitweb for a nonexistent commit left a warning in the server
    Somebody may want to follow this up with a new test, perhaps?
    IIRC, we do test that no Perl warnings are given to the server log,
    so this should have been caught if our test coverage were good.
    * ho/gitweb-squelch-undef-warning:
      gitweb: squelch "uninitialized value" warning
  23. @gitster

    Merge branch 'js/fopen-harder' into maint

    gitster committed
    Some codepaths used fopen(3) when opening a fixed path in $GIT_DIR
    (e.g. COMMIT_EDITMSG) that is meant to be left after the command is
    done.  This however did not work well if the repository is set to
    be shared with core.sharedRepository and the umask of the previous
    user is tighter.  They have been made to work better by calling
    unlink(2) and retrying after fopen(3) fails with EPERM.
    * js/fopen-harder:
      Handle more file writes correctly in shared repos
      commit: allow editing the commit message even in shared repos
  24. @gitster

    Merge branch 'nd/exclusion-regression-fix' into maint

    gitster committed
    The ignore mechanism saw a few regressions around untracked file
    listing and sparse checkout selection areas in 2.7.0; the change
    that is responsible for the regression has been reverted.
    * nd/exclusion-regression-fix:
      Revert "dir.c: don't exclude whole dir prematurely if neg pattern may match"
  25. @gitster

    Merge branch 'dk/reflog-walk-with-non-commit' into maint

    gitster committed
    "git reflog" incorrectly assumed that all objects that used to be
    at the tip of a ref must be commits, which caused it to segfault.
    * dk/reflog-walk-with-non-commit:
      reflog-walk: don't segfault on non-commit sha1's in the reflog
Something went wrong with that request. Please try again.