1. 26 5月, 2017 2 次提交
    • N
      use xfopen() in more places · 23a9e071
      Nguyễn Thái Ngọc Duy 提交于
      xfopen()
      
       - provides error details
       - explains error on reading, or writing, or whatever operation
       - has l10n support
       - prints file name in the error
      
      Some of these are missing in the places that are replaced with xfopen(),
      which is a clear win. In some other places, it's just less code (not as
      clearly a win as the previous case but still is).
      
      The only slight regresssion is in remote-testsvn, where we don't report
      the file class (marks files) in the error messages anymore. But since
      this is a _test_ svn remote transport, I'm not too concerned.
      Signed-off-by: NNguyễn Thái Ngọc Duy <pclouds@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      23a9e071
    • R
      git_fopen: fix a sparse 'not declared' warning · b0a642ac
      Ramsay Jones 提交于
      If git is built with the FREAD_READS_DIRECTORIES build variable set, this
      would cause sparse to issue a 'not declared, should it be static?' warning
      on Linux. This is a result of the method employed by 'compat/fopen.c' to
      suppress the (possible) redefinition of the (system) fopen macro, which
      also removes the extern declaration of the git_fopen function.
      
      In order to suppress the warning, introduce a new macro to suppress the
      definition (or possibly the re-definition) of the fopen symbol as a macro
      override. This new macro (SUPPRESS_FOPEN_REDEFINITION) is only defined in
      'compat/fopen.c', just prior to the inclusion of the 'git-compat-util.h'
      header file.
      Signed-off-by: NRamsay Jones <ramsay@ramsayjones.plus.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      b0a642ac
  2. 01 5月, 2017 8 次提交
  3. 27 4月, 2017 3 次提交
  4. 26 4月, 2017 17 次提交
    • J
      Git 2.13-rc1 · 027a3b94
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      027a3b94
    • J
      Merge branch 'mh/separate-ref-cache' · 77b34eaa
      Junio C Hamano 提交于
      The internals of the refs API around the cached refs has been
      streamlined.
      
      * mh/separate-ref-cache:
        do_for_each_entry_in_dir(): delete function
        files_pack_refs(): use reference iteration
        commit_packed_refs(): use reference iteration
        cache_ref_iterator_begin(): make function smarter
        get_loose_ref_cache(): new function
        get_loose_ref_dir(): function renamed from get_loose_refs()
        do_for_each_entry_in_dir(): eliminate `offset` argument
        refs: handle "refs/bisect/" in `loose_fill_ref_dir()`
        ref-cache: use a callback function to fill the cache
        refs: record the ref_store in ref_cache, not ref_dir
        ref-cache: introduce a new type, ref_cache
        refs: split `ref_cache` code into separate files
        ref-cache: rename `remove_entry()` to `remove_entry_from_dir()`
        ref-cache: rename `find_ref()` to `find_ref_entry()`
        ref-cache: rename `add_ref()` to `add_ref_entry()`
        refs_verify_refname_available(): use function in more places
        refs_verify_refname_available(): implement once for all backends
        refs_ref_iterator_begin(): new function
        refs_read_raw_ref(): new function
        get_ref_dir(): don't call read_loose_refs() for "refs/bisect"
      77b34eaa
    • J
      Merge branch 'nd/worktree-add-lock' · e3115974
      Junio C Hamano 提交于
      Allow to lock a worktree immediately after it's created. This helps
      prevent a race between "git worktree add; git worktree lock" and
      "git worktree prune".
      
      * nd/worktree-add-lock:
        worktree add: add --lock option
      e3115974
    • J
      Merge branch 'jk/update-links-in-docs' · 7ba7bff6
      Junio C Hamano 提交于
      Many stale HTTP(s) links have been updated in our documentation.
      
      * jk/update-links-in-docs:
        docs/bisect-lk2009: update java code conventions link
        docs/bisect-lk2009: update nist report link
        docs/archimport: quote sourcecontrol.net reference
        gitcore-tutorial: update broken link
        doc: replace or.cz gitwiki link with git.wiki.kernel.org
        doc: use https links to avoid http redirect
      7ba7bff6
    • J
      Merge branch 'sf/putty-w-args' · d4592d73
      Junio C Hamano 提交于
      Plug a memleak.
      
      * sf/putty-w-args:
        connect.c: fix leak in handle_ssh_variant
      d4592d73
    • J
      Merge branch 'ab/completion-push-delete-ref' · f70b5411
      Junio C Hamano 提交于
      The completion script (in contrib/) learned to complete "git push
      --delete b<TAB>" to complete branch name to be deleted.
      
      * ab/completion-push-delete-ref:
        completion: expand "push --delete <remote> <ref>" for refs on that <remote>
      f70b5411
    • J
      Merge branch 'cc/split-index-config' · 3961c516
      Junio C Hamano 提交于
      The split-index code configuration code used an unsafe git_path()
      function without copying its result out.
      
      * cc/split-index-config:
        read-cache: avoid using git_path() in freshen_shared_index()
      3961c516
    • J
      Merge branch 'jk/war-on-git-path' · b80f629f
      Junio C Hamano 提交于
      While handy, "git_path()" is a dangerous function to use as a
      callsite that uses it safely one day can be broken by changes
      to other code that calls it.  Reduction of its use continues.
      
      * jk/war-on-git-path:
        am: drop "dir" parameter from am_state_init
        replace strbuf_addstr(git_path()) with git_path_buf()
        replace xstrdup(git_path(...)) with git_pathdup(...)
        use git_path_* helper functions
        branch: add edit_description() helper
        bisect: add git_path_bisect_terms helper
      b80f629f
    • J
      Merge branch 'jh/add-index-entry-optim' · 6cbc478d
      Junio C Hamano 提交于
      "git checkout" that handles a lot of paths has been optimized by
      reducing the number of unnecessary checks of paths in the
      has_dir_name() function.
      
      * jh/add-index-entry-optim:
        read-cache: speed up has_dir_name (part 2)
        read-cache: speed up has_dir_name (part 1)
        read-cache: speed up add_index_entry during checkout
        p0006-read-tree-checkout: perf test to time read-tree
        read-cache: add strcmp_offset function
      6cbc478d
    • J
      Merge branch 'ss/submodule-shallow-doc' · 864033a3
      Junio C Hamano 提交于
      Doc update.
      
      * ss/submodule-shallow-doc:
        gitmodules: clarify what history depth a shallow clone has
      864033a3
    • J
      Merge branch 'ss/gitmodules-ignore-doc' · 3c2312e0
      Junio C Hamano 提交于
      Doc update.
      
      * ss/gitmodules-ignore-doc:
        gitmodules: clarify the ignore option values
      3c2312e0
    • J
      Merge branch 'nd/conditional-config-in-early-config' · c9672ba4
      Junio C Hamano 提交于
      The recently introduced conditional inclusion of configuration did
      not work well when early-config mechanism was involved.
      
      * nd/conditional-config-in-early-config:
        config: correct file reading order in read_early_config()
        config: handle conditional include when $GIT_DIR is not set up
        config: prepare to pass more info in git_config_with_options()
      c9672ba4
    • J
      Merge branch 'ab/push-cas-doc-n-test' · 46bdfa39
      Junio C Hamano 提交于
      Doc update.
      
      * ab/push-cas-doc-n-test:
        push: document & test --force-with-lease with multiple remotes
      46bdfa39
    • J
      Merge branch 'ls/travis-coccicheck' · fa86d5ce
      Junio C Hamano 提交于
      Travis CI learns to run coccicheck.
      
      * ls/travis-coccicheck:
        travis-ci: add static analysis build job to run coccicheck
      fa86d5ce
    • J
      Merge branch 'ps/pathspec-empty-prefix-origin' · 44427a0c
      Junio C Hamano 提交于
      A recent update broke "git add -p ../foo" from a subdirectory.
      
      * ps/pathspec-empty-prefix-origin:
        pathspec: honor `PATHSPEC_PREFIX_ORIGIN` with empty prefix
      44427a0c
    • J
      Merge branch 'pc/t2027-git-to-pipe-cleanup' · da4c6007
      Junio C Hamano 提交于
      Having a git command on the upstream side of a pipe in a test
      script will hide the exit status from the command, which may cause
      us to fail to notice a breakage; rewrite tests in a script to avoid
      this issue.
      
      * pc/t2027-git-to-pipe-cleanup:
        t2027: avoid using pipes
      da4c6007
    • J
      Merge branch 'gb/rebase-signoff' · 768c7cb7
      Junio C Hamano 提交于
      "git rebase" learns "--signoff" option.
      
      * gb/rebase-signoff:
        rebase: pass --[no-]signoff option to git am
        builtin/am: fold am_signoff() into am_append_signoff()
        builtin/am: honor --signoff also when --rebasing
      768c7cb7
  5. 25 4月, 2017 2 次提交
    • J
      prio_queue_reverse: don't swap elements with themselves · 1f9e18b7
      Jeff King 提交于
      Our array-reverse algorithm does the usual "walk from both
      ends, swapping elements". We can quit when the two indices
      are equal, since:
      
        1. Swapping an element with itself is a noop.
      
        2. If i and j are equal, then in the next iteration i is
           guaranteed to be bigge than j, and we will exit the
           loop.
      
      So exiting the loop on equality is slightly more efficient.
      And more importantly, the new SWAP() macro does not expect
      to handle noop swaps; it will call memcpy() with the same src
      and dst pointers in this case. It's unclear whether that
      causes a problem on any platforms by violating the
      "overlapping memory" constraint of memcpy, but it does cause
      valgrind to complain.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      1f9e18b7
    • J
      submodule_init: die cleanly on submodules without url defined · 627fde10
      Jeff King 提交于
      When we init a submodule, we try to die when it has no URL
      defined:
      
        url = xstrdup(sub->url);
        if (!url)
      	  die(...);
      
      But that's clearly nonsense. xstrdup() will never return
      NULL, and if sub->url is NULL, we'll segfault.
      
      These two bits of code need to be flipped, so we check
      sub->url before looking at it.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      627fde10
  6. 24 4月, 2017 8 次提交
    • J
      Getting ready for -rc1 · e2cb6ab8
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      e2cb6ab8
    • J
      Merge branch 'dt/xgethostname-nul-termination' · 5938454c
      Junio C Hamano 提交于
      gethostname(2) may not NUL terminate the buffer if hostname does
      not fit; unfortunately there is no easy way to see if our buffer
      was too small, but at least this will make sure we will not end up
      using garbage past the end of the buffer.
      
      * dt/xgethostname-nul-termination:
        xgethostname: handle long hostnames
        use HOST_NAME_MAX to size buffers for gethostname(2)
      5938454c
    • J
      Merge branch 'jk/ls-files-recurse-submodules-fix' · 2d646e3e
      Junio C Hamano 提交于
      "ls-files --recurse-submodules" did not quite work well in a
      project with nested submodules.
      
      * jk/ls-files-recurse-submodules-fix:
        ls-files: fix path used when recursing into submodules
        ls-files: fix recurse-submodules with nested submodules
      2d646e3e
    • J
      Merge branch 'rs/misc-cppcheck-fixes' · f9096db5
      Junio C Hamano 提交于
      Various small fixes.
      
      * rs/misc-cppcheck-fixes:
        server-info: avoid calling fclose(3) twice in update_info_file()
        files_for_each_reflog_ent_reverse(): close stream and free strbuf on error
        am: close stream on error, but not stdin
      f9096db5
    • J
      Merge branch 'jk/snprintf-cleanups' · a507115e
      Junio C Hamano 提交于
      Hotfix for a topic that is already in 'master'.
      
      * jk/snprintf-cleanups:
        replace: plug a memory leak
      a507115e
    • J
      Merge branch 'xy/format-patch-base' · 2cef68f8
      Junio C Hamano 提交于
      Doc cleanup.
      
      * xy/format-patch-base:
        doc: trivial typo in git-format-patch.txt
      2cef68f8
    • J
      Merge branch 'sb/checkout-recurse-submodules' · 5000cd45
      Junio C Hamano 提交于
      Code cleanup.
      
      * sb/checkout-recurse-submodules:
        submodule: remove a superfluous second check for the "new" variable
      5000cd45
    • J
      Merge branch 'jt/fetch-pack-error-reporting' · d2617eb9
      Junio C Hamano 提交于
      "git fetch-pack" was not prepared to accept ERR packet that the
      upload-pack can send with a human-readable error message.  It
      showed the packet contents with ERR prefix, so there was no data
      loss, but it was redundant to say "ERR" in an error message.
      
      * jt/fetch-pack-error-reporting:
        fetch-pack: show clearer error message upon ERR
      d2617eb9