1. 26 6月, 2014 20 次提交
    • J
      Merge branch 'rs/pack-objects-no-unnecessary-realloc' into maint · 5327207e
      Junio C Hamano 提交于
      "git pack-objects" unnecessarily copied the previous contents when
      extending the hashtable, even though it will populate the table
      from scratch anyway.
      
      * rs/pack-objects-no-unnecessary-realloc:
        pack-objects: use free()+xcalloc() instead of xrealloc()+memset()
      5327207e
    • J
      Merge branch 'dt/merge-recursive-case-insensitive' into maint · 5fa38cc3
      Junio C Hamano 提交于
      On a case insensitive filesystem, merge-recursive incorrectly
      deleted the file that is to be renamed to a name that is the same
      except for case differences.
      
      * dt/merge-recursive-case-insensitive:
        mv: allow renaming to fix case on case insensitive filesystems
        merge-recursive.c: fix case-changing merge bug
      5fa38cc3
    • J
      Merge branch 'rs/mailinfo-header-cmp' into maint · ed5d0d21
      Junio C Hamano 提交于
      "git mailinfo" used to read beyond the end of header string while
      parsing an incoming e-mail message to extract the patch.
      
      * rs/mailinfo-header-cmp:
        mailinfo: use strcmp() for string comparison
      ed5d0d21
    • J
      Merge branch 'jk/index-pack-report-missing' into maint · 182c3d69
      Junio C Hamano 提交于
      The error reporting from "git index-pack" has been improved to
      distinguish missing objects from type errors.
      
      * jk/index-pack-report-missing:
        index-pack: distinguish missing objects from type errors
      182c3d69
    • J
      Merge branch 'nd/index-pack-one-fd-per-thread' into maint · a9041df7
      Junio C Hamano 提交于
      We used to disable threaded "git index-pack" on platforms without
      thread-safe pread(); use a different workaround for such
      platforms to allow threaded "git index-pack".
      
      * nd/index-pack-one-fd-per-thread:
        index-pack: work around thread-unsafe pread()
      a9041df7
    • J
      Merge branch 'sk/spawn-less-case-insensitively-from-grep-O-i' into maint · 75b1b04c
      Junio C Hamano 提交于
      "git grep -O" to show the lines that hit in the pager did not work
      well with case insensitive search.  We now spawn "less" with its
      "-I" option when it is used as the pager (which is the default).
      
      * sk/spawn-less-case-insensitively-from-grep-O-i:
        git grep -O -i: if the pager is 'less', pass the '-I' option
      75b1b04c
    • J
      Merge branch 'nd/daemonize-gc' into maint · 94c734a6
      Junio C Hamano 提交于
      "git gc --auto" was recently changed to run in the background to
      give control back early to the end-user sitting in front of the
      terminal, but it forgot that housekeeping involving reflogs should
      be done without other processes competing for accesses to the refs.
      
      * nd/daemonize-gc:
        gc --auto: do not lock refs in the background
      94c734a6
    • J
      Merge branch 'jk/diff-follow-must-take-one-pathspec' into maint · cb4575fb
      Junio C Hamano 提交于
      "git format-patch" did not enforce the rule that the "--follow"
      option from the log/diff family of commands must be used with
      exactly one pathspec.
      
      * jk/diff-follow-must-take-one-pathspec:
        move "--follow needs one pathspec" rule to diff_setup_done
      cb4575fb
    • J
      Merge branch 'jk/diff-files-assume-unchanged' into maint · 11aae3e1
      Junio C Hamano 提交于
      "git diff --find-copies-harder" sometimes pretended as if the mode
      bits have changed for paths that are marked with assume-unchanged
      bit.
      
      * jk/diff-files-assume-unchanged:
        run_diff_files: do not look at uninitialized stat data
      11aae3e1
    • J
      Merge branch 'jk/commit-C-pick-empty' into maint · b659f810
      Junio C Hamano 提交于
      "git commit --allow-empty-message -C $commit" did not work when the
      commit did not have any log message.
      
      * jk/commit-C-pick-empty:
        commit: do not complain of empty messages from -C
      b659f810
    • J
      Merge branch 'bc/blame-crlf-test' into maint · 4d27d8cb
      Junio C Hamano 提交于
      "git blame" assigned the blame to the copy in the working-tree if
      the repository is set to core.autocrlf=input and the file used CRLF
      line endings.
      
      * bc/blame-crlf-test:
        blame: correctly handle files regardless of autocrlf
      4d27d8cb
    • J
      Merge branch 'jx/blame-align-relative-time' into maint · 6bf84263
      Junio C Hamano 提交于
      "git blame" miscounted number of columns needed to show localized
      timestamps, resulting in jaggy left-side-edge of the source code
      lines in its output.
      
      * jx/blame-align-relative-time:
        blame: dynamic blame_date_width for different locales
        blame: fix broken time_buf paddings in relative timestamp
      6bf84263
    • J
      Merge branch 'jc/apply-ignore-whitespace' into maint · c122c9a9
      Junio C Hamano 提交于
      "--ignore-space-change" option of "git apply" ignored the spaces
      at the beginning of line too aggressively, which is inconsistent
      with the option of the same name "diff" and "git diff" have.
      
      * jc/apply-ignore-whitespace:
        apply --ignore-space-change: lines with and without leading whitespaces do not match
      c122c9a9
    • J
      Merge branch 'jk/complete-merge-pull' into maint · ff7e96b7
      Junio C Hamano 提交于
      The completion scripts (in contrib/) did not know about quite a few
      options that are common between "git merge" and "git pull", and a
      couple of options unique to "git merge".
      
      * jk/complete-merge-pull:
        completion: add missing options for git-merge
        completion: add a note that merge options are shared
      ff7e96b7
    • J
      Merge branch 'ow/config-mailmap-pathname' into maint · fbfdf13b
      Junio C Hamano 提交于
      The "mailmap.file" configuration option did not support the tilde
      expansion (i.e. ~user/path and ~/path).
      
      * ow/config-mailmap-pathname:
        config: respect '~' and '~user' in mailmap.file
      fbfdf13b
    • J
      Merge branch 'as/pretty-truncate' into maint · ad5d8939
      Junio C Hamano 提交于
      The "%<(10,trunc)%s" pretty format specifier in the log family of
      commands is used to truncate the string to a given length (e.g. 10
      in the example) with padding to column-align the output, but did
      not take into account that number of bytes and number of display
      columns are different.
      
      * as/pretty-truncate:
        pretty.c: format string with truncate respects logOutputEncoding
        t4205, t6006: add tests that fail with i18n.logOutputEncoding set
        t4205 (log-pretty-format): use `tformat` rather than `format`
        t4041, t4205, t6006, t7102: don't hardcode tested encoding value
        t4205 (log-pretty-formats): don't hardcode SHA-1 in expected outputs
      ad5d8939
    • J
      Merge branch 'jc/revision-dash-count-parsing' into maint · 91043fc9
      Junio C Hamano 提交于
      "git log -2master" is a common typo that shows two commits starting
      from whichever random branch that is not 'master' that happens to
      be checked out currently.
      
      * jc/revision-dash-count-parsing:
        revision: parse "git log -<count>" more carefully
      91043fc9
    • J
      Merge branch 'jk/report-fail-to-read-objects-better' into maint · 81bd9b10
      Junio C Hamano 提交于
      Reworded the error message given upon a failure to open an existing
      loose object file due to e.g. permission issues; it was reported as
      the object being corrupt, but that is not quite true.
      
      * jk/report-fail-to-read-objects-better:
        open_sha1_file: report "most interesting" errno
      81bd9b10
    • J
      Merge branch 'mn/sideband-no-ansi' into maint · 73505ef7
      Junio C Hamano 提交于
      Tools that read diagnostic output in our standard error stream do
      not want to see terminal control sequence (e.g. erase-to-eol).
      Detect them by checking if the standard error stream is connected
      to a tty.
      
      * mn/sideband-no-ansi:
        sideband.c: do not use ANSI control sequence on non-terminal
      73505ef7
    • J
      Merge branch 'je/pager-do-not-recurse' into maint · e293c563
      Junio C Hamano 提交于
      We used to unconditionally disable the pager in the pager process
      we spawn to feed out output, but that prevented people who want to
      run "less" within "less" from doing so.
      
      * je/pager-do-not-recurse:
        pager: do allow spawning pager recursively
      e293c563
  2. 13 6月, 2014 2 次提交
  3. 10 6月, 2014 1 次提交
  4. 05 6月, 2014 1 次提交
    • J
      update-index: fix segfault with missing --cacheinfo argument · c8e1ee4f
      Jeff King 提交于
      Running "git update-index --cacheinfo" without any further
      arguments results in a segfault rather than an error
      message. Commit ec160ae1 (update-index: teach --cacheinfo a
      new syntax "mode,sha1,path", 2014-03-23) added code to
      examine the format of the argument, but forgot to handle the
      NULL case.
      
      Returning an error from the parser is enough, since we then
      treat it as an old-style "--cacheinfo <mode> <sha1> <path>",
      and complain that we have less than 3 arguments to read.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      c8e1ee4f
  5. 03 6月, 2014 3 次提交
    • R
      pack-objects: use free()+xcalloc() instead of xrealloc()+memset() · fb799474
      René Scharfe 提交于
      Whenever the hash table becomes too small then its size is increased,
      the original part (and the added space) is zerod out using memset(),
      and the table is rebuilt from scratch.
      
      Simplify this proceess by returning the old memory using free() and
      allocating the new buffer using xcalloc(), which already clears the
      buffer for us.  That way we avoid copying the old hash table contents
      needlessly inside xrealloc().
      
      While at it, use the first array member with sizeof instead of a
      specific type.  The old code used uint32_t and int, while index is
      actually an array of int32_t.  Their sizes are the same basically
      everywhere, so it's not actually a problem, but the new code is
      cleaner and doesn't have to be touched should the type be changed.
      Signed-off-by: NRene Scharfe <l.s.r@web.de>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      fb799474
    • R
      mailinfo: use strcmp() for string comparison · b1a013dd
      René Scharfe 提交于
      The array header is defined as:
      
      	static const char *header[MAX_HDR_PARSED] = {
      	     "From","Subject","Date",
      	};
      
      When looking for the index of a specfic string in that array, simply
      use strcmp() instead of memcmp().  This avoids running over the end of
      the string (e.g. with memcmp("Subject", "From", 7)) and gets rid of
      magic string length constants.
      Signed-off-by: NRene Scharfe <l.s.r@web.de>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      b1a013dd
    • M
      sideband.c: do not use ANSI control sequence on non-terminal · 38de156a
      Michael Naumov 提交于
      Diagnostic messages received on the sideband #2 from the server side
      are sent to the standard error with ANSI terminal control sequence
      "\033[K" that erases to the end of line appended at the end of each
      line.
      
      However, some programs (e.g. GitExtensions for Windows) read and
      interpret and/or show the message without understanding the terminal
      control sequences, resulting them to be shown to their end users.
      To help these programs, squelch the control sequence when the
      standard error stream is not being sent to a tty.
      
      NOTE: I considered to cover the case that a pager has already been
      started. But decided that is probably not worth worrying about here,
      though, as we shouldn't be using a pager for commands that do network
      communications (and if we do, omitting the magic line-clearing signal
      is probably a sane thing to do).
      
      Thanks-to: Erik Faye-Lund <kusmabite@gmail.com>
      Thanks-to: Jeff King <peff@peff.net>
      Signed-off-by: NMichael Naumov <mnaoumov@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      38de156a
  6. 31 5月, 2014 3 次提交
    • J
      Sync with 1.9.4 · bce14aa1
      Junio C Hamano 提交于
      bce14aa1
    • J
      Git 1.9.4 · 34d52175
      Junio C Hamano 提交于
      This is expected to be the final maintenance release for 1.9 series,
      merging the remaining fixes that are relevant and are already in 2.0.
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      34d52175
    • J
      t5537: re-drop http tests · d7172825
      Jeff King 提交于
      These were originally removed by 0232852b (t5537: move
      http tests out to t5539, 2014-02-13). However, they were
      accidentally re-added in 1ddb4d7e (Merge branch
      'nd/upload-pack-shallow', 2014-03-21).
      
      This looks like an error in manual conflict resolution.
      Here's what happened:
      
        1. v1.9.0 shipped with the http tests in t5537.
      
        2. We realized that this caused problems, and built
           0232852b on top to move the tests to their own file.
           This fix made it into v1.9.1.
      
        3. We later had another fix in nd/upload-pack-shallow that
           also touched t5537. It was built directly on v1.9.0.
      
      When we merged nd/upload-pack-shallow to master, we got a
      conflict; it was built on a version with the http tests, but
      we had since removed them. The correct resolution was to
      drop the http tests and keep the new ones, but instead we
      kept everything.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      d7172825
  7. 29 5月, 2014 3 次提交
    • J
      Merge branch 'rh/prompt-pcmode-avoid-eval-on-refname' into maint · 12188a82
      Junio C Hamano 提交于
      * rh/prompt-pcmode-avoid-eval-on-refname:
        git-prompt.sh: don't assume the shell expands the value of PS1
      12188a82
    • J
      Merge branch 'mw/symlinks' into maint · 64d8c31e
      Junio C Hamano 提交于
      * mw/symlinks:
        setup: fix windows path buffer over-stepping
        setup: don't dereference in-tree symlinks for absolute paths
        setup: add abspath_part_inside_repo() function
        t0060: add tests for prefix_path when path begins with work tree
        t0060: add test for prefix_path when path == work tree
        t0060: add test for prefix_path on symlinks via absolute paths
        t3004: add test for ls-files on symlinks via absolute paths
      64d8c31e
    • J
      Git 2.0 · e156455e
      Junio C Hamano 提交于
      e156455e
  8. 28 5月, 2014 4 次提交
  9. 22 5月, 2014 3 次提交