1. 19 5月, 2019 6 次提交
    • J
      Merge branch 'ab/perf-installed-fix' · 82dca958
      Junio C Hamano 提交于
      Performance test framework has been broken and measured the version
      of Git that happens to be on $PATH, not the specified one to
      measure, for a while, which has been corrected.
      
      * ab/perf-installed-fix:
        perf-lib.sh: forbid the use of GIT_TEST_INSTALLED
        perf tests: add "bindir" prefix to git tree test results
        perf-lib.sh: remove GIT_TEST_INSTALLED from perf-lib.sh
        perf-lib.sh: make "./run <revisions>" use the correct gits
        perf aggregate: remove GIT_TEST_INSTALLED from --codespeed
        perf README: correct docs for 3c8f12c9 regression
      82dca958
    • J
      Merge branch 'id/windows-dep-aslr' · f42bee7d
      Junio C Hamano 提交于
      Allow DEP and ASLR for Windows build to for security hardening.
      
      * id/windows-dep-aslr:
        mingw: enable DEP and ASLR
        mingw: do not let ld strip relocations
      f42bee7d
    • J
      Merge branch 'ab/trace2-typofix' · d66da839
      Junio C Hamano 提交于
      Typofix.
      
      * ab/trace2-typofix:
        trace2: fix up a missing "leave" entry point
      d66da839
    • J
      Merge branch 'nd/submodule-helper-incomplete-line-fix' · 195d7999
      Junio C Hamano 提交于
      Typofix.
      
      * nd/submodule-helper-incomplete-line-fix:
        submodule--helper: add a missing \n
      195d7999
    • J
      Merge branch 'cw/diff-highlight' · 18cfb74f
      Junio C Hamano 提交于
      Portability fix for a diff-highlight tool (in contrib/).
      
      * cw/diff-highlight:
        diff-highlight: use correct /dev/null for UNIX and Windows
      18cfb74f
    • J
      Merge branch 'dl/warn-tagging-a-tag' · 1294160b
      Junio C Hamano 提交于
      Typofix.
      
      * dl/warn-tagging-a-tag:
        tag: fix typo in nested tagging hint
      1294160b
  2. 13 5月, 2019 17 次提交
    • J
      Git 2.22-rc0 · ab15ad1a
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      ab15ad1a
    • J
      Merge branch 'jh/trace2' · 49bc8ce5
      Junio C Hamano 提交于
      A few embarrassing bugfixes.
      
      * jh/trace2:
        trace2: fix up a missing "leave" entry point
        trace2: fix incorrect function pointer check
      49bc8ce5
    • J
      Merge branch 'cc/access-on-aix-workaround' · 40bef499
      Junio C Hamano 提交于
      Workaround for standard-compliant but less-than-useful behaviour of
      access(2) for the root user.
      
      * cc/access-on-aix-workaround:
        git-compat-util: work around for access(X_OK) under root
      40bef499
    • J
      Merge branch 'pw/clean-sequencer-state-upon-final-commit' · b51a0fdc
      Junio C Hamano 提交于
      "git chery-pick" (and "revert" that shares the same runtime engine)
      that deals with multiple commits got confused when the final step
      gets stopped with a conflict and the user concluded the sequence
      with "git commit".  Attempt to fix it by cleaning up the state
      files used by these commands in such a situation.
      
      * pw/clean-sequencer-state-upon-final-commit:
        fix cherry-pick/revert status after commit
        commit/reset: try to clean up sequencer state
      b51a0fdc
    • J
      Merge branch 'pw/rebase-i-internal' · 7ba06bc3
      Junio C Hamano 提交于
      The internal implementation of "git rebase -i" has been updated to
      avoid forking a separate "rebase--interactive" process.
      
      * pw/rebase-i-internal:
        rebase -i: run without forking rebase--interactive
        rebase: use a common action enum
        rebase -i: use struct rebase_options in do_interactive_rebase()
        rebase -i: use struct rebase_options to parse args
        rebase -i: use struct object_id for squash_onto
        rebase -i: use struct commit when parsing options
        rebase -i: remove duplication
        rebase -i: combine rebase--interactive.c with rebase.c
        rebase: use OPT_RERERE_AUTOUPDATE()
        rebase: rename write_basic_state()
        rebase: don't translate trace strings
        sequencer: always discard index after checkout
      7ba06bc3
    • J
      Merge branch 'jk/perf-aggregate-wo-libjson' · 6cfa6335
      Junio C Hamano 提交于
      The script to aggregate perf result unconditionally depended on
      libjson-perl even though it did not have to, which has been
      corrected.
      
      * jk/perf-aggregate-wo-libjson:
        t/perf: depend on perl JSON only when using --codespeed
      6cfa6335
    • J
      Merge branch 'dl/rev-tilde-doc-clarify' · 7a188da3
      Junio C Hamano 提交于
      Docfix.
      
      * dl/rev-tilde-doc-clarify:
        revisions.txt: remove ambibuity between <rev>:<path> and :<path>
        revisions.txt: mention <rev>~ form
        revisions.txt: mark optional rev arguments with []
        revisions.txt: change "rev" to "<rev>"
      7a188da3
    • J
      Merge branch 'jc/make-dedup-ls-files-output' · a505f62f
      Junio C Hamano 提交于
      A "ls-files" that emulates "find" to enumerate files in the working
      tree resulted in duplicated Makefile rules that caused the build to
      issue an unnecessary warning during a trial build after merge
      conflicts are resolved in working tree *.h files but before the
      resolved results are added to the index.  This has been corrected.
      
      * jc/make-dedup-ls-files-output:
        Makefile: dedup list of files obtained from ls-files
      a505f62f
    • J
      Merge branch 'jk/ls-files-doc-markup-fix' · 8293ee05
      Junio C Hamano 提交于
      Docfix.
      
      * jk/ls-files-doc-markup-fix:
        doc/ls-files: put nested list for "-t" option into block
      8293ee05
    • J
      Merge branch 'jk/p5302-avoid-collision-check-cost' · e7a1b38f
      Junio C Hamano 提交于
      Fix index-pack perf test so that the repeated invocations always
      run in an empty repository, which emulates the initial clone
      situation better.
      
      * jk/p5302-avoid-collision-check-cost:
        p5302: create the repo in each index-pack test
      e7a1b38f
    • J
      Merge branch 'dl/no-extern-in-func-decl' · 4aeeef37
      Junio C Hamano 提交于
      Mechanically and systematically drop "extern" from function
      declarlation.
      
      * dl/no-extern-in-func-decl:
        *.[ch]: manually align parameter lists
        *.[ch]: remove extern from function declarations using sed
        *.[ch]: remove extern from function declarations using spatch
      4aeeef37
    • J
      Merge branch 'ew/repack-with-bitmaps-by-default' · 2bfb182b
      Junio C Hamano 提交于
      The connectivity bitmaps are created by default in bare
      repositories now; also the pathname hash-cache is created by
      default to avoid making crappy deltas when repacking.
      
      * ew/repack-with-bitmaps-by-default:
        pack-objects: default to writing bitmap hash-cache
        t5310: correctly remove bitmaps for jgit test
        repack: enable bitmaps by default on bare repos
      2bfb182b
    • J
      Merge branch 'js/partial-clone-connectivity-check' · 5b51f0d3
      Junio C Hamano 提交于
      During an initial "git clone --depth=..." partial clone, it is
      pointless to spend cycles for a large portion of the connectivity
      check that enumerates and skips promisor objects (which by
      definition is all objects fetched from the other side).  This has
      been optimized out.
      
      * js/partial-clone-connectivity-check:
        t/perf: add perf script for partial clones
        clone: do faster object check for partial clones
      5b51f0d3
    • J
      Merge branch 'jh/trace2-sid-fix' · 5b2d1c0c
      Junio C Hamano 提交于
      Polishing of the new trace2 facility continues.  The system-level
      configuration can specify site-wide trace2 settings, which can be
      overridden with per-user configuration and environment variables.
      
      * jh/trace2-sid-fix:
        trace2: fixup access problem on /etc/gitconfig in read_very_early_config
        trace2: update docs to describe system/global config settings
        trace2: make SIDs more unique
        trace2: clarify UTC datetime formatting
        trace2: report peak memory usage of the process
        trace2: use system/global config for default trace2 settings
        config: add read_very_early_config()
        trace2: find exec-dir before trace2 initialization
        trace2: add absolute elapsed time to start event
        trace2: refactor setting process starting time
        config: initialize opts structure in repo_read_config()
      5b2d1c0c
    • Æ
      trace2: fix up a missing "leave" entry point · 7fef4e3e
      Ævar Arnfjörð Bjarmason 提交于
      Fix a trivial bug that's been here since the shared/do_write_index
      tracing was added in 42fee7a3 ("trace2:data: add trace2
      instrumentation to index read/write", 2019-02-22). We should have
      enter/leave points, not two enter/enter points. This resulted in an
      "enter" event without a corresponding "leave" event.
      Signed-off-by: NÆvar Arnfjörð Bjarmason <avarab@gmail.com>
      Acked-by: NDerrick Stolee <dstolee@microsoft.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      7fef4e3e
    • İ
      mingw: enable DEP and ASLR · ce6a1585
      İsmail Dönmez 提交于
      Enable DEP (Data Execution Prevention) and ASLR (Address Space Layout
      Randomization) support. This applies to both 32bit and 64bit builds
      and makes it substantially harder to exploit security holes in Git by
      offering a much more unpredictable attack surface.
      
      ASLR interferes with GDB's ability to set breakpoints. A similar issue
      holds true when compiling with -O2 (in which case single-stepping is
      messed up because GDB cannot map the code back to the original source
      code properly). Therefore we simply enable ASLR only when an
      optimization flag is present in the CFLAGS, using it as an indicator
      that the developer does not want to debug in GDB anyway.
      Signed-off-by: Nİsmail Dönmez <ismail@i10z.com>
      Signed-off-by: NJohannes Schindelin <johannes.schindelin@gmx.de>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      ce6a1585
    • İ
      mingw: do not let ld strip relocations · 598b6c3a
      İsmail Dönmez 提交于
      This is the first step for enabling ASLR (Address Space Layout
      Randomization) support. We want to enable ASLR for better protection
      against exploiting security holes in Git: it makes it harder to attack
      software by making code addresses unpredictable.
      
      The problem fixed by this commit is that `ld.exe` seems to be stripping
      relocations which in turn will break ASLR support. We just make sure
      it's not stripping the main executable entry.
      Signed-off-by: Nİsmail Dönmez <ismail@i10z.com>
      Signed-off-by: NJohannes Schindelin <johannes.schindelin@gmx.de>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      598b6c3a
  3. 10 5月, 2019 1 次提交
  4. 09 5月, 2019 2 次提交
  5. 08 5月, 2019 14 次提交
    • J
      The eighth batch · 6a6c0f10
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      6a6c0f10
    • J
      Merge branch 'vk/autoconf-gettext' · f832bccd
      Junio C Hamano 提交于
      The autoconf generated configure script failed to use the right
      gettext() implementations from -libintl by ignoring useless stub
      implementations shipped in some C library, which has been
      corrected.
      
      * vk/autoconf-gettext:
        autoconf: #include <libintl.h> when checking for gettext()
      f832bccd
    • J
      Merge branch 'cc/aix-has-fileno-as-a-macro' · 1ff440fb
      Junio C Hamano 提交于
      AIX shared the same build issues with other BSDs around fileno(fp),
      which has been corrected.
      
      * cc/aix-has-fileno-as-a-macro:
        Makefile: use fileno macro work around on AIX
      1ff440fb
    • J
      Merge branch 'jt/submodule-repo-is-with-worktree' · ec2642a2
      Junio C Hamano 提交于
      The logic to tell if a Git repository has a working tree protects
      "git branch -D" from removing the branch that is currently checked
      out by mistake.  The implementation of this logic was broken for
      repositories with unusual name, which unfortunately is the norm for
      submodules these days.  This has been fixed.
      
      * jt/submodule-repo-is-with-worktree:
        worktree: update is_bare heuristics
      ec2642a2
    • 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