1. 26 6月, 2018 1 次提交
  2. 04 6月, 2018 1 次提交
  3. 01 6月, 2018 3 次提交
  4. 30 5月, 2018 34 次提交
    • J
      Git 2.18-rc0 · 12039e00
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      12039e00
    • J
      Merge branch 'bw/remote-curl-compressed-responses' · 13e8be95
      Junio C Hamano 提交于
      Our HTTP client code used to advertise that we accept gzip encoding
      from the other side; instead, just let cURL library to advertise
      and negotiate the best one.
      
      * bw/remote-curl-compressed-responses:
        remote-curl: accept compressed responses with protocol v2
        remote-curl: accept all encodings supported by curl
      13e8be95
    • J
      Merge branch 'ma/unpack-trees-free-msgs' · e47dbece
      Junio C Hamano 提交于
      Leak plugging.
      
      * ma/unpack-trees-free-msgs:
        unpack_trees_options: free messages when done
        argv-array: return the pushed string from argv_push*()
        merge-recursive: provide pair of `unpack_trees_{start,finish}()`
        merge: setup `opts` later in `checkout_fast_forward()`
      e47dbece
    • J
      Merge branch 'bc/hash-independent-tests' · 9472b132
      Junio C Hamano 提交于
      Many tests hardcode the raw object names, which would change once
      we migrate away from SHA-1.  While some of them must test against
      exact object names, most of them do not have to use hardcoded
      constants in the test.  The latter kind of tests have been updated
      to test the moral equivalent of the original without hardcoding the
      actual object names.
      
      * bc/hash-independent-tests: (28 commits)
        t5300: abstract away SHA-1-specific constants
        t4208: abstract away SHA-1-specific constants
        t4045: abstract away SHA-1-specific constants
        t4042: abstract away SHA-1-specific constants
        t4205: sort log output in a hash-independent way
        t/lib-diff-alternative: abstract away SHA-1-specific constants
        t4030: abstract away SHA-1-specific constants
        t4029: abstract away SHA-1-specific constants
        t4029: fix test indentation
        t4022: abstract away SHA-1-specific constants
        t4020: abstract away SHA-1-specific constants
        t4014: abstract away SHA-1-specific constants
        t4008: abstract away SHA-1-specific constants
        t4007: abstract away SHA-1-specific constants
        t3905: abstract away SHA-1-specific constants
        t3702: abstract away SHA-1-specific constants
        t3103: abstract away SHA-1-specific constants
        t2203: abstract away SHA-1-specific constants
        t: skip pack tests if not using SHA-1
        t4044: skip test if not using SHA-1
        ...
      9472b132
    • J
      Merge branch 'ma/regex-no-regfree-after-comp-fail' · d89f1248
      Junio C Hamano 提交于
      We used to call regfree() after regcomp() failed in some codepaths,
      which have been corrected.
      
      * ma/regex-no-regfree-after-comp-fail:
        regex: do not call `regfree()` if compilation fails
      d89f1248
    • J
      Merge branch 'ma/config-store-data-clear' · 3f384aaa
      Junio C Hamano 提交于
      Leak plugging.
      
      * ma/config-store-data-clear:
        config: let `config_store_data_clear()` handle `key`
        config: let `config_store_data_clear()` handle `value_regex`
        config: free resources of `struct config_store_data`
      3f384aaa
    • J
      Merge branch 'jk/snprintf-truncation' · 7c3d15fe
      Junio C Hamano 提交于
      Avoid unchecked snprintf() to make future code auditing easier.
      
      * jk/snprintf-truncation:
        fmt_with_err: add a comment that truncation is OK
        shorten_unambiguous_ref: use xsnprintf
        fsmonitor: use internal argv_array of struct child_process
        log_write_email_headers: use strbufs
        http: use strbufs instead of fixed buffers
      7c3d15fe
    • J
      Merge branch 'jk/config-blob-sans-repo' · b2fd6592
      Junio C Hamano 提交于
      Error codepath fix.
      
      * jk/config-blob-sans-repo:
        config: die when --blob is used outside a repository
      b2fd6592
    • J
      Merge branch 'sb/submodule-merge-in-merge-recursive' · 0821b730
      Junio C Hamano 提交于
      By code restructuring of submodule merge in merge-recursive,
      informational messages from the codepath are now given using the
      same mechanism as other output, and honor the merge.verbosity
      configuration.  The code also learned to give a few new messages
      when a submodule three-way merge resolves cleanly when one side
      records a descendant of the commit chosen by the other side.
      
      * sb/submodule-merge-in-merge-recursive:
        merge-recursive: give notice when submodule commit gets fast-forwarded
        merge-recursive: i18n submodule merge output and respect verbosity
        submodule.c: move submodule merging to merge-recursive.c
      0821b730
    • J
      Merge branch 'js/empty-config-section-fix' · 23057708
      Junio C Hamano 提交于
      Error codepath fix.
      
      * js/empty-config-section-fix:
        config: a user-provided invalid section is not a BUG
      23057708
    • J
      Merge branch 'bw/ref-prefix-for-configured-refspec' · e12cbeaa
      Junio C Hamano 提交于
      "git fetch $there $refspec" that talks over protocol v2 can take
      advantage of server-side ref filtering; the code has been extended
      so that this mechanism triggers also when fetching with configured
      refspec.
      
      * bw/ref-prefix-for-configured-refspec: (38 commits)
        fetch: generate ref-prefixes when using a configured refspec
        refspec: consolidate ref-prefix generation logic
        submodule: convert push_unpushed_submodules to take a struct refspec
        remote: convert check_push_refs to take a struct refspec
        remote: convert match_push_refs to take a struct refspec
        http-push: store refspecs in a struct refspec
        transport: remove transport_verify_remote_names
        send-pack: store refspecs in a struct refspec
        transport: convert transport_push to take a struct refspec
        push: convert to use struct refspec
        push: check for errors earlier
        remote: convert match_explicit_refs to take a struct refspec
        remote: convert get_ref_match to take a struct refspec
        remote: convert query_refspecs to take a struct refspec
        remote: convert apply_refspecs to take a struct refspec
        remote: convert get_stale_heads to take a struct refspec
        fetch: convert prune_refs to take a struct refspec
        fetch: convert get_ref_map to take a struct refspec
        fetch: convert do_fetch to take a struct refspec
        refspec: remove the deprecated functions
        ...
      e12cbeaa
    • J
      Merge branch 'sb/grep-die-on-unreadable-index' · 6ac5acae
      Junio C Hamano 提交于
      Error behaviour of "git grep" when it cannot read the index was
      inconsistent with other commands that uses the index, which has
      been corrected to error out early.
      
      * sb/grep-die-on-unreadable-index:
        grep: handle corrupt index files early
      6ac5acae
    • J
      The seventh batch for 2.18 · f15a486c
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      f15a486c
    • J
      Merge branch 'sb/submodule-update-try-harder' · a173dddf
      Junio C Hamano 提交于
      "git submodule update" attempts two different kinds of "git fetch"
      against the upstream repository to grab a commit bound at the
      submodule's path, but it incorrectly gave up if the first kind
      (i.e. a normal fetch) failed, making the second "last resort" one
      (i.e. fetching an exact commit object by object name) ineffective.
      This has been corrected.
      
      * sb/submodule-update-try-harder:
        git-submodule.sh: try harder to fetch a submodule
      a173dddf
    • J
      Merge branch 'lm/credential-netrc' · 017b7c52
      Junio C Hamano 提交于
      Update credential-netrc helper (in contrib/) to allow customizing
      the GPG used to decrypt the encrypted .netrc file.
      
      * lm/credential-netrc:
        git-credential-netrc: accept gpg option
        git-credential-netrc: adapt to test framework for git
      017b7c52
    • J
      Merge branch 'ab/get-short-oid' · ab48bc0a
      Junio C Hamano 提交于
      When a short hexadecimal string is used to name an object but there
      are multiple objects that share the string as the prefix of their
      names, the code lists these ambiguous candidates in a help message.
      These object names are now sorted according to their types for
      easier eyeballing.
      
      * ab/get-short-oid:
        get_short_oid: sort ambiguous objects by type, then SHA-1
        sha1-name.c: move around the collect_ambiguous() function
        git-p4: change "commitish" typo to "committish"
        sha1-array.h: align function arguments
        sha1-name.c: remove stray newline
      ab48bc0a
    • J
      Merge branch 'jt/partial-clone-proto-v2' · 54db5c0e
      Junio C Hamano 提交于
      Transfer protocol v2 learned to support the partial clone.
      
      * jt/partial-clone-proto-v2:
        {fetch,upload}-pack: support filter in protocol v2
        upload-pack: read config when serving protocol v2
        upload-pack: fix error message typo
      54db5c0e
    • J
      Merge branch 'bc/object-id' · 42c8ce1c
      Junio C Hamano 提交于
      Conversion from uchar[20] to struct object_id continues.
      
      * bc/object-id: (42 commits)
        merge-one-file: compute empty blob object ID
        add--interactive: compute the empty tree value
        Update shell scripts to compute empty tree object ID
        sha1_file: only expose empty object constants through git_hash_algo
        dir: use the_hash_algo for empty blob object ID
        sequencer: use the_hash_algo for empty tree object ID
        cache-tree: use is_empty_tree_oid
        sha1_file: convert cached object code to struct object_id
        builtin/reset: convert use of EMPTY_TREE_SHA1_BIN
        builtin/receive-pack: convert one use of EMPTY_TREE_SHA1_HEX
        wt-status: convert two uses of EMPTY_TREE_SHA1_HEX
        submodule: convert several uses of EMPTY_TREE_SHA1_HEX
        sequencer: convert one use of EMPTY_TREE_SHA1_HEX
        merge: convert empty tree constant to the_hash_algo
        builtin/merge: switch tree functions to use object_id
        builtin/am: convert uses of EMPTY_TREE_SHA1_BIN to the_hash_algo
        sha1-file: add functions for hex empty tree and blob OIDs
        builtin/receive-pack: avoid hard-coded constants for push certs
        diff: specify abbreviation size in terms of the_hash_algo
        upload-pack: replace use of several hard-coded constants
        ...
      42c8ce1c
    • J
      Merge branch 'sb/blame-color' · 3d241297
      Junio C Hamano 提交于
      "git blame" learns to unhighlight uninteresting metadata from the
      originating commit on lines that are the same as the previous one,
      and also paint lines in different colors depending on the age of
      the commit.
      
      * sb/blame-color:
        builtin/blame: add new coloring scheme config
        builtin/blame: highlight recently changed lines
        builtin/blame: dim uninteresting metadata lines
      3d241297
    • J
      Merge branch 'cf/submodule-progress-dissociate' · 2a98a879
      Junio C Hamano 提交于
      "git submodule update" and "git submodule add" supported the
      "--reference" option to borrow objects from a neighbouring local
      repository like "git clone" does, but lacked the more recent
      invention "--dissociate".  Also "git submodule add" has been taught
      to take the "--progress" option.
      
      * cf/submodule-progress-dissociate:
        submodule: add --dissociate option to add/update commands
        submodule: add --progress option to add command
        submodule: clean up substitutions in script
      2a98a879
    • J
      Merge branch 'sg/complete-paths' · 4ce72180
      Junio C Hamano 提交于
      Command line completion (in contrib/) learned to complete pathnames
      for various commands better.
      
      * sg/complete-paths:
        t9902-completion: exercise __git_complete_index_file() directly
        completion: don't return with error from __gitcomp_file_direct()
        completion: fill COMPREPLY directly when completing paths
        completion: improve handling quoted paths in 'git ls-files's output
        completion: remove repeated dirnames with 'awk' during path completion
        t9902-completion: ignore COMPREPLY element order in some tests
        completion: use 'awk' to strip trailing path components
        completion: let 'ls-files' and 'diff-index' filter matching paths
        completion: improve handling quoted paths on the command line
        completion: support completing non-ASCII pathnames
        completion: simplify prefix path component handling during path completion
        completion: move __git_complete_index_file() next to its helpers
        t9902-completion: add tests demonstrating issues with quoted pathnames
      4ce72180
    • J
      Merge branch 'nd/travis-gcc-8' · 6105fee3
      Junio C Hamano 提交于
      Developer support.  Use newer GCC on one of the builds done at
      TravisCI.org to get more warnings and errors diagnosed.
      
      * nd/travis-gcc-8:
        travis-ci: run gcc-8 on linux-gcc jobs
      6105fee3
    • J
      Merge branch 'nd/pack-struct-commit' · a4eae17c
      Junio C Hamano 提交于
      Memory optimization.
      
      * nd/pack-struct-commit:
        commit.h: rearrange 'index' to shrink struct commit
      a4eae17c
    • J
      Merge branch 'ma/create-pseudoref-with-null-old-oid' · 26597cb0
      Junio C Hamano 提交于
      "git update-ref A B" is supposed to ensure that ref A does not yet
      exist when B is a NULL OID, but this check was not done correctly
      for pseudo-refs outside refs/ hierarchy, e.g. MERGE_HEAD.
      
      * ma/create-pseudoref-with-null-old-oid:
        refs: handle zero oid for pseudorefs
        t1400: add tests around adding/deleting pseudorefs
        refs.c: refer to "object ID", not "sha1", in error messages
      26597cb0
    • J
      Merge branch 'jk/unavailable-can-be-missing' · cf315793
      Junio C Hamano 提交于
      Code clean-up to turn history traversal more robust in a
      semi-corrupt repository.
      
      * jk/unavailable-can-be-missing:
        mark_parents_uninteresting(): avoid most allocation
        mark_parents_uninteresting(): replace list with stack
        mark_parents_uninteresting(): drop missing object check
        mark_tree_contents_uninteresting(): drop missing object check
      cf315793
    • J
      Merge branch 'bp/status-rename-config' · 5da4847d
      Junio C Hamano 提交于
      "git status" learned to honor a new status.renames configuration to
      skip rename detection, which could be useful for those who want to
      do so without disabling the default rename detection done by the
      "git diff" command.
      
      * bp/status-rename-config:
        add status config and command line options for rename detection
      5da4847d
    • J
      Merge branch 'js/use-bug-macro' · 50f08db5
      Junio C Hamano 提交于
      Developer support update, by using BUG() macro instead of die() to
      mark codepaths that should not happen more clearly.
      
      * js/use-bug-macro:
        BUG_exit_code: fix sparse "symbol not declared" warning
        Convert remaining die*(BUG) messages
        Replace all die("BUG: ...") calls by BUG() ones
        run-command: use BUG() to report bugs, not die()
        test-tool: help verifying BUG() code paths
      50f08db5
    • J
      Merge branch 'rs/no-null-ptr-arith-in-fast-export' · bef896e4
      Junio C Hamano 提交于
      Code clean-up to avoid non-standard-conformant pointer arithmetic.
      
      * rs/no-null-ptr-arith-in-fast-export:
        fast-export: avoid NULL pointer arithmetic
      bef896e4
    • J
      Merge branch 'nd/repo-clear-keep-the-index' · 0abb9628
      Junio C Hamano 提交于
      the_repository->index is not a allocated piece of memory but
      repo_clear() indiscriminately attempted to free(3) it, which has
      been corrected.
      
      * nd/repo-clear-keep-the-index:
        repository: fix free problem with repo_clear(the_repository)
      0abb9628
    • J
      Merge branch 'ma/lockfile-cleanup' · 2f76ebc9
      Junio C Hamano 提交于
      Code clean-up to adjust to a more recent lockfile API convention that
      allows lockfile instances kept on the stack.
      
      * ma/lockfile-cleanup:
        lock_file: move static locks into functions
        lock_file: make function-local locks non-static
        refs.c: do not die if locking fails in `delete_pseudoref()`
        refs.c: do not die if locking fails in `write_pseudoref()`
        t/helper/test-write-cache: clean up lock-handling
      2f76ebc9
    • J
      Merge branch 'sg/t6500-no-redirect-of-stdin' · 0e7af5f6
      Junio C Hamano 提交于
      Test cleanup.
      
      * sg/t6500-no-redirect-of-stdin:
        t6050-replace: don't disable stdin for the whole test script
      0e7af5f6
    • J
      Merge branch 'bp/merge-rename-config' · 6e2ba77b
      Junio C Hamano 提交于
      With merge.renames configuration set to false, the recursive merge
      strategy can be told not to spend cycles trying to find renamed
      paths and merge them accordingly.
      
      * bp/merge-rename-config:
        merge: pass aggressive when rename detection is turned off
        merge: add merge.renames config setting
        merge: update documentation for {merge,diff}.renameLimit
      6e2ba77b
    • J
      Merge branch 'js/sequencer-and-root-commits' · c5aa4bcc
      Junio C Hamano 提交于
      The implementation of "git rebase -i --root" has been updated to use
      the sequencer machinery more.
      
      * js/sequencer-and-root-commits:
        rebase --rebase-merges: root commits can be cousins, too
        rebase --rebase-merges: a "merge" into a new root is a fast-forward
        sequencer: allow introducing new root commits
        rebase -i --root: let the sequencer handle even the initial part
        sequencer: learn about the special "fake root commit" handling
        sequencer: extract helper to update active_cache_tree
      c5aa4bcc
    • J
      Merge branch 'dd/send-email-reedit' · 89be19d7
      Junio C Hamano 提交于
      "git send-email" can sometimes offer confirmation dialog "Send this
      email?" with choices 'Yes', 'No', 'Quit', and 'All'.  A new action
      'Edit' has been added to this dialog's choice.
      
      * dd/send-email-reedit:
        git-send-email: allow re-editing of message
      89be19d7
  5. 29 5月, 2018 1 次提交
    • J
      Sync with Git 2.17.1 · 7913f53b
      Junio C Hamano 提交于
      * maint: (25 commits)
        Git 2.17.1
        Git 2.16.4
        Git 2.15.2
        Git 2.14.4
        Git 2.13.7
        fsck: complain when .gitmodules is a symlink
        index-pack: check .gitmodules files with --strict
        unpack-objects: call fsck_finish() after fscking objects
        fsck: call fsck_finish() after fscking objects
        fsck: check .gitmodules content
        fsck: handle promisor objects in .gitmodules check
        fsck: detect gitmodules files
        fsck: actually fsck blob data
        fsck: simplify ".git" check
        index-pack: make fsck error message more specific
        verify_path: disallow symlinks in .gitmodules
        update-index: stat updated files earlier
        verify_dotfile: mention case-insensitivity in comment
        verify_path: drop clever fallthrough
        skip_prefix: add case-insensitive variant
        ...
      7913f53b