1. 30 5月, 2017 12 次提交
    • J
      Merge branch 'js/larger-timestamps' · 35d802d2
      Junio C Hamano 提交于
      A follow-up hotfix for a topic already in 'master'.
      
      * js/larger-timestamps:
        name-rev: change a "long" variable to timestamp_t
      35d802d2
    • J
      Merge branch 'dk/send-email-avoid-net-smtp-ssl-when-able' · 663bf043
      Junio C Hamano 提交于
      "git send-email" now uses Net::SMTP::SSL, which is obsolete, only
      when needed.  Recent versions of Net::SMTP can do TLS natively.
      
      * dk/send-email-avoid-net-smtp-ssl-when-able:
        send-email: Net::SMTP::SSL is obsolete, use only when necessary
      663bf043
    • J
      Merge branch 'jc/skip-test-in-the-middle' · 9aa55594
      Junio C Hamano 提交于
      A recent update to t5545-push-options.sh started skipping all the
      tests in the script when a web server testing is disabled or
      unavailable, not just the ones that require a web server.  Non HTTP
      tests have been salvaged to always run in this script.
      
      * jc/skip-test-in-the-middle:
        t5545: enhance test coverage when no http server is installed
        test: allow skipping the remainder
      9aa55594
    • J
      Merge branch 'ab/conditional-config-with-symlinks' · b784d0be
      Junio C Hamano 提交于
      The recently introduced "[includeIf "gitdir:$dir"] path=..."
      mechansim has further been taught to take symlinks into account.
      The directory "$dir" specified in "gitdir:$dir" may be a symlink to
      a real location, not something that $(getcwd) may return.  In such
      a case, a realpath of "$dir" is compared with the real path of the
      current repository to determine if the contents from the named path
      should be included.
      
      * ab/conditional-config-with-symlinks:
        config: match both symlink & realpath versions in IncludeIf.gitdir:*
      b784d0be
    • J
      Merge branch 'jt/fetch-allow-tip-sha1-implicitly' · 02c531eb
      Junio C Hamano 提交于
      There is no good reason why "git fetch $there $sha1" should fail
      when the $sha1 names an object at the tip of an advertised ref,
      even when the other side hasn't enabled allowTipSHA1InWant.
      
      * jt/fetch-allow-tip-sha1-implicitly:
        fetch-pack: always allow fetching of literal SHA1s
      02c531eb
    • J
      Merge branch 'jt/send-email-validate-hook' · 07d4c760
      Junio C Hamano 提交于
      "git send-email" learned to run sendemail-validate hook to inspect
      and reject a message before sending it out.
      
      * jt/send-email-validate-hook:
        send-email: support validate hook
      07d4c760
    • J
      Merge branch 'jh/memihash-opt' · c05e1231
      Junio C Hamano 提交于
      perf-test update.
      
      * jh/memihash-opt:
        p0004: don't error out if test repo is too small
        p0004: don't abort if multi-threaded is too slow
        p0004: use test_perf
        p0004: avoid using pipes
        p0004: simplify calls of test-lazy-init-name-hash
      c05e1231
    • J
      Merge branch 'bp/sub-process-convert-filter' · ae7785de
      Junio C Hamano 提交于
      Code from "conversion using external process" codepath has been
      extracted to a separate sub-process.[ch] module.
      
      * bp/sub-process-convert-filter:
        convert: update subprocess_read_status() to not die on EOF
        sub-process: move sub-process functions into separate files
        convert: rename reusable sub-process functions
        convert: update generic functions to only use generic data structures
        convert: separate generic structures and variables from the filter specific ones
        convert: split start_multi_file_filter() into two separate functions
        pkt-line: annotate packet_writel with LAST_ARG_MUST_BE_NULL
        convert: move packet_write_line() into pkt-line as packet_writel()
        pkt-line: add packet_read_line_gently()
        pkt-line: fix packet_read_line() to handle len < 0 errors
        convert: remove erroneous tests for errno == EPIPE
      ae7785de
    • J
      Merge branch 'bw/forking-and-threading' · 7d5e13f6
      Junio C Hamano 提交于
      The "run-command" API implementation has been made more robust
      against dead-locking in a threaded environment.
      
      * bw/forking-and-threading:
        usage.c: drop set_error_handle()
        run-command: restrict PATH search to executable files
        run-command: expose is_executable function
        run-command: block signals between fork and execve
        run-command: add note about forking and threading
        run-command: handle dup2 and close errors in child
        run-command: eliminate calls to error handling functions in child
        run-command: don't die in child when duping /dev/null
        run-command: prepare child environment before forking
        string-list: add string_list_remove function
        run-command: use the async-signal-safe execv instead of execvp
        run-command: prepare command before forking
        t0061: run_command executes scripts without a #! line
        t5550: use write_script to generate post-update hook
      7d5e13f6
    • J
      Merge branch 'ab/perf-wildmatch' · 140921ca
      Junio C Hamano 提交于
      Add perf-test for wildmatch.
      
      * ab/perf-wildmatch:
        perf: add test showing exponential growth in path globbing
        perf: add function to setup a fresh test repo
      140921ca
    • J
      Merge branch 'bw/pathspec-sans-the-index' · 3c5a7828
      Junio C Hamano 提交于
      Simplify parse_pathspec() codepath and stop it from looking at the
      default in-core index.
      
      * bw/pathspec-sans-the-index:
        pathspec: convert find_pathspecs_matching_against_index to take an index
        pathspec: remove PATHSPEC_STRIP_SUBMODULE_SLASH_CHEAP
        ls-files: prevent prune_cache from overeagerly pruning submodules
        pathspec: remove PATHSPEC_STRIP_SUBMODULE_SLASH_EXPENSIVE flag
        submodule: add die_in_unpopulated_submodule function
        pathspec: provide a more descriptive die message
      3c5a7828
    • J
      Merge branch 'jc/name-rev-lw-tag' · 78089b71
      Junio C Hamano 提交于
      "git describe --contains" penalized light-weight tags so much that
      they were almost never considered.  Instead, give them about the
      same chance to be considered as an annotated tag that is the same
      age as the underlying commit would.
      
      * jc/name-rev-lw-tag:
        name-rev: favor describing with tags and use committer date to tiebreak
        name-rev: refactor logic to see if a new candidate is a better name
      78089b71
  2. 29 5月, 2017 24 次提交
    • J
      Third batch for 2.14 · e83352ef
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      e83352ef
    • J
      Merge branch 'jk/ignore-broken-tags-when-ignoring-missing-links' · b42b41b7
      Junio C Hamano 提交于
      Tag objects, which are not reachable from any ref, that point at
      missing objects were mishandled by "git gc" and friends (they
      should silently be ignored instead)
      
      * jk/ignore-broken-tags-when-ignoring-missing-links:
        revision.c: ignore broken tags with ignore_missing_links
      b42b41b7
    • J
      Merge branch 'jk/alternate-ref-optim' · 69b050ee
      Junio C Hamano 提交于
      A test allowed both "git push" and "git receive-pack" on the other
      end write their traces into the same file.  This is OK on platforms
      that allows atomically appending to a file opened with O_APPEND,
      but on other platforms led to a mangled output, causing
      intermittent test failures.  This has been fixed by disabling
      traces from "receive-pack" in the test.
      
      * jk/alternate-ref-optim:
        t5400: avoid concurrent writes into a trace file
      69b050ee
    • J
      Merge branch 'bm/interpret-trailers-cut-line-is-eom' · 965993d1
      Junio C Hamano 提交于
      "git interpret-trailers", when used as GIT_EDITOR for "git commit
      -v", looked for and appended to a trailer block at the very end,
      i.e. at the end of the "diff" output.  The command has been
      corrected to pay attention to the cut-mark line "commit -v" adds to
      the buffer---the real trailer block should appear just before it.
      
      * bm/interpret-trailers-cut-line-is-eom:
        interpret-trailers: honor the cut line
      965993d1
    • J
      Merge branch 'tg/stash-push-fixup' · 6f7f11f7
      Junio C Hamano 提交于
      The shell completion script (in contrib/) learned "git stash" has
      a new "push" subcommand.
      
      * tg/stash-push-fixup:
        completion: add git stash push
      6f7f11f7
    • J
      Merge branch 'pw/rebase-i-regression-fix' · 2becdbd4
      Junio C Hamano 提交于
      Regression fix to topic recently merged to 'master'.
      
      * pw/rebase-i-regression-fix:
        rebase -i: add missing newline to end of message
        rebase -i: silence stash apply
        rebase -i: fix reflog message
      2becdbd4
    • J
      Merge branch 'kn/ref-filter-branch-list' · 8d3abead
      Junio C Hamano 提交于
      "git for-each-ref --format=..." with %(HEAD) in the format used to
      resolve the HEAD symref as many times as it had processed refs,
      which was wasteful, and "git branch" shared the same problem.
      
      * kn/ref-filter-branch-list:
        ref-filter: resolve HEAD when parsing %(HEAD) atom
      8d3abead
    • J
      Merge branch 'km/log-showsignature-doc' · ee7daf6c
      Junio C Hamano 提交于
      * km/log-showsignature-doc:
        config.txt: add an entry for log.showSignature
      ee7daf6c
    • J
      Merge branch 'jk/update-links-in-docs' · 529ebaa1
      Junio C Hamano 提交于
      A few http:// links that are redirected to https:// in the
      documentation have been updated to https:// links.
      
      * jk/update-links-in-docs:
        doc: use https links to Wikipedia to avoid http redirects
      529ebaa1
    • J
      Merge branch 'ja/do-not-ask-needless-questions' · e6381080
      Junio C Hamano 提交于
      Git sometimes gives an advice in a rhetorical question that does
      not require an answer, which can confuse new users and non native
      speakers.  Attempt to rephrase them.
      
      * ja/do-not-ask-needless-questions:
        git-filter-branch: be more direct in an error message
        read-tree -m: make error message for merging 0 trees less smart aleck
        usability: don't ask questions if no reply is required
      e6381080
    • J
      Merge branch 'jk/doc-config-include' · ed980601
      Junio C Hamano 提交于
      Clarify documentation for include.path and includeIf.<condition>.path
      configuration variables.
      
      * jk/doc-config-include:
        docs/config: consistify include.path examples
        docs/config: avoid the term "expand" for includes
        docs/config: give a relative includeIf example
        docs/config: clarify include/includeIf relationship
      ed980601
    • J
      Merge branch 'sg/core-filemode-doc-typofix' · e6f9c8d7
      Junio C Hamano 提交于
      * sg/core-filemode-doc-typofix:
        docs/config.txt: fix indefinite article in core.fileMode description
      e6f9c8d7
    • J
      Merge branch 'jk/bug-to-abort' · 220c6a70
      Junio C Hamano 提交于
      Introduce the BUG() macro to improve die("BUG: ...").
      
      * jk/bug-to-abort:
        usage: add NORETURN to BUG() function definitions
        config: complain about --local outside of a git repo
        setup_git_env: convert die("BUG") to BUG()
        usage.c: add BUG() function
      220c6a70
    • J
      Merge branch 'js/eol-on-ourselves' · 15c96723
      Junio C Hamano 提交于
      Make sure our tests would pass when the sources are checked out
      with "platform native" line ending convention by default on
      Windows.  Some "text" files out tests use and the test scripts
      themselves that are meant to be run with /bin/sh, ought to be
      checked out with eol=LF even on Windows.
      
      * js/eol-on-ourselves:
        t4051: mark supporting files as requiring LF-only line endings
        Fix the remaining tests that failed with core.autocrlf=true
        t3901: move supporting files into t/t3901/
        completion: mark bash script as LF-only
        git-new-workdir: mark script as LF-only
        Fix build with core.autocrlf=true
      15c96723
    • J
      Merge branch 'jc/read-tree-empty-with-m' · f55734fd
      Junio C Hamano 提交于
      "git read-tree -m" (no tree-ish) gave a nonsense suggestion "use
      --empty if you want to clear the index".  With "-m", such a request
      will still fail anyway, as you'd need to name at least one tree-ish
      to be merged.
      
      * jc/read-tree-empty-with-m:
        read-tree: "read-tree -m --empty" does not make sense
      f55734fd
    • J
      Merge branch 'js/plug-leaks' · 849e671b
      Junio C Hamano 提交于
      Fix memory leaks pointed out by Coverity (and people).
      
      * js/plug-leaks: (26 commits)
        checkout: fix memory leak
        submodule_uses_worktrees(): plug memory leak
        show_worktree(): plug memory leak
        name-rev: avoid leaking memory in the `deref` case
        remote: plug memory leak in match_explicit()
        add_reflog_for_walk: avoid memory leak
        shallow: avoid memory leak
        line-log: avoid memory leak
        receive-pack: plug memory leak in update()
        fast-export: avoid leaking memory in handle_tag()
        mktree: plug memory leaks reported by Coverity
        pack-redundant: plug memory leak
        setup_discovered_git_dir(): plug memory leak
        setup_bare_git_dir(): help static analysis
        split_commit_in_progress(): simplify & fix memory leak
        checkout: fix memory leak
        cat-file: fix memory leak
        mailinfo & mailsplit: check for EOF while parsing
        status: close file descriptor after reading git-rebase-todo
        difftool: address a couple of resource/memory leaks
        ...
      849e671b
    • J
      Merge branch 'jk/disable-pack-reuse-when-broken' · 137a2613
      Junio C Hamano 提交于
      "pack-objects" can stream a slice of an existing packfile out when
      the pack bitmap can tell that the reachable objects are all needed
      in the output, without inspecting individual objects.  This
      strategy however would not work well when "--local" and other
      options are in use, and need to be disabled.
      
      * jk/disable-pack-reuse-when-broken:
        t5310: fix "; do" style
        pack-objects: disable pack reuse for object-selection options
      137a2613
    • J
      Merge branch 'bc/object-id' · 6b526ced
      Junio C Hamano 提交于
      Conversion from uchar[20] to struct object_id continues.
      
      * bc/object-id: (53 commits)
        object: convert parse_object* to take struct object_id
        tree: convert parse_tree_indirect to struct object_id
        sequencer: convert do_recursive_merge to struct object_id
        diff-lib: convert do_diff_cache to struct object_id
        builtin/ls-tree: convert to struct object_id
        merge: convert checkout_fast_forward to struct object_id
        sequencer: convert fast_forward_to to struct object_id
        builtin/ls-files: convert overlay_tree_on_cache to object_id
        builtin/read-tree: convert to struct object_id
        sha1_name: convert internals of peel_onion to object_id
        upload-pack: convert remaining parse_object callers to object_id
        revision: convert remaining parse_object callers to object_id
        revision: rename add_pending_sha1 to add_pending_oid
        http-push: convert process_ls_object and descendants to object_id
        refs/files-backend: convert many internals to struct object_id
        refs: convert struct ref_update to use struct object_id
        ref-filter: convert some static functions to struct object_id
        Convert struct ref_array_item to struct object_id
        Convert the verify_pack callback to struct object_id
        Convert lookup_tag to struct object_id
        ...
      6b526ced
    • J
      Merge branch 'nd/split-index-unshare' · f382b756
      Junio C Hamano 提交于
      Plug some leaks and updates internal API used to implement the
      split index feature to make it easier to avoid such a leak in the
      future.
      
      * nd/split-index-unshare:
        p3400: add perf tests for rebasing many changes
        split-index: add and use unshare_split_index()
      f382b756
    • J
      Merge branch 'jk/diff-submodule-diff-inline' · a531ecf3
      Junio C Hamano 提交于
      "git diff --submodule=diff" now recurses into nested submodules.
      
      * jk/diff-submodule-diff-inline:
        diff: recurse into nested submodules for inline diff
      a531ecf3
    • J
      Merge branch 'bw/dir-c-stops-relying-on-the-index' · 4eeed27e
      Junio C Hamano 提交于
      API update.
      
      * bw/dir-c-stops-relying-on-the-index:
        dir: convert fill_directory to take an index
        dir: convert read_directory to take an index
        dir: convert read_directory_recursive to take an index
        dir: convert open_cached_dir to take an index
        dir: convert is_excluded to take an index
        dir: convert prep_exclude to take an index
        dir: convert add_excludes to take an index
        dir: convert is_excluded_from_list to take an index
        dir: convert last_exclude_matching_from_list to take an index
        dir: convert dir_add* to take an index
        dir: convert get_dtype to take index
        dir: convert directory_exists_in_index to take index
        dir: convert read_skip_worktree_file_from_index to take an index
        dir: stop using the index compatibility macros
      4eeed27e
    • J
      Merge branch 'sb/checkout-recurse-submodules' · f1101cef
      Junio C Hamano 提交于
      "git checkout --recurse-submodules" did not quite work with a
      submodule that itself has submodules.
      
      * sb/checkout-recurse-submodules:
        submodule: properly recurse for read-tree and checkout
        submodule: avoid auto-discovery in new working tree manipulator code
        submodule_move_head: reuse child_process structure for futher commands
      f1101cef
    • J
      Merge branch 'jc/repack-threads' · 31fb6f4d
      Junio C Hamano 提交于
      "git repack" learned to accept the --threads=<n> option and pass it
      to pack-objects.
      
      * jc/repack-threads:
        repack: accept --threads=<n> and pass it down to pack-objects
      31fb6f4d
    • J
      Merge branch 'sb/reset-recurse-submodules' · 5f074ca7
      Junio C Hamano 提交于
      "git reset" learned "--recurse-submodules" option.
      
      * sb/reset-recurse-submodules:
        builtin/reset: add --recurse-submodules switch
        submodule.c: submodule_move_head works with broken submodules
        submodule.c: uninitialized submodules are ignored in recursive commands
        entry.c: submodule recursing: respect force flag correctly
      5f074ca7
  3. 26 5月, 2017 1 次提交
  4. 23 5月, 2017 3 次提交