1. 15 3月, 2014 7 次提交
    • J
      Merge branch 'lb/contrib-contacts-looser-diff-parsing' · ed277519
      Junio C Hamano 提交于
      * lb/contrib-contacts-looser-diff-parsing:
        git-contacts: do not fail parsing of good diffs
      ed277519
    • J
      Merge branch 'ks/config-file-stdin' · 08f36302
      Junio C Hamano 提交于
      "git config" learned to read from the standard input when "-" is
      given as the value to its "--file" parameter (attempting an
      operation to update the configuration in the standard input of
      course is rejected).
      
      * ks/config-file-stdin:
        config: teach "git config --file -" to read from the standard input
        config: change git_config_with_options() interface
        builtin/config.c: rename check_blob_write() -> check_write()
        config: disallow relative include paths from blobs
      08f36302
    • J
      Merge branch 'jk/janitorial-fixes' · 7aab05d2
      Junio C Hamano 提交于
      * jk/janitorial-fixes:
        open_istream(): do not dereference NULL in the error case
        builtin/mv: don't use memory after free
        utf8: use correct type for values in interval table
        utf8: fix iconv error detection
        notes-utils: handle boolean notes.rewritemode correctly
      7aab05d2
    • J
      Merge branch 'jk/http-no-curl-easy' · b7de45b5
      Junio C Hamano 提交于
      Uses of curl's "multi" interface and "easy" interface do not mix
      well when we attempt to reuse outgoing connections.  Teach the RPC
      over http code, used in the smart HTTP transport, not to use the
      "easy" interface.
      
      * jk/http-no-curl-easy:
        http: never use curl_easy_perform
      b7de45b5
    • J
      Merge branch 'ss/completion-rec-sub-fetch-push' · baf9e83c
      Junio C Hamano 提交于
      * ss/completion-rec-sub-fetch-push:
        completion: teach --recurse-submodules to fetch, pull and push
      baf9e83c
    • J
      Merge branch 'nd/gitignore-trailing-whitespace' · dfcd354c
      Junio C Hamano 提交于
      Trailing whitespaces in .gitignore files, unless they are quoted for
      fnmatch(3), e.g. "path\ ", are warned and ignored.
      
      Strictly speaking, this is a backward incompatible change, but very
      unlikely to bite any sane user and adjusting should be obvious and
      easy.
      
      * nd/gitignore-trailing-whitespace:
        t0008: skip trailing space test on Windows
        dir: ignore trailing spaces in exclude patterns
        dir: warn about trailing spaces in exclude patterns
      dfcd354c
    • J
      Merge branch 'jc/check-attr-honor-working-tree' · 28b68216
      Junio C Hamano 提交于
      "git check-attr" when (trying to) work on a repository with a
      working tree did not work well when the working tree was specified
      via --work-tree (and obviously with --git-dir).
      
      The command also works in a bare repository but it reads from the
      (possibly stale, irrelevant and/or nonexistent) index, which may
      need to be fixed to read from HEAD, but that is a completely
      separate issue.  As a related tangent to this separate issue, we
      may want to also fix "check-ignore", which refuses to work in a
      bare repository, to also operate in a bare one.
      
      * jc/check-attr-honor-working-tree:
        check-attr: move to the top of working tree when in non-bare repository
        t0003: do not chdir the whole test process
      28b68216
  2. 12 3月, 2014 1 次提交
    • J
      t0008: skip trailing space test on Windows · 35e4d775
      Johannes Sixt 提交于
      The Windows API does not preserve file names with trailing spaces (and
      dots), but rather strips them. Our tools (MSYS bash, git) base the POSIX
      emulation on the Windows API. As a consequence, it is impossible for bash
      on Windows to allocate a file whose name has trailing spaces, and for git
      to stat such a file. Both operate on a file whose name has the spaces
      stripped. Skip the test that needs such a file name.
      
      Note that we do not use (another incarnation of) prerequisite FUNNYNAMES.
      The reason is that FUNNYNAMES is intended to represent a property of the
      file system. But the inability to have trailing spaces in a file name is
      a property of the Windows API. The file system (NTFS) does not have this
      limitation.
      Signed-off-by: NJohannes Sixt <j6t@kdbg.org>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      35e4d775
  3. 08 3月, 2014 8 次提交
  4. 06 3月, 2014 4 次提交
    • J
      Merge branch 'maint' · 6ab4ae2b
      Junio C Hamano 提交于
      * maint:
        i18n: proposed command missing leading dash
      6ab4ae2b
    • J
      Merge branch 'jk/run-network-tests-by-default' · ee3a81e6
      Junio C Hamano 提交于
      Teach "make test" to run networking tests when possible by default.
      
      * jk/run-network-tests-by-default:
        tests: turn on network daemon tests by default
      ee3a81e6
    • J
      Merge branch 'nd/daemonize-gc' · 4c4ac4db
      Junio C Hamano 提交于
      Allow running "gc --auto" in the background.
      
      * nd/daemonize-gc:
        gc: config option for running --auto in background
        daemon: move daemonize() to libgit.a
      4c4ac4db
    • J
      Merge branch 'ks/combine-diff' · 6376463c
      Junio C Hamano 提交于
      Teach combine-diff to honour the path-output-order imposed by
      diffcore-order, and optimize how matching paths are found in
      the N-way diffs made with parents.
      
      * ks/combine-diff:
        tests: add checking that combine-diff emits only correct paths
        combine-diff: simplify intersect_paths() further
        combine-diff: combine_diff_path.len is not needed anymore
        combine-diff: optimize combine_diff_path sets intersection
        diff test: add tests for combine-diff with orderfile
        diffcore-order: export generic ordering interface
      6376463c
  5. 05 3月, 2014 1 次提交
  6. 28 2月, 2014 19 次提交
    • J
      Merge branch 'nd/http-fetch-shallow-fix' · 2de34784
      Junio C Hamano 提交于
      Attempting to deepen a shallow repository by fetching over smart
      HTTP transport failed in the protocol exchange, when no-done
      extension was used.  The fetching side waited for the list of
      shallow boundary commits after the sending end stopped talking to
      it.
      
      * nd/http-fetch-shallow-fix:
        t5537: move http tests out to t5539
        fetch-pack: fix deepen shallow over smart http with no-done cap
        protocol-capabilities.txt: document no-done
        protocol-capabilities.txt: refer multi_ack_detailed back to pack-protocol.txt
        pack-protocol.txt: clarify 'obj-id' in the last ACK after 'done'
        test: rename http fetch and push test files
      2de34784
    • J
      Merge branch 'jk/pack-bitmap' · 0f9e62e0
      Junio C Hamano 提交于
      Borrow the bitmap index into packfiles from JGit to speed up
      enumeration of objects involved in a commit range without having to
      fully traverse the history.
      
      * jk/pack-bitmap: (26 commits)
        ewah: unconditionally ntohll ewah data
        ewah: support platforms that require aligned reads
        read-cache: use get_be32 instead of hand-rolled ntoh_l
        block-sha1: factor out get_be and put_be wrappers
        do not discard revindex when re-preparing packfiles
        pack-bitmap: implement optional name_hash cache
        t/perf: add tests for pack bitmaps
        t: add basic bitmap functionality tests
        count-objects: recognize .bitmap in garbage-checking
        repack: consider bitmaps when performing repacks
        repack: handle optional files created by pack-objects
        repack: turn exts array into array-of-struct
        repack: stop using magic number for ARRAY_SIZE(exts)
        pack-objects: implement bitmap writing
        rev-list: add bitmap mode to speed up object lists
        pack-objects: use bitmaps when packing objects
        pack-objects: split add_object_entry
        pack-bitmap: add support for bitmap indexes
        documentation: add documentation for the bitmap format
        ewah: compressed bitmap implementation
        ...
      0f9e62e0
    • J
      Merge branch 'dk/blame-janitorial' · 6784fab0
      Junio C Hamano 提交于
      Code clean-up.
      
      * dk/blame-janitorial:
        builtin/blame.c::find_copy_in_blob: no need to scan for region end
        blame.c: prepare_lines should not call xrealloc for every line
        builtin/blame.c::prepare_lines: fix allocation size of sb->lineno
        builtin/blame.c: eliminate same_suspect()
        builtin/blame.c: struct blame_entry does not need a prev link
      6784fab0
    • J
      Merge branch 'bc/gpg-sign-everywhere' · 62bef66f
      Junio C Hamano 提交于
      Teach "--gpg-sign" option to many commands that create commits.
      
      * bc/gpg-sign-everywhere:
        pull: add the --gpg-sign option.
        rebase: add the --gpg-sign option
        rebase: parse options in stuck-long mode
        rebase: don't try to match -M option
        rebase: remove useless arguments check
        am: add the --gpg-sign option
        am: parse options in stuck-long mode
        git-sh-setup.sh: add variable to use the stuck-long mode
        cherry-pick, revert: add the --gpg-sign option
      62bef66f
    • J
      Merge branch 'al/docs' · d8a1bac1
      Junio C Hamano 提交于
      A handful of documentation updates, all trivially harmless.
      
      * al/docs:
        docs/git-blame: explain more clearly the example pickaxe use
        docs/git-clone: clarify use of --no-hardlinks option
        docs/git-remote: capitalize first word of initial blurb
        docs/merge-strategies: remove hyphen from mis-merges
      d8a1bac1
    • J
      Merge branch 'jk/test-ports' · bd62e7c3
      Junio C Hamano 提交于
      Avoid having to assign port number to be used in tests manually.
      
      * jk/test-ports:
        tests: auto-set git-daemon port
        tests: auto-set LIB_HTTPD_PORT from test name
      bd62e7c3
    • J
      Merge branch 'nd/reset-intent-to-add' · 8336832a
      Junio C Hamano 提交于
      * nd/reset-intent-to-add:
        reset: support "--mixed --intent-to-add" mode
      8336832a
    • J
      Merge branch 'ks/tree-diff-walk' · 795dd116
      Junio C Hamano 提交于
      * ks/tree-diff-walk:
        tree-walk: finally switch over tree descriptors to contain a pre-parsed entry
        revision: convert to using diff_tree_sha1()
        line-log: convert to using diff_tree_sha1()
        tree-diff: convert diff_root_tree_sha1() to just call diff_tree_sha1 with old=NULL
        tree-diff: allow diff_tree_sha1 to accept NULL sha1
      795dd116
    • J
      Merge branch 'mw/symlinks' · 8a342058
      Junio C Hamano 提交于
      All subcommands that take pathspecs mishandled an in-tree symbolic
      link when given it as a full path from the root (which arguably is
      a sick way to use pathspecs).  "git ls-files -s $(pwd)/RelNotes" in
      our tree is an easy reproduction recipe.
      
      * mw/symlinks:
        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
      8a342058
    • J
      Merge branch 'nd/test-rename-reset' · f813f71a
      Junio C Hamano 提交于
      * nd/test-rename-reset:
        t7101, t7014: rename test files to indicate what that file is for
      f813f71a
    • J
      Merge branch 'wk/submodule-on-branch' · 06c27689
      Junio C Hamano 提交于
      Make sure 'submodule update' modes that do not detach HEADs can
      be used more pleasantly by checking out a concrete branch when
      cloning them to prime the well.
      
      * wk/submodule-on-branch:
        Documentation: describe 'submodule update --remote' use case
        submodule: explicit local branch creation in module_clone
        submodule: document module_clone arguments in comments
        submodule: make 'checkout' update_module mode more explicit
      06c27689
    • J
      Merge branch 'ep/varscope' · 04347830
      Junio C Hamano 提交于
      Shrink lifetime of variables by moving their definitions to an
      inner scope where appropriate.
      
      * ep/varscope:
        builtin/gc.c: reduce scope of variables
        builtin/fetch.c: reduce scope of variable
        builtin/commit.c: reduce scope of variables
        builtin/clean.c: reduce scope of variable
        builtin/blame.c: reduce scope of variables
        builtin/apply.c: reduce scope of variables
        bisect.c: reduce scope of variable
      04347830
    • J
      Merge branch 'bs/stdio-undef-before-redef' · a06f23c7
      Junio C Hamano 提交于
      When we replace broken macros from stdio.h in git-compat-util.h,
      preprocessor.
      
      * bs/stdio-undef-before-redef:
        git-compat-util.h: #undef (v)snprintf before #define them
      a06f23c7
    • J
      Merge branch 'jk/config-path-include-fix' · bfef492d
      Junio C Hamano 提交于
      include.path variable (or any variable that expects a path that can
      use ~username expansion) in the configuration file is not a
      boolean, but the code failed to check it.
      
      * jk/config-path-include-fix:
        handle_path_include: don't look at NULL value
        expand_user_path: do not look at NULL path
      bfef492d
    • J
      Merge branch 'ds/rev-parse-required-args' · 28006fb0
      Junio C Hamano 提交于
      "git rev-parse --default" without the required option argument did
      not diagnose it as an error.
      
      * ds/rev-parse-required-args:
        rev-parse: check i before using argv[i] against argc
      28006fb0
    • J
      Merge branch 'nd/diff-quiet-stat-dirty' · 1e745453
      Junio C Hamano 提交于
      "git diff --quiet -- pathspec1 pathspec2" sometimes did not return
      correct status value.
      
      * nd/diff-quiet-stat-dirty:
        diff: do not quit early on stat-dirty files
        diff.c: move diffcore_skip_stat_unmatch core logic out for reuse later
      1e745453
    • J
      Merge branch 'nd/submodule-pathspec-ending-with-slash' · cbaeafc3
      Junio C Hamano 提交于
      Allow "git cmd path/", when the 'path' is where a submodule is
      bound to the top-level working tree, to match 'path', despite the
      extra and unnecessary trailing slash.
      
      * nd/submodule-pathspec-ending-with-slash:
        clean: use cache_name_is_other()
        clean: replace match_pathspec() with dir_path_match()
        pathspec: pass directory indicator to match_pathspec_item()
        match_pathspec: match pathspec "foo/" against directory "foo"
        dir.c: prepare match_pathspec_item for taking more flags
        pathspec: rename match_pathspec_depth() to match_pathspec()
        pathspec: convert some match_pathspec_depth() to dir_path_match()
        pathspec: convert some match_pathspec_depth() to ce_path_match()
      cbaeafc3
    • J
      Merge branch 'bk/refresh-missing-ok-in-merge-recursive' · 156d6ed9
      Junio C Hamano 提交于
      Allow "merge-recursive" to work in an empty (temporary) working
      tree again when there are renames involved, correcting an old
      regression in 1.7.7 era.
      
      * bk/refresh-missing-ok-in-merge-recursive:
        merge-recursive.c: tolerate missing files while refreshing index
        read-cache.c: extend make_cache_entry refresh flag with options
        read-cache.c: refactor --ignore-missing implementation
        t3030-merge-recursive: test known breakage with empty work tree
      156d6ed9
    • J
      Merge branch 'da/pull-ff-configuration' · 7da5fd68
      Junio C Hamano 提交于
      "git pull" learned to pay attention to pull.ff configuration
      variable.
      
      * da/pull-ff-configuration:
        pull: add --ff-only to the help text
        pull: add pull.ff configuration
      7da5fd68