1. 21 7月, 2017 2 次提交
  2. 19 7月, 2017 5 次提交
    • J
      A few more topics before 2.14-rc1 · cac25fc3
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      cac25fc3
    • J
      Merge branch 'jk/gc-pre-detach-under-hook' · 764046f6
      Junio C Hamano 提交于
      We run an early part of "git gc" that deals with refs before
      daemonising (and not under lock) even when running a background
      auto-gc, which caused multiple gc processes attempting to run the
      early part at the same time.  This is now prevented by running the
      early part also under the GC lock.
      
      * jk/gc-pre-detach-under-hook:
        gc: run pre-detach operations under lock
      764046f6
    • J
      Merge branch 'jn/hooks-pre-rebase-sample-fix' · 11157492
      Junio C Hamano 提交于
      Code clean-up, that makes us in sync with Debian by one patch.
      
      * jn/hooks-pre-rebase-sample-fix:
        pre-rebase hook: capture documentation in a <<here document
      11157492
    • J
      Merge branch 'rs/progress-overall-throughput-at-the-end' · a11ab576
      Junio C Hamano 提交于
      The progress meter did not give a useful output when we haven't had
      0.5 seconds to measure the throughput during the interval.  Instead
      show the overall throughput rate at the end, which is a much more
      useful number.
      
      * rs/progress-overall-throughput-at-the-end:
        progress: show overall rate in last update
      a11ab576
    • J
      Merge branch 'tb/push-to-cygwin-unc-path' · 33400c0e
      Junio C Hamano 提交于
      On Cygwin, similar to Windows, "git push //server/share/repository"
      ought to mean a repository on a network share that can be accessed
      locally, but this did not work correctly due to stripping the double
      slashes at the beginning.
      
      This may need to be heavily tested before it gets unleashed to the
      wild, as the change is at a fairly low-level code and would affect
      not just the code to decide if the push destination is local.  There
      may be unexpected fallouts in the path normalization.
      
      * tb/push-to-cygwin-unc-path:
        cygwin: allow pushing to UNC paths
      33400c0e
  3. 14 7月, 2017 5 次提交
    • J
      Git 2.14-rc0 · f3da2b79
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      f3da2b79
    • J
      Merge branch 'jk/build-with-asan' · 757e9874
      Junio C Hamano 提交于
      The build procedure has been improved to allow building and testing
      Git with address sanitizer more easily.
      
      * jk/build-with-asan:
        Makefile: disable unaligned loads with UBSan
        Makefile: turn off -fomit-frame-pointer with sanitizers
        Makefile: add helper for compiling with -fsanitize
        test-lib: turn on ASan abort_on_error by default
        test-lib: set ASAN_OPTIONS variable before we run git
      757e9874
    • J
      Merge branch 'sb/pull-rebase-submodule' · c9c63ee5
      Junio C Hamano 提交于
      "git pull --rebase --recurse-submodules" learns to rebase the
      branch in the submodules to an updated base.
      
      * sb/pull-rebase-submodule:
        builtin/fetch cleanup: always set default value for submodule recursing
        pull: optionally rebase submodules (remote submodule changes only)
        builtin/fetch: parse recurse-submodules-default at default options parsing
        builtin/fetch: factor submodule recurse parsing out to submodule config
      c9c63ee5
    • J
      Merge branch 'sb/hashmap-customize-comparison' · 91f69225
      Junio C Hamano 提交于
      Update the hashmap API so that data to customize the behaviour of
      the comparison function can be specified at the time a hashmap is
      initialized.
      
      * sb/hashmap-customize-comparison:
        hashmap: migrate documentation from Documentation/technical into header
        patch-ids.c: use hashmap correctly
        hashmap.h: compare function has access to a data field
      91f69225
    • J
      Merge branch 'ab/grep-lose-opt-regflags' · eac97b43
      Junio C Hamano 提交于
      Code cleanup.
      
      * ab/grep-lose-opt-regflags:
        grep: remove redundant REG_NEWLINE when compiling fixed regex
        grep: remove regflags from the public grep_opt API
        grep: remove redundant and verbose re-assignments to 0
        grep: remove redundant "fixed" field re-assignment to 0
        grep: adjust a redundant grep pattern type assignment
        grep: remove redundant double assignment to 0
      eac97b43
  4. 13 7月, 2017 14 次提交
    • J
      Sync with v2.13.3 · 80145b1e
      Junio C Hamano 提交于
      80145b1e
    • J
      Git 2.13.3 · 08f9c324
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      08f9c324
    • J
      Merge branch 'kn/ref-filter-branch-list' into maint · 55bdfa02
      Junio C Hamano 提交于
      The rewrite of "git branch --list" using for-each-ref's internals
      that happened in v2.13 regressed its handling of color.branch.local;
      this has been fixed.
      
      * kn/ref-filter-branch-list:
        ref-filter.c: drop return from void function
        branch: set remote color in ref-filter branch immediately
        branch: use BRANCH_COLOR_LOCAL in ref-filter format
        branch: only perform HEAD check for local branches
      55bdfa02
    • J
      Merge branch 'ks/typofix-commit-c-comment' into maint · ecab58c6
      Junio C Hamano 提交于
      Typofix.
      
      * ks/typofix-commit-c-comment:
        builtin/commit.c: fix a typo in the comment
      ecab58c6
    • J
      Merge branch 'jk/reflog-walk-maint' into maint · 9d21a968
      Junio C Hamano 提交于
      After "git branch --move" of the currently checked out branch, the
      code to walk the reflog of HEAD via "log -g" and friends
      incorrectly stopped at the reflog entry that records the renaming
      of the branch.
      
      * jk/reflog-walk-maint:
        reflog-walk: include all fields when freeing complete_reflogs
        reflog-walk: don't free reflogs added to cache
        reflog-walk: duplicate strings in complete_reflogs list
        reflog-walk: skip over double-null oid due to HEAD rename
      9d21a968
    • J
      Hopefully the last batch before -rc0 · 8ba1d661
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      8ba1d661
    • J
      Merge branch 'ks/fix-rebase-doc-picture' · a5a3c5af
      Junio C Hamano 提交于
      Doc update.
      
      * ks/fix-rebase-doc-picture:
        doc: correct a mistake in an illustration
      a5a3c5af
    • J
      Merge branch 'rs/wt-status-cleanup' · 094aa09a
      Junio C Hamano 提交于
      Code cleanup.
      
      * rs/wt-status-cleanup:
        wt-status: use separate variable for result of shorten_unambiguous_ref
      094aa09a
    • J
      Merge branch 'rs/use-div-round-up' · f056cde6
      Junio C Hamano 提交于
      Code cleanup.
      
      * rs/use-div-round-up:
        use DIV_ROUND_UP
      f056cde6
    • J
      Merge branch 'kn/ref-filter-branch-list' · 768d0fe0
      Junio C Hamano 提交于
      The rewrite of "git branch --list" using for-each-ref's internals
      that happened in v2.13 regressed its handling of color.branch.local;
      this has been fixed.
      
      * kn/ref-filter-branch-list:
        ref-filter.c: drop return from void function
        branch: set remote color in ref-filter branch immediately
        branch: use BRANCH_COLOR_LOCAL in ref-filter format
        branch: only perform HEAD check for local branches
      768d0fe0
    • J
      Merge branch 'rs/urlmatch-cleanup' · 536c1ec3
      Junio C Hamano 提交于
      Code cleanup.
      
      * rs/urlmatch-cleanup:
        urlmatch: use hex2chr() in append_normalized_escapes()
      536c1ec3
    • J
      Merge branch 'rs/apply-avoid-over-reading' · 6fee4ca6
      Junio C Hamano 提交于
      Code cleanup.
      
      * rs/apply-avoid-over-reading:
        apply: use strcmp(3) for comparing strings in gitdiff_verify_name()
      6fee4ca6
    • J
      Merge branch 'sb/submodule-doc' · b5fe65fe
      Junio C Hamano 提交于
      Doc update.
      
      * sb/submodule-doc:
        submodules: overhaul documentation
      b5fe65fe
    • J
      gc: run pre-detach operations under lock · c45af94d
      Jeff King 提交于
      We normally try to avoid having two auto-gc operations run
      at the same time, because it wastes resources. This was done
      long ago in 64a99eb4 (gc: reject if another gc is running,
      unless --force is given, 2013-08-08).
      
      When we do a detached auto-gc, we run the ref-related
      commands _before_ detaching, to avoid confusing lock
      contention. This was done by 62aad184 (gc --auto: do not
      lock refs in the background, 2014-05-25).
      
      These two features do not interact well. The pre-detach
      operations are run before we check the gc.pid lock, meaning
      that on a busy repository we may run many of them
      concurrently. Ideally we'd take the lock before spawning any
      operations, and hold it for the duration of the program.
      
      This is tricky, though, with the way the pid-file interacts
      with the daemonize() process.  Other processes will check
      that the pid recorded in the pid-file still exists. But
      detaching causes us to fork and continue running under a
      new pid. So if we take the lock before detaching, the
      pid-file will have a bogus pid in it. We'd have to go back
      and update it with the new pid after detaching. We'd also
      have to play some tricks with the tempfile subsystem to
      tweak the "owner" field, so that the parent process does not
      clean it up on exit, but the child process does.
      
      Instead, we can do something a bit simpler: take the lock
      only for the duration of the pre-detach work, then detach,
      then take it again for the post-detach work. Technically,
      this means that the post-detach lock could lose to another
      process doing pre-detach work. But in the long run this
      works out.
      
      That second process would then follow-up by doing
      post-detach work. Unless it was in turn blocked by a third
      process doing pre-detach work, and so on. This could in
      theory go on indefinitely, as the pre-detach work does not
      repack, and so need_to_gc() will continue to trigger.  But
      in each round we are racing between the pre- and post-detach
      locks. Eventually, one of the post-detach locks will win the
      race and complete the full gc. So in the worst case, we may
      racily repeat the pre-detach work, but we would never do so
      simultaneously (it would happen via a sequence of serialized
      race-wins).
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      c45af94d
  5. 11 7月, 2017 14 次提交