1. 08 5月, 2019 17 次提交
    • J
      Merge branch 'jk/untracked-cache-more-fixes' · 5b5def9a
      Junio C Hamano 提交于
      Code clean-up.
      
      * jk/untracked-cache-more-fixes:
        untracked-cache: simplify parsing by dropping "len"
        untracked-cache: simplify parsing by dropping "next"
        untracked-cache: be defensive about missing NULs in index
      5b5def9a
    • J
      Merge branch 'jk/prune-optim' · d1311beb
      Junio C Hamano 提交于
      A follow-up test for an earlier "git prune" improvements.
      
      * jk/prune-optim:
        t5304: add a test for pruning with bitmaps
      d1311beb
    • J
      Merge branch 'js/misc-doc-fixes' · caa227ff
      Junio C Hamano 提交于
      "make check-docs", "git help -a", etc. did not account for cases
      where a particular build may deliberately omit some subcommands,
      which has been corrected.
      
      * js/misc-doc-fixes:
        Turn `git serve` into a test helper
        test-tool: handle the `-C <directory>` option just like `git`
        check-docs: do not bother checking for legacy scripts' documentation
        docs: exclude documentation for commands that have been excluded
        check-docs: allow command-list.txt to contain excluded commands
        help -a: do not list commands that are excluded from the build
        Makefile: drop the NO_INSTALL variable
        remote-testgit: move it into the support directory for t5801
      caa227ff
    • J
      Merge branch 'dr/ref-filter-push-track-fix' · f560a4d1
      Junio C Hamano 提交于
      %(push:track) token used in the --format option to "git
      for-each-ref" and friends was not showing the right branch, which
      has been fixed.
      
      * dr/ref-filter-push-track-fix:
        ref-filter: use correct branch for %(push:track)
      f560a4d1
    • J
      Merge branch 'ss/msvc-path-utils-fix' · 70542df5
      Junio C Hamano 提交于
      An earlier update for MinGW and Cygwin accidentally broke MSVC build,
      which has been fixed.
      
      * ss/msvc-path-utils-fix:
        MSVC: include compat/win32/path-utils.h for MSVC, too, for real_path()
      70542df5
    • J
      Merge branch 'jt/clone-server-option' · 6d3df8ef
      Junio C Hamano 提交于
      "git clone" learned a new --server-option option when talking over
      the protocol version 2.
      
      * jt/clone-server-option:
        clone: send server options when using protocol v2
        transport: die if server options are unsupported
      6d3df8ef
    • J
      Merge branch 'tb/unexpected' · ea2dab1a
      Junio C Hamano 提交于
      Code tightening against a "wrong" object appearing where an object
      of a different type is expected, instead of blindly assuming that
      the connection between objects are correctly made.
      
      * tb/unexpected:
        rev-list: detect broken root trees
        rev-list: let traversal die when --missing is not in use
        get_commit_tree(): return NULL for broken tree
        list-objects.c: handle unexpected non-tree entries
        list-objects.c: handle unexpected non-blob entries
        t: introduce tests for unexpected object types
        t: move 'hex2oct' into test-lib-functions.sh
      ea2dab1a
    • J
      Merge branch 'nd/sha1-name-c-wo-the-repository' · 0b179f31
      Junio C Hamano 提交于
      Further code clean-up to allow the lowest level of name-to-object
      mapping layer to work with a passed-in repository other than the
      default one.
      
      * nd/sha1-name-c-wo-the-repository: (34 commits)
        sha1-name.c: remove the_repo from get_oid_mb()
        sha1-name.c: remove the_repo from other get_oid_*
        sha1-name.c: remove the_repo from maybe_die_on_misspelt_object_name
        submodule-config.c: use repo_get_oid for reading .gitmodules
        sha1-name.c: add repo_get_oid()
        sha1-name.c: remove the_repo from get_oid_with_context_1()
        sha1-name.c: remove the_repo from resolve_relative_path()
        sha1-name.c: remove the_repo from diagnose_invalid_index_path()
        sha1-name.c: remove the_repo from handle_one_ref()
        sha1-name.c: remove the_repo from get_oid_1()
        sha1-name.c: remove the_repo from get_oid_basic()
        sha1-name.c: remove the_repo from get_describe_name()
        sha1-name.c: remove the_repo from get_oid_oneline()
        sha1-name.c: add repo_interpret_branch_name()
        sha1-name.c: remove the_repo from interpret_branch_mark()
        sha1-name.c: remove the_repo from interpret_nth_prior_checkout()
        sha1-name.c: remove the_repo from get_short_oid()
        sha1-name.c: add repo_for_each_abbrev()
        sha1-name.c: store and use repo in struct disambiguate_state
        sha1-name.c: add repo_find_unique_abbrev_r()
        ...
      0b179f31
    • J
      Merge branch 'cc/replace-graft-peel-tags' · ce2a18f2
      Junio C Hamano 提交于
      When given a tag that points at a commit-ish, "git replace --graft"
      failed to peel the tag before writing a replace ref, which did not
      make sense because the old graft mechanism the feature wants to
      mimick only allowed to replace one commit object with another.
      This has been fixed.
      
      * cc/replace-graft-peel-tags:
        replace: peel tag when passing a tag first to --graft
        replace: peel tag when passing a tag as parent to --graft
        t6050: redirect expected error output to a file
        t6050: use test_line_count instead of wc -l
      ce2a18f2
    • J
      Merge branch 'js/trace2-to-directory' · 1b403146
      Junio C Hamano 提交于
      The trace2 tracing facility learned to auto-generate a filename
      when told to log to a directory.
      
      * js/trace2-to-directory:
        trace2: write to directory targets
      1b403146
    • J
      Merge branch 'dl/merge-cleanup-scissors-fix' · b877cb4a
      Junio C Hamano 提交于
      The list of conflicted paths shown in the editor while concluding a
      conflicted merge was shown above the scissors line when the
      clean-up mode is set to "scissors", even though it was commented
      out just like the list of updated paths and other information to
      help the user explain the merge better.
      
      * dl/merge-cleanup-scissors-fix:
        cherry-pick/revert: add scissors line on merge conflict
        sequencer.c: save and restore cleanup mode
        merge: add scissors line on merge conflict
        merge: cleanup messages like commit
        parse-options.h: extract common --cleanup option
        commit: extract cleanup_mode functions to sequencer
        t7502: clean up style
        t7604: clean up style
        t3507: clean up style
        t7600: clean up style
      b877cb4a
    • J
      Merge branch 'pw/sequencer-cleanup-with-signoff-x-fix' · f757794d
      Junio C Hamano 提交于
      "git cherry-pick" run with the "-x" or the "--signoff" option used
      to (and more importantly, ought to) clean up the commit log message
      with the --cleanup=space option by default, but this has been
      broken since late 2017.  This has been fixed.
      
      * pw/sequencer-cleanup-with-signoff-x-fix:
        sequencer: fix cleanup with --signoff and -x
      f757794d
    • J
      Merge branch 'jk/pack-objects-reports-num-objects-to-trace2' · 3d675557
      Junio C Hamano 提交于
      The "git pack-objects" command learned to report the number of
      objects it packed via the trace2 mechanism.
      
      * jk/pack-objects-reports-num-objects-to-trace2:
        pack-objects: write objects packed to trace2
      3d675557
    • J
      Merge branch 'tz/git-svn-doc-markup-fix' · 6e0bef37
      Junio C Hamano 提交于
      Doc formatting fix.
      
      * tz/git-svn-doc-markup-fix:
        Documentation/git-svn: improve asciidoctor compatibility
      6e0bef37
    • J
      Merge branch 'km/empty-repo-is-still-a-repo' · 4ab701b2
      Junio C Hamano 提交于
      Running "git add" on a repository created inside the current
      repository is an explicit indication that the user wants to add it
      as a submodule, but when the HEAD of the inner repository is on an
      unborn branch, it cannot be added as a submodule.  Worse, the files
      in its working tree can be added as if they are a part of the outer
      repository, which is not what the user wants.  These problems are
      being addressed.
      
      * km/empty-repo-is-still-a-repo:
        add: error appropriately on repository with no commits
        dir: do not traverse repositories with no commits
        submodule: refuse to add repository with no commits
      4ab701b2
    • J
      Merge branch 'dl/warn-tagging-a-tag' · a1985623
      Junio C Hamano 提交于
      "git tag" learned to give an advice suggesting it might be a
      mistake when creating an annotated or signed tag that points at
      another tag.
      
      * dl/warn-tagging-a-tag:
        tag: advise on nested tags
        tag: fix formatting
      a1985623
    • J
      Merge branch 'en/merge-directory-renames' · 96379f04
      Junio C Hamano 提交于
      "git merge-recursive" backend recently learned a new heuristics to
      infer file movement based on how other files in the same directory
      moved.  As this is inherently less robust heuristics than the one
      based on the content similarity of the file itself (rather than
      based on what its neighbours are doing), it sometimes gives an
      outcome unexpected by the end users.  This has been toned down to
      leave the renamed paths in higher/conflicted stages in the index so
      that the user can examine and confirm the result.
      
      * en/merge-directory-renames:
        merge-recursive: switch directory rename detection default
        merge-recursive: give callers of handle_content_merge() access to contents
        merge-recursive: track information associated with directory renames
        t6043: fix copied test description to match its purpose
        merge-recursive: switch from (oid,mode) pairs to a diff_filespec
        merge-recursive: cleanup handle_rename_* function signatures
        merge-recursive: track branch where rename occurred in rename struct
        merge-recursive: remove ren[12]_other fields from rename_conflict_info
        merge-recursive: shrink rename_conflict_info
        merge-recursive: move some struct declarations together
        merge-recursive: use 'ci' for rename_conflict_info variable name
        merge-recursive: rename locals 'o' and 'a' to 'obuf' and 'abuf'
        merge-recursive: rename diff_filespec 'one' to 'o'
        merge-recursive: rename merge_options argument from 'o' to 'opt'
        Use 'unsigned short' for mode, like diff_filespec does
      96379f04
  2. 25 4月, 2019 23 次提交
    • J
      The seventh batch · 83232e38
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      83232e38
    • J
      Merge branch 'js/macos-gettext-build' · aa8c8d91
      Junio C Hamano 提交于
      Build with gettext breaks on recent macOS w/ Homebrew when
      /usr/local/bin is not on PATH, which has been corrected.
      
      * js/macos-gettext-build:
        macOS: make sure that gettext is found
      aa8c8d91
    • J
      Merge branch 'bs/sendemail-tighten-anything-by' · 061ed420
      Junio C Hamano 提交于
      The recently added feature to add addresses that are on
      anything-by: trailers in 'git send-email' was found to be way too
      eager and considered nonsense strings as if they can be legitimate
      beginning of *-by: trailer.  This has been tightened.
      
      * bs/sendemail-tighten-anything-by:
        send-email: don't cc *-by lines with '-' prefix
      061ed420
    • J
      Merge branch 'bc/send-email-qp-cr' · 5983ddc1
      Junio C Hamano 提交于
      "git send-email" has been taught to use quoted-printable when the
      payload contains carriage-return.  The use of the mechanism is in
      line with the design originally added the codepath that chooses QP
      when the payload has overly long lines.
      
      * bc/send-email-qp-cr:
        send-email: default to quoted-printable when CR is present
      5983ddc1
    • J
      Merge branch 'nd/submodule-foreach-quiet' · f1c9f6ce
      Junio C Hamano 提交于
      "git submodule foreach <command> --quiet" did not pass the option
      down correctly, which has been corrected.
      
      * nd/submodule-foreach-quiet:
        submodule foreach: fix "<command> --quiet" not being respected
      f1c9f6ce
    • J
      Merge branch 'js/iso8895-test-on-apfs' · 5c2b4ca0
      Junio C Hamano 提交于
      Test fix on APFS that is incapable of store paths in Latin-1.
      
      * js/iso8895-test-on-apfs:
        t9822: skip tests if file names cannot be ISO-8859-1 encoded
      5c2b4ca0
    • J
      Merge branch 'jc/gettext-test-fix' · 49f50f58
      Junio C Hamano 提交于
      The GETTEXT_POISON test option has been quite broken ever since it
      was made runtime-tunable, which has been fixed.
      
      * jc/gettext-test-fix:
        gettext tests: export the restored GIT_TEST_GETTEXT_POISON
      49f50f58
    • J
      Merge branch 'jk/fetch-reachability-error-fix' · 57a6b932
      Junio C Hamano 提交于
      Code clean-up and a fix for "git fetch" by an explicit object name
      (as opposed to fetching refs by name).
      
      * jk/fetch-reachability-error-fix:
        fetch: do not consider peeled tags as advertised tips
        remote.c: make singular free_ref() public
        fetch: use free_refs()
        pkt-line: prepare buffer before handling ERR packets
        upload-pack: send ERR packet for non-tip objects
        t5530: check protocol response for "not our ref"
        t5516: drop ok=sigpipe from unreachable-want tests
      57a6b932
    • J
      Merge branch 'jk/xmalloc' · 449f2db7
      Junio C Hamano 提交于
      The code is updated to check the result of memory allocation before
      it is used in more places, by using xmalloc and/or xcalloc calls.
      
      * jk/xmalloc:
        progress: use xmalloc/xcalloc
        xdiff: use xmalloc/xrealloc
        xdiff: use git-compat-util
        test-prio-queue: use xmalloc
      449f2db7
    • J
      Merge branch 'km/t3000-retitle' · c8e8b5c3
      Junio C Hamano 提交于
      A test update.
      
      * km/t3000-retitle:
        t3000 (ls-files -o): widen description to reflect current tests
      c8e8b5c3
    • J
      Merge branch 'js/untracked-cache-allocfix' · 0830eac1
      Junio C Hamano 提交于
      An underallocation in the code to read the untracked cache
      extension has been corrected.
      
      * js/untracked-cache-allocfix:
        untracked cache: fix off-by-one
      0830eac1
    • J
      Merge branch 'js/t3301-unbreak-notes-test' · af152bd5
      Junio C Hamano 提交于
      Test fix.
      
      * js/t3301-unbreak-notes-test:
        t3301: fix false negative
      af152bd5
    • J
      Merge branch 'tz/doc-apostrophe-no-longer-needed' · c42986f4
      Junio C Hamano 提交于
      Doc formatting fix.
      
      * tz/doc-apostrophe-no-longer-needed:
        Documentation/git-show-branch: avoid literal {apostrophe}
      c42986f4
    • J
      Merge branch 'sg/blame-in-bare-start-at-head' · d8620d3c
      Junio C Hamano 提交于
      "git blame -- path" in a non-bare repository starts blaming from
      the working tree, and the same command in a bare repository errors
      out because there is no working tree by definition.  The command
      has been taught to instead start blaming from the commit at HEAD,
      which is more useful.
      
      * sg/blame-in-bare-start-at-head:
        blame: default to HEAD in a bare repo when no start commit is given
      d8620d3c
    • J
      Merge branch 'tg/ls-files-debug-format-fix' · 503f5809
      Junio C Hamano 提交于
      Debugging code fix.
      
      * tg/ls-files-debug-format-fix:
        ls-files: use correct format string
      503f5809
    • J
      Merge branch 'po/describe-not-necessarily-7' · 18c3ae0d
      Junio C Hamano 提交于
      Docfix.
      
      * po/describe-not-necessarily-7:
        describe doc: remove '7-char' abbreviation reference
      18c3ae0d
    • J
      Merge branch 'po/rerere-doc-fmt' · 98a8fcc8
      Junio C Hamano 提交于
      Docfix.
      
      * po/rerere-doc-fmt:
        rerere doc: quote `rerere.enabled`
      98a8fcc8
    • J
      Merge branch 'sg/overlong-progress-fix' · 425e51e5
      Junio C Hamano 提交于
      Updating the display with progress message has been cleaned up to
      deal better with overlong messages.
      
      * sg/overlong-progress-fix:
        progress: break too long progress bar lines
        progress: clear previous progress update dynamically
        progress: assemble percentage and counters in a strbuf before printing
        progress: make display_progress() return void
      425e51e5
    • J
      Merge branch 'jt/batch-fetch-blobs-in-diff' · 32dc15de
      Junio C Hamano 提交于
      While running "git diff" in a lazy clone, we can upfront know which
      missing blobs we will need, instead of waiting for the on-demand
      machinery to discover them one by one.  Aim to achieve better
      performance by batching the request for these promised blobs.
      
      * jt/batch-fetch-blobs-in-diff:
        diff: batch fetching of missing blobs
        sha1-file: support OBJECT_INFO_FOR_PREFETCH
      32dc15de
    • J
      Merge branch 'ab/gc-docs' · ac70c531
      Junio C Hamano 提交于
      Update docs around "gc".
      
      * ab/gc-docs:
        gc docs: remove incorrect reference to gc.auto=0
        gc docs: clarify that "gc" doesn't throw away referenced objects
        gc docs: note "gc --aggressive" in "fast-import"
        gc docs: downplay the usefulness of --aggressive
        gc docs: note how --aggressive impacts --window & --depth
        gc docs: fix formatting for "gc.writeCommitGraph"
        gc docs: re-flow the "gc.*" section in "config"
        gc docs: include the "gc.*" section from "config" in "gc"
        gc docs: clean grammar for "gc.bigPackThreshold"
        gc docs: stop noting "repack" flags
        gc docs: modernize the advice for manually running "gc"
      ac70c531
    • J
      Merge branch 'dl/submodule-set-branch' · 01f8d788
      Junio C Hamano 提交于
      "git submodule" learns "set-branch" subcommand that allows the
      submodule.*.branch settings to be modified.
      
      * dl/submodule-set-branch:
        submodule: teach set-branch subcommand
        submodule--helper: teach config subcommand --unset
        git-submodule.txt: "--branch <branch>" option defaults to 'master'
      01f8d788
    • J
      Merge branch 'jk/revision-rewritten-parents-in-prio-queue' · d9d65e9f
      Junio C Hamano 提交于
      Performance fix for "rev-list --parents -- pathspec".
      
      * jk/revision-rewritten-parents-in-prio-queue:
        revision: use a prio_queue to hold rewritten parents
      d9d65e9f
    • J
      Merge branch 'dk/blame-keep-origin-blob' · 4d8c4da9
      Junio C Hamano 提交于
      Performance fix around "git blame", especially in a linear history
      (which is the norm we should optimize for).
      
      * dk/blame-keep-origin-blob:
        blame.c: don't drop origin blobs as eagerly
      4d8c4da9