1. 13 12月, 2013 1 次提交
    • J
      Merge branch 'mh/fetch-tags-in-addition-to-normal-refs' · e66ef7ae
      Junio C Hamano 提交于
      The "--tags" option to "git fetch" used to be literally a synonym to
      a "refs/tags/*:refs/tags/*" refspec, which meant that (1) as an
      explicit refspec given from the command line, it silenced the lazy
      "git fetch" default that is configured, and (2) also as an explicit
      refspec given from the command line, it interacted with "--prune"
      to remove any tag that the remote we are fetching from does not
      have.
      
      This demotes it to an option; with it, we fetch all tags in
      addition to what would be fetched without the option, and it does
      not interact with the decision "--prune" makes to see what
      remote-tracking refs the local has are missing the remote
      counterpart.
      
      * mh/fetch-tags-in-addition-to-normal-refs: (23 commits)
        fetch: improve the error messages emitted for conflicting refspecs
        handle_duplicate(): mark error message for translation
        ref_remote_duplicates(): extract a function handle_duplicate()
        ref_remove_duplicates(): simplify loop logic
        t5536: new test of refspec conflicts when fetching
        ref_remove_duplicates(): avoid redundant bisection
        git-fetch.txt: improve description of tag auto-following
        fetch-options.txt: simplify ifdef/ifndef/endif usage
        fetch, remote: properly convey --no-prune options to subprocesses
        builtin/remote.c:update(): use struct argv_array
        builtin/remote.c: reorder function definitions
        query_refspecs(): move some constants out of the loop
        fetch --prune: prune only based on explicit refspecs
        fetch --tags: fetch tags *in addition to* other stuff
        fetch: only opportunistically update references based on command line
        get_expanded_map(): avoid memory leak
        get_expanded_map(): add docstring
        builtin/fetch.c: reorder function definitions
        get_ref_map(): rename local variables
        api-remote.txt: correct section "struct refspec"
        ...
      e66ef7ae
  2. 10 12月, 2013 2 次提交
    • J
      Merge git://repo.or.cz/git-gui · 3d252a9c
      Junio C Hamano 提交于
      * git://repo.or.cz/git-gui:
        git-gui: correct spelling errors in comments
        git-gui: add menu item to launch a bash shell on Windows.
        git-gui: corrected setup of git worktree under cygwin.
        git-gui: right half window is paned
        git-gui: Add gui.displayuntracked option
        git-gui: show the maxrecentrepo config option in the preferences dialog
        git-gui: added gui.maxrecentrepo to extend the number of remembered repos
        git-gui: Improve font rendering on retina macbooks
      3d252a9c
    • J
      Merge git://ozlabs.org/~paulus/gitk · ec418bcf
      Junio C Hamano 提交于
      * git://ozlabs.org/~paulus/gitk:
        gitk: Recognize -L option
        gitk: Support showing the gathered inline diffs
        gitk: Split out diff part in $commitinfo
        gitk: Refactor per-line part of getblobdiffline and its support
        gitk: Support -G option from the command line
        gitk: Tag display improvements
      ec418bcf
  3. 07 12月, 2013 7 次提交
    • J
      Start 1.9 cycle · 077f4344
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      077f4344
    • J
      Merge branch 'jk/remove-experimental-loose-object-support' · dd1cec57
      Junio C Hamano 提交于
      * jk/remove-experimental-loose-object-support:
        drop support for "experimental" loose objects
      dd1cec57
    • J
      Merge branch 'nd/magic-pathspec' · e2bcd4f7
      Junio C Hamano 提交于
      "git diff -- ':(icase)makefile'" were rejected unnecessarily.
      This needs to be merged to 'maint' later.
      
      * nd/magic-pathspec:
        diff: restrict pathspec limitations to diff b/f case only
      e2bcd4f7
    • J
      Merge branch 'rr/for-each-ref-decoration' · cb6bd572
      Junio C Hamano 提交于
      Add a few formatting directives to "git for-each-ref --format=...",
      to paint them in color, etc.
      
      * rr/for-each-ref-decoration:
        for-each-ref: avoid color leakage
        for-each-ref: introduce %(color:...) for color
        for-each-ref: introduce %(upstream:track[short])
        for-each-ref: introduce %(HEAD) asterisk marker
        t6300 (for-each-ref): don't hardcode SHA-1 hexes
        t6300 (for-each-ref): clearly demarcate setup
      cb6bd572
    • J
      Merge branch 'jc/bundle' · 10a36382
      Junio C Hamano 提交于
      Code clean-up.
      
      * jc/bundle:
        bundle: use argv-array
      10a36382
    • J
      Merge branch 'rh/remote-hg-bzr-updates' · ef63eb55
      Junio C Hamano 提交于
      Updates to remote-bzr and remote-hg in contrib.
      
      * rh/remote-hg-bzr-updates:
        remote-bzr, remote-hg: fix email address regular expression
        test-hg.sh: help user correlate verbose output with email test
        test-hg.sh: fix duplicate content strings in author tests
        test-hg.sh: avoid obsolete 'test' syntax
        test-hg.sh: eliminate 'local' bashism
        test-bzr.sh, test-hg.sh: prepare for change to push.default=simple
        test-bzr.sh, test-hg.sh: allow running from any dir
        test-lib.sh: convert $TEST_DIRECTORY to an absolute path
      ef63eb55
    • J
      Merge branch 'jn/perl-lib-extra' · 128c5d07
      Junio C Hamano 提交于
      Allow customizing the paths to Perl modules with the new
      PERLLIB_EXTRA makefile variable.
      
      * jn/perl-lib-extra:
        Makefile: add PERLLIB_EXTRA variable that adds to default perl path
        Makefile: rebuild perl scripts when perl paths change
      128c5d07
  4. 06 12月, 2013 14 次提交
    • J
      Merge branch 'gj/push-more-verbose-advice' (early part) · b00d2440
      Junio C Hamano 提交于
      * 'gj/push-more-verbose-advice' (early part):
        push: enhance unspecified push default warning
      b00d2440
    • J
      Merge branch 'jn/mediawiki-makefile-updates' · 968182a4
      Junio C Hamano 提交于
      Build and installation procedure clean-up.
      
      * jn/mediawiki-makefile-updates:
        git-remote-mediawiki build: handle DESTDIR/INSTLIBDIR with whitespace
        git-remote-mediawiki build: make 'install' command configurable
        git-remote-mediawiki: honor DESTDIR in "make install"
        git-remote-mediawiki: do not remove installed files in "clean" target
      968182a4
    • J
      Merge branch 'jl/submodule-update-retire-orig-flags' · c83386d1
      Junio C Hamano 提交于
      Code clean-up.
      
      * jl/submodule-update-retire-orig-flags:
        submodule update: remove unnecessary orig_flags variable
      c83386d1
    • J
      Merge branch 'nd/wt-status-align-i18n' · c3dc3827
      Junio C Hamano 提交于
      An attempt to automatically align the names in the "git status"
      output, taking the display width of (translated) section labels
      into account.
      
      * nd/wt-status-align-i18n:
        wt-status: take the alignment burden off translators
      c3dc3827
    • J
      Merge branch 'sb/sha1-loose-object-info-check-existence' · c17fa972
      Junio C Hamano 提交于
      "git cat-file --batch-check=ok" did not check the existence of the
      named object.
      
      * sb/sha1-loose-object-info-check-existence:
        sha1_loose_object_info(): do not return success on missing object
      c17fa972
    • J
      Merge branch 'jk/two-way-merge-corner-case-fix' · 39795802
      Junio C Hamano 提交于
      Fix a rather longstanding corner-case bug in twoway "reset to
      there" merge, which is most often seen in "git am --abort".
      
      * jk/two-way-merge-corner-case-fix:
        t1005: add test for "read-tree --reset -u A B"
        t1005: reindent
        unpack-trees: fix "read-tree -u --reset A B" with conflicted index
      39795802
    • J
      Merge branch 'jc/ref-excludes' · 10167eb2
      Junio C Hamano 提交于
      People often wished a way to tell "git log --branches" (and "git
      log --remotes --not --branches") to exclude some local branches
      from the expansion of "--branches" (similarly for "--tags", "--all"
      and "--glob=<pattern>").  Now they have one.
      
      * jc/ref-excludes:
        rev-parse: introduce --exclude=<glob> to tame wildcards
        rev-list --exclude: export add/clear-ref-exclusion and ref-excluded API
        rev-list --exclude: tests
        document --exclude option
        revision: introduce --exclude=<glob> to tame wildcards
      10167eb2
    • J
      Merge branch 'nv/parseopt-opt-arg' · 3576f113
      Junio C Hamano 提交于
      Enhance "rev-parse --parseopt" mode to help parsing options with
      an optional parameter.
      
      * nv/parseopt-opt-arg:
        rev-parse --parseopt: add the --stuck-long mode
        Use the word 'stuck' instead of 'sticked'
      3576f113
    • J
      Merge branch 'bc/http-100-continue' · c5a77e8f
      Junio C Hamano 提交于
      Issue "100 Continue" responses to help use of GSS-Negotiate
      authentication scheme over HTTP transport when needed.
      
      * bc/http-100-continue:
        remote-curl: fix large pushes with GSSAPI
        remote-curl: pass curl slot_results back through run_slot
        http: return curl's AUTHAVAIL via slot_results
      c5a77e8f
    • J
      Merge branch 'jc/merge-base-reflog' · 07d406b7
      Junio C Hamano 提交于
      Code the logic in "pull --rebase" that figures out a fork point
      from reflog entries in C.
      
      * jc/merge-base-reflog:
        merge-base: teach "--fork-point" mode
        merge-base: use OPT_CMDMODE and clarify the command line parsing
      07d406b7
    • J
      Merge branch 'jk/replace-perl-in-built-scripts' · 219ea0e7
      Junio C Hamano 提交于
      * jk/replace-perl-in-built-scripts:
        use @@PERL@@ in built scripts
      219ea0e7
    • J
      Merge branch 'jh/loose-object-dirs-creation-race' · 86cd8dc8
      Junio C Hamano 提交于
      When two processes created one loose object file each, which fell
      into the same fan-out bucket that previously did not have any
      objects, they both tried to do an equivalent of
      
          mkdir .git/objects/$fanout &&
          chmod $shared_perm .git/objects/$fanout
      
      before writing into their file .git/objects/$fanout/$remainder,
      one of which could have failed unnecessarily when the second
      invocation of mkdir found that the directory already has been
      created by the first one.
      
      * jh/loose-object-dirs-creation-race:
        sha1_file.c:create_tmpfile(): Fix race when creating loose object dirs
      86cd8dc8
    • J
      Merge branch 'jk/robustify-parse-commit' · 5bb62059
      Junio C Hamano 提交于
      * jk/robustify-parse-commit:
        checkout: do not die when leaving broken detached HEAD
        use parse_commit_or_die instead of custom message
        use parse_commit_or_die instead of segfaulting
        assume parse_commit checks for NULL commit
        assume parse_commit checks commit->object.parsed
        log_tree_diff: die when we fail to parse a commit
      5bb62059
    • J
      Merge branch 'ak/submodule-foreach-quoting' · b2a0afd9
      Junio C Hamano 提交于
      A behavior change, but a worthwhile one: "git submodule foreach"
      was treating its arguments as part of a single command to be
      concatenated and passed to a shell, making writing buggy
      scripts too easy.
      
      This patch preserves the old "just pass it to the shell" behavior
      when a single argument is passed to 'git submodule foreach' and
      moves to a new "skip the shell and use the arguments passed
      unmolested" behavior when more than one argument is passed.
      
      The old behavior (always concatenating and passing to the shell)
      was similar to the 'ssh' command, while the new behavior (switching
      on the number of arguments) is what 'xterm -e' does.
      
      May need more thought to make sure this change is advertised well
      so that scripts that used multiple arguments but added their own
      extra layer of quoting are not broken.
      
      * ak/submodule-foreach-quoting:
        submodule foreach: skip eval for more than one argument
      b2a0afd9
  5. 04 12月, 2013 10 次提交
  6. 03 12月, 2013 3 次提交
    • J
      Sync with 1.8.4.5 · be38bee8
      Junio C Hamano 提交于
      be38bee8
    • J
      Git 1.8.4.5 · 2f93541d
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      2f93541d
    • J
      submodule: do not copy unknown update mode from .gitmodules · ac1fbbda
      Junio C Hamano 提交于
      When submodule.$name.update is given as hint from the upstream in
      the .gitmodules file, we used to blindly copy it to .git/config,
      unless there already is a value defined for the submodule.
      
      However, there is no reason to expect that the update mode hinted by
      the upstream is available in the version of Git the user is using,
      and a really custom "!cmd" prepared by an upstream person running on
      Linux may not even be available to a user on Windows.  It is simply
      irresponsible to copy the setting blindly and to attempt to use it
      during a later "submodule update" without validating it first.
      
      Just show the suggested value to the diagnostic output, and set the
      value to 'none' in the configuration, if it is not one of the ones
      that are known to be supported by this version of Git.
      Helped-by: NJens Lehmann <Jens.Lehmann@web.de>
      Helped-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      ac1fbbda
  7. 02 12月, 2013 3 次提交
    • T
      gitk: Recognize -L option · ce2c58cd
      Thomas Rast 提交于
      This gives line-log support to gitk, by exploiting the new support for
      processing and showing "inline" diffs straight from the git-log
      output.
      
      Note that we 'set allknown 0', which is a bit counterintuitive since
      this is a "known" option.  But that flag prevents gitk from thinking
      it can optimize the view by running rev-list to see the topology; in
      the -L case that doesn't work.
      Signed-off-by: NThomas Rast <trast@inf.ethz.ch>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      ce2c58cd
    • T
      gitk: Support showing the gathered inline diffs · 9403bd02
      Thomas Rast 提交于
      The previous commit split the diffs into a separate field.  Now we
      actually want to show them.
      
      To that end we use the stored diff, and
      
      - process it once to build a fake "tree diff", i.e., a list of all
        changed files;
      
      - feed it through parseblobdiffline to actually format it into the
        $ctext field, like the existing diff machinery would.
      Signed-off-by: NThomas Rast <trast@inf.ethz.ch>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      9403bd02
    • T
      gitk: Split out diff part in $commitinfo · b449eb2c
      Thomas Rast 提交于
      So far we just parsed everything after the headers into the "comment"
      bit of $commitinfo, including notes and -- if you gave weird options
      -- the diff.
      
      Split out the diff, if any, into a separate field.  It's easy to
      recognize, since it always starts with /^diff/ and is preceded by an
      empty line.
      
      We take care to snip away said empty line.  The display code already
      properly spaces the end of the message from the first diff, and
      leaving another empty line at the end looks ugly.
      Signed-off-by: NThomas Rast <trast@inf.ethz.ch>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      b449eb2c