1. 26 3月, 2013 28 次提交
    • J
      Merge branch 'jk/fast-export-object-lookup' · 4e38e9b1
      Junio C Hamano 提交于
      * jk/fast-export-object-lookup:
        fast-export: do not load blob objects twice
        fast-export: rename handle_object function
      4e38e9b1
    • J
      Merge branch 'jk/peel-ref' · 62bd0c01
      Junio C Hamano 提交于
      Recent optimization broke shallow clones.
      
      * jk/peel-ref:
        upload-pack: load non-tip "want" objects from disk
        upload-pack: make sure "want" objects are parsed
        upload-pack: drop lookup-before-parse optimization
      62bd0c01
    • J
      Merge branch 'lf/setup-prefix-pathspec' · 51ebd0fe
      Junio C Hamano 提交于
      "git cmd -- ':(top'" was not diagnosed as an invalid syntax, and
      instead the parser kept reading beyond the end of the string.
      
      * lf/setup-prefix-pathspec:
        setup.c: check that the pathspec magic ends with ")"
        setup.c: stop prefix_pathspec() from looping past the end of string
      51ebd0fe
    • J
      Merge branch 'ph/tag-force-no-warn-on-creation' · 33c1506d
      Junio C Hamano 提交于
      "git tag -f <tag>" always said "Updated tag '<tag>'" even when
      creating a new tag (i.e. not overwriting nor updating).
      
      * ph/tag-force-no-warn-on-creation:
        tag: --force does not have to warn when creating tags
      33c1506d
    • J
      Merge branch 'mg/unsigned-time-t' · f10a0120
      Junio C Hamano 提交于
      A few workarounds for systems with unsigned time_t.
      
      * mg/unsigned-time-t:
        Fix time offset calculation in case of unsigned time_t
        date.c: fix unsigned time_t comparison
      f10a0120
    • J
      Merge branch 'jk/suppress-clang-warning' · edb99f95
      Junio C Hamano 提交于
      * jk/suppress-clang-warning:
        fix clang -Wtautological-compare with unsigned enum
      edb99f95
    • J
      Merge branch 'pw/p4-symlinked-root' · 9b12c6ed
      Junio C Hamano 提交于
      "git p4" did not behave well when the path to the root of the P4
      client was not its real path.
      
      * pw/p4-symlinked-root:
        git p4: avoid expanding client paths in chdir
        git p4 test: should honor symlink in p4 client root
        git p4 test: make sure P4CONFIG relative path works
      9b12c6ed
    • J
      Merge branch 'jk/empty-archive' · 63868f63
      Junio C Hamano 提交于
      "git archive" reports a failure when asked to create an archive out
      of an empty tree.  It would be more intuitive to give an empty
      archive back in such a case.
      
      * jk/empty-archive:
        archive: handle commits with an empty tree
        test-lib: factor out $GIT_UNZIP setup
      63868f63
    • J
      Merge branch 'ks/rfc2047-one-char-at-a-time' · 573f1a9c
      Junio C Hamano 提交于
      When "format-patch" quoted a non-ascii strings on the header files,
      it incorrectly applied rfc2047 and chopped a single character in
      the middle of it.
      
      * ks/rfc2047-one-char-at-a-time:
        format-patch: RFC 2047 says multi-octet character may not be split
      573f1a9c
    • J
      Merge branch 'jk/alias-in-bare' · fb3b7b1f
      Junio C Hamano 提交于
      An aliased command spawned from a bare repository that does not say
      it is bare with "core.bare = yes" is treated as non-bare by mistake.
      
      * jk/alias-in-bare:
        setup: suppress implicit "." work-tree for bare repos
        environment: add GIT_PREFIX to local_repo_env
        cache.h: drop LOCAL_REPO_ENV_SIZE
      fb3b7b1f
    • J
      Merge branch 'jc/push-follow-tag' · 55f6fbef
      Junio C Hamano 提交于
      The new "--follow-tags" option tells "git push" to push relevant
      annotated tags when pushing branches out.
      
      * jc/push-follow-tag:
        push: --follow-tags
        commit.c: use clear_commit_marks_many() in in_merge_bases_many()
        commit.c: add in_merge_bases_many()
        commit.c: add clear_commit_marks_many()
      55f6fbef
    • J
      Merge branch 'jc/maint-reflog-expire-clean-mark-typofix' · 212ca64f
      Junio C Hamano 提交于
      In "git reflog expire", REACHABLE bit was not cleared from the
      correct objects.
      
      * jc/maint-reflog-expire-clean-mark-typofix:
        reflog: fix typo in "reflog expire" clean-up codepath
      212ca64f
    • J
      Merge branch 'ap/maint-diff-rename-avoid-overlap' · caf217a3
      Junio C Hamano 提交于
      The logic used by "git diff -M --stat" to shorten the names of
      files before and after a rename did not work correctly when the
      common prefix and suffix between the two filenames overlapped.
      
      * ap/maint-diff-rename-avoid-overlap:
        tests: make sure rename pretty print works
        diff: prevent pprint_rename from underrunning input
        diff: Fix rename pretty-print when suffix and prefix overlap
      caf217a3
    • J
      Merge branch 'jl/submodule-deinit' · b03b41e2
      Junio C Hamano 提交于
      There was no Porcelain way to say "I no longer am interested in
      this submodule", once you express your interest in a submodule with
      "submodule init".  "submodule deinit" is the way to do so.
      
      * jl/submodule-deinit:
        submodule: add 'deinit' command
      b03b41e2
    • J
      Merge branch 'jc/describe' · 4744b337
      Junio C Hamano 提交于
      The "--match=<pattern>" option of "git describe", when used with
      "--all" to allow refs that are not annotated tags to be used as a
      base of description, did not restrict the output from the command
      to those that match the given pattern.
      
      We may want to have a looser matching that does not restrict to tags,
      but that can be done as a follow-up topic; this step is purely a bugfix.
      
      * jc/describe:
        describe: --match=<pattern> must limit the refs even when used with --all
      4744b337
    • J
      Merge branch 'pe/pull-rebase-v-q' · a8aa3600
      Junio C Hamano 提交于
      Teach "git pull --rebase" to pass "-v/-q" command line options to
      underlying "git rebase".
      
      * pe/pull-rebase-v-q:
        pull: Apply -q and -v options to rebase mode as well
      a8aa3600
    • J
      Merge branch 'maint' · cd04c522
      Junio C Hamano 提交于
      * maint:
        Start preparing for 1.8.2.1
        transport.c: help gcc 4.6.3 users by squelching compiler warning
      cd04c522
    • J
      Start preparing for 1.8.2.1 · 1252f8b2
      Junio C Hamano 提交于
      ... at the same time, preparation for 1.8.1.6 also has started ;-)
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      1252f8b2
    • J
      Merge branch 'jk/graph-c-expose-symbols-for-cgit' into maint · 25396a53
      Junio C Hamano 提交于
      In the v1.8.0 era, we changed symbols that do not have to be global
      to file scope static, but a few functions in graph.c were used by
      CGit from sideways bypassing the entry points of the API the
      in-tree users use.
      
      * jk/graph-c-expose-symbols-for-cgit:
        Revert "graph.c: mark private file-scope symbols as static"
      25396a53
    • J
      Merge branch 'maint-1.8.1' into maint · f7b1ad87
      Junio C Hamano 提交于
      * maint-1.8.1:
        bundle: Add colons to list headings in "verify"
        bundle: Fix "verify" output if history is complete
        Documentation: filter-branch env-filter example
        git-filter-branch.txt: clarify ident variables usage
        git-compat-util.h: Provide missing netdb.h definitions
        describe: Document --match pattern format
        Documentation/githooks: Explain pre-rebase parameters
        update-index: list supported idx versions and their features
        diff-options: unconfuse description of --color
        read-cache.c: use INDEX_FORMAT_{LB,UB} in verify_hdr()
        index-format.txt: mention of v4 is missing in some places
      f7b1ad87
    • J
      Merge branch 'lf/bundle-verify-list-prereqs' into maint-1.8.1 · 7c1017d2
      Junio C Hamano 提交于
      "git bundle verify" did not say "records a complete history" for a
      bundle that does not have any prerequisites.
      
      * lf/bundle-verify-list-prereqs:
        bundle: Add colons to list headings in "verify"
        bundle: Fix "verify" output if history is complete
      7c1017d2
    • J
      Merge branch 'tk/doc-filter-branch' into maint-1.8.1 · a12816b7
      Junio C Hamano 提交于
      Add an example use of "--env-filter" in "filter-branch"
      documentation.
      
      * tk/doc-filter-branch:
        Documentation: filter-branch env-filter example
        git-filter-branch.txt: clarify ident variables usage
      a12816b7
    • J
      Merge branch 'dm/ni-maxhost-may-be-missing' into maint-1.8.1 · 2b0dda53
      Junio C Hamano 提交于
      Some sources failed to compile on systems that lack NI_MAXHOST in
      their system header.
      
      * dm/ni-maxhost-may-be-missing:
        git-compat-util.h: Provide missing netdb.h definitions
      2b0dda53
    • J
      Merge branch 'gp/describe-match-uses-glob-pattern' into maint-1.8.1 · 402c2a7e
      Junio C Hamano 提交于
      The "--match=<pattern>" argument "git describe" takes uses glob
      pattern but it wasn't obvious from the documentation.
      
      * gp/describe-match-uses-glob-pattern:
        describe: Document --match pattern format
      402c2a7e
    • J
      Merge branch 'nd/doc-index-format' into maint-1.8.1 · a7b6ad5e
      Junio C Hamano 提交于
      The v4 index format was not documented.
      
      * nd/doc-index-format:
        update-index: list supported idx versions and their features
        read-cache.c: use INDEX_FORMAT_{LB,UB} in verify_hdr()
        index-format.txt: mention of v4 is missing in some places
      a7b6ad5e
    • J
      Merge branch 'wk/doc-pre-rebase' into maint-1.8.1 · 8ddd9c18
      Junio C Hamano 提交于
      The arguments given to pre-rebase hook were not documented.
      
      * wk/doc-pre-rebase:
        Documentation/githooks: Explain pre-rebase parameters
      8ddd9c18
    • J
      Merge branch 'jc/color-diff-doc' into maint-1.8.1 · 82b955c5
      Junio C Hamano 提交于
      The "--color=<when>" argument to the commands in the diff family
      was described poorly.
      
      * jc/color-diff-doc:
        diff-options: unconfuse description of --color
      82b955c5
    • J
      transport.c: help gcc 4.6.3 users by squelching compiler warning · 04fe1184
      Junio C Hamano 提交于
      To a human reader, it is quite obvious that cmp is assigned before
      it is used, but gcc 4.6.3 that ships with Ubuntu 12.04 is among
      those that do not get this right.
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      04fe1184
  2. 22 3月, 2013 12 次提交
    • J
      Update draft release notes to 1.8.3 · 7b592fad
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      7b592fad
    • J
      Merge branch 'maint' · 328455fc
      Junio C Hamano 提交于
      * maint:
        diff.c: diff.renamelimit => diff.renameLimit in message
        wt-status: fix possible use of uninitialized variable
        fast-import: clarify "inline" logic in file_change_m
        run-command: always set failed_errno in start_command
        transport: drop "int cmp = cmp" hack
        drop some obsolete "x = x" compiler warning hacks
        fast-import: use pointer-to-pointer to keep list tail
      328455fc
    • M
      diff.c: diff.renamelimit => diff.renameLimit in message · c9fc4415
      Max Nanasy 提交于
      In the warning message printed when rename or unmodified copy
      detection was skipped due to too many files, change "diff.renamelimit"
      to "diff.renameLimit", in order to make it consistent with git
      documentation, which consistently uses "diff.renameLimit".
      Signed-off-by: NMax Nanasy <max.nanasy@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      c9fc4415
    • J
      wt-status: fix possible use of uninitialized variable · b8527d5f
      Jeff King 提交于
      In wt_status_print_change_data, we accept a change_type flag
      that is meant to be either WT_STATUS_UPDATED or
      WT_STATUS_CHANGED.  We then switch() on this value to set
      the local variable "status" for each case, but do not
      provide a fallback "default" label to the switch statement.
      
      As a result, the compiler realizes that "status" might be
      unset, and complains with a warning. To silence this
      warning, we use the "int status = status" trick.  This is
      correct with the current code, as all callers provide one of
      the two expected change_type flags. However, it's also a
      maintenance trap, as there is nothing to prevent future
      callers from passing another flag, nor to document this
      assumption.
      
      Instead of using the "x = x" hack, let's handle the default
      case in the switch() statement with a die("BUG"). That tells
      the compiler and any readers of the code exactly what the
      function's input assumptions are.
      
      We could also convert the flag to an enum, which would
      provide a compile-time check on the function input. However,
      since these flags are part of a larger enum, that would make
      the code unnecessarily complex (we would have to make a new
      enum with just the two flags, and then convert it to the old
      enum for passing to sub-functions).
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      b8527d5f
    • J
      fast-import: clarify "inline" logic in file_change_m · 3aa99df8
      Jeff King 提交于
      When we read a fast-import line like:
      
        M 100644 :1 foo.c
      
      we point the local object_entry variable "oe" to the object
      named by the mark ":1". When the input uses the "inline"
      construct, however, we do not have such an object_entry.
      
      The current code is careful not to access "oe" in the inline
      case, but we can make the assumption even more obvious (and
      catch violations of it) by setting oe to NULL and adding a
      comment. As a bonus, this also squelches an over-zealous gcc
      -Wuninitialized warning, which means we can drop the "oe =
      oe" initialization hack.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      3aa99df8
    • J
      run-command: always set failed_errno in start_command · 25043d8a
      Jeff King 提交于
      When we fail to fork, we set the failed_errno variable to
      the value of errno so it is not clobbered by later syscalls.
      However, we do so in a conditional, and it is hard to see
      later under what conditions the variable has a valid value.
      
      Instead of setting it only when fork fails, let's just
      always set it after forking. This is more obvious for human
      readers (as we are no longer setting it as a side effect of
      a strerror call), and it is more obvious to gcc, which no
      longer generates a spurious -Wuninitialized warning. It also
      happens to match what the WIN32 half of the #ifdef does.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      25043d8a
    • J
      transport: drop "int cmp = cmp" hack · c5d5c9a9
      Jeff King 提交于
      According to 47ec7943, this initialization is meant to
      squelch an erroneous uninitialized variable warning from gcc
      4.0.1.  That version is quite old at this point, and gcc 4.1
      and up handle it fine, with one exception. There seems to be
      a regression in gcc 4.6.3, which produces the warning;
      however, gcc versions 4.4.7 and 4.7.2 do not.
      Signed-off-by: NJeff King <peff@peff.net>
      Reviewed-by: NJonathan Nieder <jrnieder@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      c5d5c9a9
    • J
      drop some obsolete "x = x" compiler warning hacks · cbfd5e1c
      Jeff King 提交于
      In cases where the setting and access of a variable are
      protected by the same conditional flag, older versions of
      gcc would generate a "might be used unitialized" warning. We
      silence the warning by initializing the variable to itself,
      a hack that gcc recognizes.
      
      Modern versions of gcc are smart enough to get this right,
      going back to at least version 4.3.5. gcc 4.1 does get it
      wrong in both cases, but is sufficiently old that we
      probably don't need to care about it anymore.
      Signed-off-by: NJeff King <peff@peff.net>
      Reviewed-by: NJonathan Nieder <jrnieder@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      cbfd5e1c
    • J
      fast-import: use pointer-to-pointer to keep list tail · 4db34cc1
      Jeff King 提交于
      This is shorter, idiomatic, and it means the compiler does
      not get confused about whether our "e" pointer is valid,
      letting us drop the "e = e" hack.
      Signed-off-by: NJeff King <peff@peff.net>
      Reviewed-by: NJonathan Nieder <jrnieder@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      4db34cc1
    • J
      Merge branch 'we/submodule-update-prefix-output' · 28ed8d7b
      Junio C Hamano 提交于
      "git submodule update", when recursed into sub-submodules, did not
      acccumulate the prefix paths.
      
      * we/submodule-update-prefix-output:
        submodule update: when using recursion, show full path
      28ed8d7b
    • J
      Merge branch 'jk/mailsplit-maildir-muttsort' · 8115c938
      Junio C Hamano 提交于
      Sort filenames read from the maildir/ in a way that is more likely
      to sort messages in the order the writing MUA meant to, by sorting
      numeric segment in numeric order and non-numeric segment in
      alphabetical order.
      
      * jk/mailsplit-maildir-muttsort:
        mailsplit: sort maildir filenames more cleverly
      8115c938
    • J
      Merge branch 'rs/zip-compresssed-size-with-export-subst' · e9bebbb6
      Junio C Hamano 提交于
      When export-subst is used, "zip" output recorded incorrect
      size of the file.
      
      * rs/zip-compresssed-size-with-export-subst:
        archive-zip: fix compressed size for stored export-subst files
      e9bebbb6