7e8bfb0 | Junio C Hamano | 20 August 2018, 18:37:21 UTC | Git 2.19-rc0 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 20 August 2018, 19:53:58 UTC |
273b0a1 | Junio C Hamano | 20 August 2018, 19:53:46 UTC | Merge branch 'ab/checkout-default-remote' * ab/checkout-default-remote: t2024: mark test using "checkout -p" with PERL prerequisite | 20 August 2018, 19:53:46 UTC |
d280170 | Junio C Hamano | 20 August 2018, 19:41:34 UTC | Merge branch 'hn/highlight-sideband-keywords' The sideband code learned to optionally paint selected keywords at the beginning of incoming lines on the receiving end. * hn/highlight-sideband-keywords: sideband: do not read beyond the end of input sideband: highlight keywords in remote sideband output | 20 August 2018, 19:41:34 UTC |
39e415c | Junio C Hamano | 20 August 2018, 19:41:34 UTC | Merge branch 'nd/cherry-pick-quit-fix' "git cherry-pick --quit" failed to remove CHERRY_PICK_HEAD even though we won't be in a cherry-pick session after it returns, which has been corrected. * nd/cherry-pick-quit-fix: cherry-pick: fix --quit not deleting CHERRY_PICK_HEAD | 20 August 2018, 19:41:34 UTC |
85c54ec | Junio C Hamano | 20 August 2018, 19:41:33 UTC | Merge branch 'sb/submodule-cleanup' A few preliminary minor clean-ups in the area around submodules. * sb/submodule-cleanup: builtin/submodule--helper: remove stray new line t7410: update to new style | 20 August 2018, 19:41:33 UTC |
5a5c5e9 | Junio C Hamano | 20 August 2018, 19:41:33 UTC | Merge branch 'pw/rebase-i-merge-segv-fix' "git rebase -i", when a 'merge <branch>' insn in its todo list fails, segfaulted, which has been (minimally) corrected. * pw/rebase-i-merge-segv-fix: rebase -i: fix SIGSEGV when 'merge <branch>' fails t3430: add conflicting commit | 20 August 2018, 19:41:33 UTC |
36fd1e8 | Junio C Hamano | 20 August 2018, 19:41:33 UTC | Merge branch 'pw/rebase-i-squash-number-fix' When "git rebase -i" is told to squash two or more commits into one, it labeled the log message for each commit with its number. It correctly called the first one "1st commit", but the next one was "commit #1", which was off-by-one. This has been corrected. * pw/rebase-i-squash-number-fix: rebase -i: fix numbering in squash message | 20 August 2018, 19:41:33 UTC |
2a2c18f | Junio C Hamano | 20 August 2018, 19:41:32 UTC | Merge branch 'sb/config-write-fix' Recent update to "git config" broke updating variable in a subsection, which has been corrected. * sb/config-write-fix: git-config: document accidental multi-line setting in deprecated syntax config: fix case sensitive subsection names on writing t1300: document current behavior of setting options | 20 August 2018, 19:41:32 UTC |
87aa159 | Junio C Hamano | 20 August 2018, 19:41:32 UTC | Merge branch 'ab/submodule-relative-url-tests' Test updates. * ab/submodule-relative-url-tests: submodule: add more exhaustive up-path testing | 20 August 2018, 19:41:32 UTC |
5ade034 | Junio C Hamano | 20 August 2018, 19:41:32 UTC | Merge branch 'en/incl-forward-decl' Code hygiene improvement for the header files. * en/incl-forward-decl: Remove forward declaration of an enum compat/precompose_utf8.h: use more common include guard style urlmatch.h: fix include guard Move definition of enum branch_track from cache.h to branch.h alloc: make allocate_alloc_state and clear_alloc_state more consistent Add missing includes and forward declarations | 20 August 2018, 19:41:32 UTC |
36f0f34 | Junio C Hamano | 20 August 2018, 18:33:55 UTC | Merge branch 'jt/repack-promisor-packs' After a partial clone, repeated fetches from promisor remote would have accumulated many packfiles marked with .promisor bit without getting them coalesced into fewer packfiles, hurting performance. "git repack" now learned to repack them. * jt/repack-promisor-packs: repack: repack promisor objects if -a or -A is set repack: refactor setup of pack-objects cmd | 20 August 2018, 19:40:31 UTC |
e72db08 | Junio C Hamano | 20 August 2018, 18:33:55 UTC | Merge branch 'wc/make-funnynames-shared-lazy-prereq' A test prerequisite defined by various test scripts with slightly different semantics has been consolidated into a single copy and made into a lazily defined one. * wc/make-funnynames-shared-lazy-prereq: t: factor out FUNNYNAMES as shared lazy prereq | 20 August 2018, 18:33:55 UTC |
6bbd103 | Junio C Hamano | 20 August 2018, 18:33:55 UTC | Merge branch 'jh/partial-clone-doc' Doc updates. * jh/partial-clone-doc: partial-clone: render design doc using asciidoc | 20 August 2018, 18:33:55 UTC |
4601516 | Junio C Hamano | 20 August 2018, 18:33:54 UTC | Merge branch 'js/chain-lint-attrfix' Test fix. * js/chain-lint-attrfix: chainlint: fix for core.autocrlf=true | 20 August 2018, 18:33:54 UTC |
ce9c6a3 | Junio C Hamano | 20 August 2018, 18:33:54 UTC | Merge branch 'sb/pull-rebase-submodule' "git pull --rebase -v" in a repository with a submodule barfed as an intermediate process did not understand what "-v(erbose)" flag meant, which has been fixed. * sb/pull-rebase-submodule: git-submodule.sh: accept verbose flag in cmd_update to be non-quiet | 20 August 2018, 18:33:54 UTC |
81eab68 | Junio C Hamano | 20 August 2018, 18:33:53 UTC | Merge branch 'js/range-diff' "git tbdiff" that lets us compare individual patches in two iterations of a topic has been rewritten and made into a built-in command. * js/range-diff: (21 commits) range-diff: use dim/bold cues to improve dual color mode range-diff: make --dual-color the default mode range-diff: left-pad patch numbers completion: support `git range-diff` range-diff: populate the man page range-diff --dual-color: skip white-space warnings range-diff: offer to dual-color the diffs diff: add an internal option to dual-color diffs of diffs color: add the meta color GIT_COLOR_REVERSE range-diff: use color for the commit pairs range-diff: add tests range-diff: do not show "function names" in hunk headers range-diff: adjust the output of the commit pairs range-diff: suppress the diff headers range-diff: indent the diffs just like tbdiff range-diff: right-trim commit messages range-diff: also show the diff between patches range-diff: improve the order of the shown commits range-diff: first rudimentary implementation Introduce `range-diff` to compare iterations of a topic branch ... | 20 August 2018, 18:33:53 UTC |
dc0f6f9 | Junio C Hamano | 20 August 2018, 18:33:53 UTC | Merge branch 'nd/no-the-index' The more library-ish parts of the codebase learned to work on the in-core index-state instance that is passed in by their callers, instead of always working on the singleton "the_index" instance. * nd/no-the-index: (24 commits) blame.c: remove implicit dependency on the_index apply.c: remove implicit dependency on the_index apply.c: make init_apply_state() take a struct repository apply.c: pass struct apply_state to more functions resolve-undo.c: use the right index instead of the_index archive-*.c: use the right repository archive.c: avoid access to the_index grep: use the right index instead of the_index attr: remove index from git_attr_set_direction() entry.c: use the right index instead of the_index submodule.c: use the right index instead of the_index pathspec.c: use the right index instead of the_index unpack-trees: avoid the_index in verify_absent() unpack-trees: convert clear_ce_flags* to avoid the_index unpack-trees: don't shadow global var the_index unpack-trees: add a note about path invalidation unpack-trees: remove 'extern' on function declaration ls-files: correct index argument to get_convert_attr_ascii() preload-index.c: use the right index instead of the_index dir.c: remove an implicit dependency on the_index in pathspec code ... | 20 August 2018, 18:33:53 UTC |
ace1f99 | Junio C Hamano | 20 August 2018, 18:33:53 UTC | Merge branch 'es/chain-lint-more' Improve built-in facility to catch broken &&-chain in the tests. * es/chain-lint-more: chainlint: add test of pathological case which triggered false positive chainlint: recognize multi-line quoted strings more robustly chainlint: let here-doc and multi-line string commence on same line chainlint: recognize multi-line $(...) when command cuddled with "$(" chainlint: match 'quoted' here-doc tags chainlint: match arbitrary here-docs tags rather than hard-coded names | 20 August 2018, 18:33:53 UTC |
a15bfa5 | Junio C Hamano | 20 August 2018, 18:33:52 UTC | Merge branch 'sg/t5310-empty-input-fix' Test fix. * sg/t5310-empty-input-fix: t5310-pack-bitmaps: fix bogus 'pack-objects to file can use bitmap' test | 20 August 2018, 18:33:52 UTC |
d18d09b | Junio C Hamano | 20 August 2018, 18:33:52 UTC | Merge branch 'js/mingw-o-append' Among the three codepaths we use O_APPEND to open a file for appending, one used for writing GIT_TRACE output requires O_APPEND implementation that behaves sensibly when multiple processes are writing to the same file. POSIX emulation used in the Windows port has been updated to improve in this area. * js/mingw-o-append: mingw: enable atomic O_APPEND | 20 August 2018, 18:33:52 UTC |
0c54cda | Junio C Hamano | 20 August 2018, 18:33:52 UTC | Merge branch 'jk/for-each-object-iteration' The API to iterate over all objects learned to optionally list objects in the order they appear in packfiles, which helps locality of access if the caller accesses these objects while as objects are enumerated. * jk/for-each-object-iteration: for_each_*_object: move declarations to object-store.h cat-file: use a single strbuf for all output cat-file: split batch "buf" into two variables cat-file: use oidset check-and-insert cat-file: support "unordered" output for --batch-all-objects cat-file: rename batch_{loose,packed}_object callbacks t1006: test cat-file --batch-all-objects with duplicates for_each_packed_object: support iterating in pack-order for_each_*_object: give more comprehensive docstrings for_each_*_object: take flag arguments as enum for_each_*_object: store flag definitions in a single location | 20 August 2018, 18:33:52 UTC |
42a6274 | Junio C Hamano | 20 August 2018, 18:33:52 UTC | Merge branch 'ab/fetch-tags-noclobber' Test and doc clean-ups. * ab/fetch-tags-noclobber: pull doc: fix a long-standing grammar error fetch tests: correct a comment "remove it" -> "remove them" push tests: assert re-pushing annotated tags push tests: add more testing for forced tag pushing push tests: fix logic error in "push" test assertion push tests: remove redundant 'git push' invocation fetch tests: change "Tag" test tag to "testTag" | 20 August 2018, 18:33:52 UTC |
03e904c | Junio C Hamano | 20 August 2018, 18:33:51 UTC | Merge branch 'ng/mergetool-lose-final-prompt' "git mergetool" stopped and gave an extra prompt to continue after the last path has been handled, which did not make much sense. * ng/mergetool-lose-final-prompt: mergetool: don't suggest to continue after last file | 20 August 2018, 18:33:51 UTC |
3bc484a | Junio C Hamano | 20 August 2018, 18:33:51 UTC | Merge branch 'jt/commit-graph-per-object-store' Test update. * jt/commit-graph-per-object-store: t5318: avoid unnecessary command substitutions | 20 August 2018, 18:33:51 UTC |
5dd5474 | Junio C Hamano | 20 August 2018, 18:33:51 UTC | Merge branch 'ds/commit-graph-fsck' Test fix. * ds/commit-graph-fsck: t5318: use 'test_cmp_bin' to compare commit-graph files | 20 August 2018, 18:33:51 UTC |
c5c2162 | Junio C Hamano | 20 August 2018, 18:33:51 UTC | Merge branch 'jt/fetch-negotiator-skipping' Test fix. * jt/fetch-negotiator-skipping: t5552: suppress upload-pack trace output | 20 August 2018, 18:33:51 UTC |
4d34122 | Junio C Hamano | 20 August 2018, 18:33:50 UTC | Merge branch 'jc/gpg-status' "git verify-tag" and "git verify-commit" have been taught to use the exit status of underlying "gpg --verify" to signal bad or untrusted signature they found. * jc/gpg-status: gpg-interface: propagate exit status from gpg back to the callers | 20 August 2018, 18:33:50 UTC |
6e8f3d1 | Junio C Hamano | 20 August 2018, 18:33:50 UTC | Merge branch 'jc/update-index-doc' Doc update. * jc/update-index-doc: update-index: there no longer is `apply --index-info` | 20 August 2018, 18:33:50 UTC |
7d91699 | Junio C Hamano | 20 August 2018, 18:33:50 UTC | Merge branch 'en/update-index-doc' Doc update. * en/update-index-doc: git-update-index.txt: reword possibly confusing example | 20 August 2018, 18:33:50 UTC |
13bf260 | Junio C Hamano | 20 August 2018, 18:33:50 UTC | Merge branch 'js/typofixes' Comment update. * js/typofixes: remote-curl: remove spurious period git-compat-util.h: fix typo | 20 August 2018, 18:33:50 UTC |
93ded33 | Junio C Hamano | 20 August 2018, 18:33:49 UTC | Merge branch 'sk/instaweb-rh-update' "git instaweb" has been adjusted to run better with newer Apache on RedHat based distros. * sk/instaweb-rh-update: git-instaweb: fix apache2 config with apache >= 2.4 git-instaweb: support Fedora/Red Hat apache module path | 20 August 2018, 18:33:49 UTC |
02c51a2 | Junio C Hamano | 20 August 2018, 18:33:48 UTC | Merge branch 'en/t7406-fixes' Test fixes. * en/t7406-fixes: t7406: avoid using test_must_fail for commands other than git t7406: prefer test_* helper functions to test -[feds] t7406: avoid having git commands upstream of a pipe t7406: simplify by using diff --name-only instead of diff --raw t7406: fix call that was failing for the wrong reason | 20 August 2018, 18:33:49 UTC |
750eb11 | Junio C Hamano | 20 August 2018, 18:33:48 UTC | Merge branch 'js/rebase-merges-exec-fix' The "--exec" option to "git rebase --rebase-merges" placed the exec commands at wrong places, which has been corrected. * js/rebase-merges-exec-fix: rebase --exec: make it work with --rebase-merges t3430: demonstrate what -r, --autosquash & --exec should do | 20 August 2018, 18:33:48 UTC |
14677d2 | Junio C Hamano | 20 August 2018, 18:33:48 UTC | Merge branch 'ab/test-must-be-empty-for-master' Test updates. * ab/test-must-be-empty-for-master: tests: make use of the test_must_be_empty function | 20 August 2018, 18:33:48 UTC |
34f2297 | Junio C Hamano | 20 August 2018, 18:33:48 UTC | Merge branch 'ab/newhash-is-sha256' Documentation update. * ab/newhash-is-sha256: doc hash-function-transition: pick SHA-256 as NewHash doc hash-function-transition: note the lack of a changelog | 20 August 2018, 18:33:48 UTC |
3338e99 | Ævar Arnfjörð Bjarmason | 18 August 2018, 07:01:47 UTC | t2024: mark test using "checkout -p" with PERL prerequisite Checkout with the -p switch uses the "add interactive" framework which is written in Perl. One test added in 8d7b558bae ("checkout & worktree: introduce checkout.defaultRemote", 2018-06-05) didn't declare the PERL prerequisite, breaking the test when built with NO_PERL. Reported-by: CB Bailey <cb@hashpling.org> Signed-off-by: CB Bailey <cb@hashpling.org> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 18 August 2018, 16:26:54 UTC |
59a255a | Junio C Hamano | 18 August 2018, 16:16:28 UTC | sideband: do not read beyond the end of input The caller of maybe_colorize_sideband() gives a counted buffer <src, n>, but the callee checked src[] as if it were a NUL terminated buffer. If src[] had all isspace() bytes in it, we would have made n negative, and then (1) made number of strncasecmp() calls to see if the remaining bytes in src[] matched keywords, reading beyond the end of the array (this actually happens even if n does not go negative), and/or (2) called strbuf_add() with negative count, most likely triggering the "you want to use way too much memory" error due to unsigned integer overflow. Fix both issues by making sure we do not go beyond &src[n]. In the longer term we may want to accept size_t as parameter for clarity (even though we know that a sideband message we are painting typically would fit on a line on a terminal and int is sufficient). Write it down as a NEEDSWORK comment. Helped-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 18 August 2018, 16:16:48 UTC |
fa03cdc | Junio C Hamano | 17 August 2018, 20:15:06 UTC | Seventh batch for 2.19 cycle Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 August 2018, 20:15:06 UTC |
4e0ea8e | Junio C Hamano | 17 August 2018, 20:09:59 UTC | Merge branch 'nd/complete-config-vars' Build fix. * nd/complete-config-vars: Makefile: add missing dependency for command-list.h | 17 August 2018, 20:09:59 UTC |
2c8c407 | Junio C Hamano | 17 August 2018, 20:09:59 UTC | Merge branch 'ar/t4150-am-scissors-test-fix' Test fix. * ar/t4150-am-scissors-test-fix: t4150: fix broken test for am --scissors | 17 August 2018, 20:09:59 UTC |
c757aa2 | Junio C Hamano | 17 August 2018, 20:09:59 UTC | Merge branch 'js/pull-rebase-type-shorthand' "git pull --rebase=interactive" learned "i" as a short-hand for "interactive". * js/pull-rebase-type-shorthand: pull --rebase=<type>: allow single-letter abbreviations for the type | 17 August 2018, 20:09:59 UTC |
f74e7b8 | Junio C Hamano | 17 August 2018, 20:09:58 UTC | Merge branch 'jk/diff-rendered-docs' The end result of documentation update has been made to be inspected more easily to help developers. * jk/diff-rendered-docs: add a script to diff rendered documentation | 17 August 2018, 20:09:58 UTC |
f382c24 | Junio C Hamano | 17 August 2018, 20:09:58 UTC | Merge branch 'hn/config-in-code-comment' Header update. * hn/config-in-code-comment: config: document git config getter return value | 17 August 2018, 20:09:58 UTC |
3146f8a | Junio C Hamano | 17 August 2018, 20:09:58 UTC | Merge branch 'nd/config-blame-sort' Doc fix. * nd/config-blame-sort: config.txt: reorder blame stuff to keep config keys sorted | 17 August 2018, 20:09:58 UTC |
b576cf7 | Junio C Hamano | 17 August 2018, 20:09:58 UTC | Merge branch 'en/t3031-title-fix' Test fix. * en/t3031-title-fix: t3031: update test description to mention desired behavior | 17 August 2018, 20:09:58 UTC |
791ad49 | Junio C Hamano | 17 August 2018, 20:09:57 UTC | Merge branch 'sb/indent-heuristic-optim' "git diff --indent-heuristic" had a bad corner case performance. * sb/indent-heuristic-optim: xdiff: reduce indent heuristic overhead | 17 August 2018, 20:09:57 UTC |
8ba8642 | Junio C Hamano | 17 August 2018, 20:09:57 UTC | Merge branch 'en/abort-df-conflict-fixes' "git merge --abort" etc. did not clean things up properly when there were conflicted entries in the index in certain order that are involved in D/F conflicts. This has been corrected. * en/abort-df-conflict-fixes: read-cache: fix directory/file conflict handling in read_index_unmerged() t1015: demonstrate directory/file conflict recovery failures | 17 August 2018, 20:09:57 UTC |
c5d276c | Junio C Hamano | 17 August 2018, 20:09:57 UTC | Merge branch 'mk/http-backend-content-length' The http-backend (used for smart-http transport) used to slurp the whole input until EOF, without paying attention to CONTENT_LENGTH that is supplied in the environment and instead expecting the Web server to close the input stream. This has been fixed. * mk/http-backend-content-length: t5562: avoid non-portable "export FOO=bar" construct http-backend: respect CONTENT_LENGTH for receive-pack http-backend: respect CONTENT_LENGTH as specified by rfc3875 http-backend: cleanup writing to child process | 17 August 2018, 20:09:57 UTC |
c83149a | Junio C Hamano | 17 August 2018, 20:09:57 UTC | Merge branch 'ot/ref-filter-object-info' A few atoms like %(objecttype) and %(objectsize) in the format specifier of "for-each-ref --format=<format>" can be filled without getting the full contents of the object, but just with the object header. These cases have been optimized by calling oid_object_info() API (instead of reading and inspecting the data). * ot/ref-filter-object-info: ref-filter: use oid_object_info() to get object ref-filter: merge get_obj and get_object ref-filter: initialize eaten variable ref-filter: fill empty fields with empty values ref-filter: add info_source to valid_atom | 17 August 2018, 20:09:57 UTC |
0194c9a | Junio C Hamano | 17 August 2018, 20:09:56 UTC | Merge branch 'nd/no-extern' Noiseword "extern" has been removed from function decls in the header files. * nd/no-extern: submodule.h: drop extern from function declaration revision.h: drop extern from function declaration repository.h: drop extern from function declaration rerere.h: drop extern from function declaration line-range.h: drop extern from function declaration diff.h: remove extern from function declaration diffcore.h: drop extern from function declaration convert.h: drop 'extern' from function declaration cache-tree.h: drop extern from function declaration blame.h: drop extern on func declaration attr.h: drop extern from function declaration apply.h: drop extern on func declaration | 17 August 2018, 20:09:56 UTC |
271940c | Junio C Hamano | 17 August 2018, 20:09:56 UTC | Merge branch 'es/want-color-fd-defensive' Futureproofing a helper function that can easily be misused. * es/want-color-fd-defensive: color: protect against out-of-bounds reads and writes | 17 August 2018, 20:09:56 UTC |
d1b0164 | Junio C Hamano | 17 August 2018, 20:09:56 UTC | Merge branch 'ab/sha1dc' AIX portability update for the SHA1DC hash, imported from upstream. * ab/sha1dc: sha1dc: update from upstream | 17 August 2018, 20:09:56 UTC |
8963bb0 | Junio C Hamano | 17 August 2018, 20:09:56 UTC | Merge branch 'rs/parse-opt-lithelp' The parse-options machinery learned to refrain from enclosing placeholder string inside a "<bra" and "ket>" pair automatically without PARSE_OPT_LITERAL_ARGHELP. Existing help text for option arguments that are not formatted correctly have been identified and fixed. * rs/parse-opt-lithelp: parse-options: automatically infer PARSE_OPT_LITERAL_ARGHELP shortlog: correct option help for -w send-pack: specify --force-with-lease argument help explicitly pack-objects: specify --index-version argument help explicitly difftool: remove angular brackets from argument help add, update-index: fix --chmod argument help push: use PARSE_OPT_LITERAL_ARGHELP instead of unbalanced brackets | 17 August 2018, 20:09:56 UTC |
28dbabb | Junio C Hamano | 17 August 2018, 20:09:55 UTC | Merge branch 'ab/fetch-nego' Update to a few other topics around 'git fetch'. * ab/fetch-nego: fetch doc: cross-link two new negotiation options negotiator: unknown fetch.negotiationAlgorithm should error out | 17 August 2018, 20:09:55 UTC |
72c11b7 | Junio C Hamano | 17 August 2018, 20:09:55 UTC | Merge branch 'jt/refspec-dwim-precedence-fix' "git fetch $there refs/heads/s" ought to fetch the tip of the branch 's', but when "refs/heads/refs/heads/s", i.e. a branch whose name is "refs/heads/s" exists at the same time, fetched that one instead by mistake. This has been corrected to honor the usual disambiguation rules for abbreviated refnames. * jt/refspec-dwim-precedence-fix: remote: make refspec follow the same disambiguation rule as local refs | 17 August 2018, 20:09:55 UTC |
60858f3 | Junio C Hamano | 17 August 2018, 20:09:55 UTC | Merge branch 'jk/merge-subtree-heuristics' The automatic tree-matching in "git merge -s subtree" was broken 5 years ago and nobody has noticed since then, which is now fixed. * jk/merge-subtree-heuristics: score_trees(): fix iteration over trees with missing entries | 17 August 2018, 20:09:55 UTC |
28bdd99 | Junio C Hamano | 17 August 2018, 20:09:54 UTC | Merge branch 'ab/test-must-be-empty' Test updates. * ab/test-must-be-empty: tests: make use of the test_must_be_empty function | 17 August 2018, 20:09:54 UTC |
1bc505b | Junio C Hamano | 17 August 2018, 20:09:54 UTC | Merge branch 'es/rebase-i-author-script-fix' The "author-script" file "git rebase -i" creates got broken when we started to move the command away from shell script, which is getting fixed now. * es/rebase-i-author-script-fix: sequencer: don't die() on bogus user-edited timestamp sequencer: fix "rebase -i --root" corrupting author header timestamp sequencer: fix "rebase -i --root" corrupting author header timezone sequencer: fix "rebase -i --root" corrupting author header | 17 August 2018, 20:09:54 UTC |
f8ca718 | Junio C Hamano | 17 August 2018, 20:09:54 UTC | Merge branch 'ab/fsck-transfer-updates' The test performed at the receiving end of "git push" to prevent bad objects from entering repository can be customized via receive.fsck.* configuration variables; we now have gained a counterpart to do the same on the "git fetch" side, with fetch.fsck.* configuration variables. * ab/fsck-transfer-updates: fsck: test and document unknown fsck.<msg-id> values fsck: add stress tests for fsck.skipList fsck: test & document {fetch,receive}.fsck.* config fallback fetch: implement fetch.fsck.* transfer.fsckObjects tests: untangle confusing setup config doc: elaborate on fetch.fsckObjects security config doc: elaborate on what transfer.fsckObjects does config doc: unify the description of fsck.* and receive.fsck.* config doc: don't describe *.fetchObjects twice receive.fsck.<msg-id> tests: remove dead code | 17 August 2018, 20:09:54 UTC |
e6b09b1 | Stefan Beller | 16 August 2018, 02:30:55 UTC | builtin/submodule--helper: remove stray new line Signed-off-by: Stefan Beller <sbeller@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 16 August 2018, 17:42:56 UTC |
31158c7 | Stefan Beller | 16 August 2018, 02:30:54 UTC | t7410: update to new style While at it fix a typo (s/independed/independent) and make sure git is not in a chain of pipes. Signed-off-by: Stefan Beller <sbeller@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 16 August 2018, 17:42:29 UTC |
3e7dd99 | Nguyễn Thái Ngọc Duy | 16 August 2018, 16:06:08 UTC | cherry-pick: fix --quit not deleting CHERRY_PICK_HEAD --quit is supposed to be --abort but without restoring HEAD. Leaving CHERRY_PICK_HEAD behind could make other commands mistake that cherry-pick is still ongoing (e.g. "git commit --amend" will refuse to work). Clean it too. For --abort, this job of deleting CHERRY_PICK_HEAD is on "git reset" so we don't need to do anything else. But let's add extra checks in --abort tests to confirm. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 16 August 2018, 17:02:55 UTC |
bc9238b | Phillip Wood | 15 August 2018, 09:39:35 UTC | rebase -i: fix SIGSEGV when 'merge <branch>' fails If a merge command in the todo list specifies just a branch to merge with no -C/-c argument then item->commit is NULL. This means that if there are merge conflicts error_with_patch() is passed a NULL commit which causes a segmentation fault when make_patch() tries to look it up. This commit implements a minimal fix which fixes the crash and allows the user to successfully commit a conflict resolution with 'git rebase --continue'. It does not write .git/rebase-merge/patch, .git/rebase-merge/stopped-sha or update REBASE_HEAD. To sensibly get the hashes of the merge parents would require refactoring do_merge() to extract the code that parses the merge parents into a separate function which error_with_patch() could then use to write the parents into the stopped-sha file. To create meaningful output make_patch() and 'git rebase --show-current-patch' would also need to be modified to diff the merge parent and merge base in this case. Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk> Acked-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 16 August 2018, 15:54:50 UTC |
d54e189 | Phillip Wood | 15 August 2018, 09:39:34 UTC | t3430: add conflicting commit Move the creation of conflicting-G from a test to the setup so that it can be used in subsequent tests without creating the kind of implicit dependencies that plague t3404. While we're at it simplify the arguments to the test_commit() call the creates the conflicting commit. Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 16 August 2018, 15:52:58 UTC |
63749b2 | Junio C Hamano | 15 August 2018, 22:13:39 UTC | Sixth batch for 2.19 cycle Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 August 2018, 22:13:39 UTC |
b160b6e | Junio C Hamano | 15 August 2018, 22:08:28 UTC | Merge branch 'jt/connectivity-check-after-unshallow' "git fetch" sometimes failed to update the remote-tracking refs, which has been corrected. * jt/connectivity-check-after-unshallow: fetch-pack: unify ref in and out param | 15 August 2018, 22:08:28 UTC |
6be44b5 | Junio C Hamano | 15 August 2018, 22:08:28 UTC | Merge branch 'sg/travis-retrieve-trash-upon-failure' The Travis CI scripts were taught to ship back the test data from failed tests. * sg/travis-retrieve-trash-upon-failure: travis-ci: include the trash directories of failed tests in the trace log | 15 August 2018, 22:08:28 UTC |
11ea82a | Junio C Hamano | 15 August 2018, 22:08:28 UTC | Merge branch 'rs/remote-mv-leakfix' Leakfix. * rs/remote-mv-leakfix: remote: clear string_list after use in mv() | 15 August 2018, 22:08:28 UTC |
c5c26f7 | Junio C Hamano | 15 August 2018, 22:08:27 UTC | Merge branch 'es/mw-to-git-chain-fix' Test fix. * es/mw-to-git-chain-fix: mw-to-git/t9360: fix broken &&-chain | 15 August 2018, 22:08:27 UTC |
dca64ed | Junio C Hamano | 15 August 2018, 22:08:27 UTC | Merge branch 'ms/http-proto-doc' Doc fix. * ms/http-proto-doc: doc: fix want-capability separator | 15 August 2018, 22:08:27 UTC |
2e2c24f | Junio C Hamano | 15 August 2018, 22:08:27 UTC | Merge branch 'nd/pack-objects-threading-doc' Doc fix. * nd/pack-objects-threading-doc: pack-objects: document about thread synchronization | 15 August 2018, 22:08:27 UTC |
ab53920 | Junio C Hamano | 15 August 2018, 22:08:27 UTC | Merge branch 'jn/subtree-test-fixes' Test fix. * jn/subtree-test-fixes: subtree test: simplify preparation of expected results subtree test: add missing && to &&-chain | 15 August 2018, 22:08:27 UTC |
dd4ab3e | Junio C Hamano | 15 August 2018, 22:08:27 UTC | Merge branch 'cb/p4-pre-submit-hook' "git p4 submit" learns to ask its own pre-submit hook if it should continue with submitting. * cb/p4-pre-submit-hook: git-p4: add the `p4-pre-submit` hook | 15 August 2018, 22:08:27 UTC |
30cf191 | Junio C Hamano | 15 August 2018, 22:08:26 UTC | Merge branch 'js/vscode' Add a script (in contrib/) to help users of VSCode work better with our codebase. * js/vscode: vscode: let cSpell work on commit messages, too vscode: add a dictionary for cSpell vscode: use 8-space tabs, no trailing ws, etc for Git's source code vscode: wrap commit messages at column 72 by default vscode: only overwrite C/C++ settings mingw: define WIN32 explicitly cache.h: extract enum declaration from inside a struct declaration vscode: hard-code a couple defines contrib: add a script to initialize VS Code configuration | 15 August 2018, 22:08:26 UTC |
88f2407 | Junio C Hamano | 15 August 2018, 22:08:26 UTC | Merge branch 'bb/redecl-enum-fix' Compilation fix. * bb/redecl-enum-fix: packfile: ensure that enum object_type is defined | 15 August 2018, 22:08:26 UTC |
e28daf2 | Junio C Hamano | 15 August 2018, 22:08:26 UTC | Merge branch 'jk/banned-function' It is too easy to misuse system API functions such as strcat(); these selected functions are now forbidden in this codebase and will cause a compilation failure. * jk/banned-function: banned.h: mark strncpy() as banned banned.h: mark sprintf() as banned banned.h: mark strcat() as banned automatically ban strcpy() | 15 August 2018, 22:08:26 UTC |
e4095da | Junio C Hamano | 15 August 2018, 22:08:25 UTC | Merge branch 'en/merge-recursive-skip-fix' When the sparse checkout feature is in use, "git cherry-pick" and other mergy operations lost the skip_worktree bit when a path that is excluded from checkout requires content level merge, which is resolved as the same as the HEAD version, without materializing the merge result in the working tree, which made the path appear as deleted. This has been corrected by preserving the skip_worktree bit (and not materializing the file in the working tree). * en/merge-recursive-skip-fix: merge-recursive: preserve skip_worktree bit when necessary t3507: add a testcase showing failure with sparse checkout | 15 August 2018, 22:08:26 UTC |
d6628c9 | Junio C Hamano | 15 August 2018, 22:08:25 UTC | Merge branch 'jt/tag-following-with-proto-v2-fix' The wire-protocol v2 relies on the client to send "ref prefixes" to limit the bandwidth spent on the initial ref advertisement. "git fetch $remote branch:branch" that asks tags that point into the history leading to the "branch" automatically followed sent to narrow prefix and broke the tag following, which has been fixed. * jt/tag-following-with-proto-v2-fix: fetch: send "refs/tags/" prefix upon CLI refspecs t5702: test fetch with multiple refspecs at a time | 15 August 2018, 22:08:25 UTC |
7d020f5 | Junio C Hamano | 15 August 2018, 22:08:25 UTC | Merge branch 'jk/size-t' Code clean-up to use size_t/ssize_t when they are the right type. * jk/size-t: strbuf_humanise: use unsigned variables pass st.st_size as hint for strbuf_readlink() strbuf_readlink: use ssize_t strbuf: use size_t for length in intermediate variables reencode_string: use size_t for string lengths reencode_string: use st_add/st_mult helpers | 15 August 2018, 22:08:25 UTC |
bce8031 | Junio C Hamano | 15 August 2018, 22:08:25 UTC | Merge branch 'sg/coccicheck-updates' Update the way we use Coccinelle to find out-of-style code that need to be modernised. * sg/coccicheck-updates: coccinelle: extract dedicated make target to clean Coccinelle's results coccinelle: put sane filenames into output patches coccinelle: exclude sha1dc source files from static analysis coccinelle: use $(addsuffix) in 'coccicheck' make target coccinelle: mark the 'coccicheck' make target as .PHONY | 15 August 2018, 22:08:25 UTC |
57fbd8e | Junio C Hamano | 15 August 2018, 22:08:25 UTC | Merge branch 'sb/histogram-less-memory' "git diff --histogram" had a bad memory usage pattern, which has been rearranged to reduce the peak usage. * sb/histogram-less-memory: xdiff/histogram: remove tail recursion xdiff/xhistogram: move index allocation into find_lcs xdiff/xhistogram: factor out memory cleanup into free_index() xdiff/xhistogram: pass arguments directly to fall_back_to_classic_diff | 15 August 2018, 22:08:25 UTC |
4bea848 | Junio C Hamano | 15 August 2018, 22:08:23 UTC | Merge branch 'nd/i18n' Many more strings are prepared for l10n. * nd/i18n: (23 commits) transport-helper.c: mark more strings for translation transport.c: mark more strings for translation sha1-file.c: mark more strings for translation sequencer.c: mark more strings for translation replace-object.c: mark more strings for translation refspec.c: mark more strings for translation refs.c: mark more strings for translation pkt-line.c: mark more strings for translation object.c: mark more strings for translation exec-cmd.c: mark more strings for translation environment.c: mark more strings for translation dir.c: mark more strings for translation convert.c: mark more strings for translation connect.c: mark more strings for translation config.c: mark more strings for translation commit-graph.c: mark more strings for translation builtin/replace.c: mark more strings for translation builtin/pack-objects.c: mark more strings for translation builtin/grep.c: mark strings for translation builtin/config.c: mark more strings for translation ... | 15 August 2018, 22:08:23 UTC |
3ec5ebe | Junio C Hamano | 15 August 2018, 22:08:23 UTC | Merge branch 'hs/gpgsm' Teach "git tag -s" etc. a few configuration variables (gpg.format that can be set to "openpgp" or "x509", and gpg.<format>.program that is used to specify what program to use to deal with the format) to allow x.509 certs with CMS via "gpgsm" to be used instead of openpgp via "gnupg". * hs/gpgsm: gpg-interface t: extend the existing GPG tests with GPGSM gpg-interface: introduce new signature format "x509" using gpgsm gpg-interface: introduce new config to select per gpg format program gpg-interface: do not hardcode the key string len anymore gpg-interface: introduce an abstraction for multiple gpg formats t/t7510: check the validation of the new config gpg.format gpg-interface: add new config to select how to sign a commit | 15 August 2018, 22:08:23 UTC |
2d7a202 | Junio C Hamano | 15 August 2018, 22:08:23 UTC | Merge branch 'bw/clone-ref-prefixes' The wire-protocol v2 relies on the client to send "ref prefixes" to limit the bandwidth spent on the initial ref advertisement. "git clone" when learned to speak v2 forgot to do so, which has been corrected. * bw/clone-ref-prefixes: clone: send ref-prefixes when using protocol v2 | 15 August 2018, 22:08:23 UTC |
1689c22 | Junio C Hamano | 15 August 2018, 22:08:22 UTC | Merge branch 'jk/core-use-replace-refs' A new configuration variable core.usereplacerefs has been added, primarily to help server installations that want to ignore the replace mechanism altogether. * jk/core-use-replace-refs: add core.usereplacerefs config option check_replace_refs: rename to read_replace_refs check_replace_refs: fix outdated comment | 15 August 2018, 22:08:23 UTC |
a14a9bf | Junio C Hamano | 15 August 2018, 22:08:22 UTC | Merge branch 'jh/json-writer' Preparatory code to later add json output for telemetry data. * jh/json-writer: json_writer: new routines to create JSON data | 15 August 2018, 22:08:22 UTC |
8cabe16 | Junio C Hamano | 15 August 2018, 22:08:22 UTC | Merge branch 'bb/make-developer-pedantic' "make DEVELOPER=1 DEVOPTS=pedantic" allows developers to compile with -pedantic option, which may catch more problematic program constructs and potential bugs. * bb/make-developer-pedantic: Makefile: add a DEVOPTS flag to get pedantic compilation | 15 August 2018, 22:08:22 UTC |
706b0b5 | Junio C Hamano | 15 August 2018, 22:08:22 UTC | Merge branch 'es/diff-color-moved-fix' One of the "diff --color-moved" mode "dimmed_zebra" that was named in an unusual way has been deprecated and replaced by "dimmed-zebra". * es/diff-color-moved-fix: diff: --color-moved: rename "dimmed_zebra" to "dimmed-zebra" | 15 August 2018, 22:08:22 UTC |
1ba2fc6 | Junio C Hamano | 15 August 2018, 22:08:21 UTC | Merge branch 'bw/protocol-v2' Doc update. * bw/protocol-v2: pack-protocol: mention and point to docs for protocol v2 | 15 August 2018, 22:08:21 UTC |
94f879c | Junio C Hamano | 15 August 2018, 22:08:21 UTC | Merge branch 'sg/travis-cocci-diagnose-failure' Update the way we run static analysis tool at TravisCI to make it easier to use its findings. * sg/travis-cocci-diagnose-failure: travis-ci: fail if Coccinelle static analysis found something to transform travis-ci: run Coccinelle static analysis with two parallel jobs | 15 August 2018, 22:08:21 UTC |
10639c3 | Junio C Hamano | 15 August 2018, 22:08:21 UTC | Merge branch 'js/t7406-recursive-submodule-update-order-fix' Test fix. * js/t7406-recursive-submodule-update-order-fix: t7406: avoid failures solely due to timing issues | 15 August 2018, 22:08:21 UTC |
ea30f53 | Junio C Hamano | 15 August 2018, 22:08:20 UTC | Merge branch 'bw/fetch-pack-i18n' i18n updates. * bw/fetch-pack-i18n: fetch-pack: mark die strings for translation | 15 August 2018, 22:08:20 UTC |
1638a62 | Junio C Hamano | 15 August 2018, 22:08:20 UTC | Merge branch 'sg/fast-import-dump-refs-on-checkpoint-fix' Test update. * sg/fast-import-dump-refs-on-checkpoint-fix: t9300: wait for background fast-import process to die after killing it | 15 August 2018, 22:08:20 UTC |
ae4e3f4 | Junio C Hamano | 15 August 2018, 22:08:19 UTC | Merge branch 'sb/trailers-docfix' Doc update. * sb/trailers-docfix: Documentation/git-interpret-trailers: explain possible values | 15 August 2018, 22:08:19 UTC |
5a66930 | Junio C Hamano | 15 August 2018, 22:08:19 UTC | Merge branch 'jk/ui-color-always-to-auto' Doc formatting fix. * jk/ui-color-always-to-auto: Documentation: fix --color option formatting | 15 August 2018, 22:08:19 UTC |
1076f1e | Elijah Newren | 15 August 2018, 17:54:10 UTC | Remove forward declaration of an enum According to http://c-faq.com/null/machexamp.html, sizeof(char*) != sizeof(int*) on some platforms. Since an enum could be a char or int (or long or...), knowing the size of the enum thus is important to knowing the size of a pointer to an enum, so we cannot just forward declare an enum the way we can a struct. (Also, modern C++ compilers apparently define forward declarations of an enum to either be useless because the enum was defined, or require an explicit size specifier, or be a compilation error.) Helped-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 August 2018, 18:52:09 UTC |
f790d81 | Elijah Newren | 15 August 2018, 17:54:09 UTC | compat/precompose_utf8.h: use more common include guard style Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 August 2018, 18:52:09 UTC |
64e68a3 | Elijah Newren | 15 August 2018, 17:54:08 UTC | urlmatch.h: fix include guard Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 August 2018, 18:52:09 UTC |
e730b81 | Elijah Newren | 15 August 2018, 17:54:07 UTC | Move definition of enum branch_track from cache.h to branch.h 'branch_track' feels more closely related to branching, and it is needed later in branch.h; rather than #include'ing cache.h in branch.h for this small enum, just move the enum and the external declaration for git_branch_track to branch.h. Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 August 2018, 18:52:09 UTC |
1731310 | Elijah Newren | 15 August 2018, 17:54:06 UTC | alloc: make allocate_alloc_state and clear_alloc_state more consistent Since both functions are using the same data type, they should either both refer to it as void *, or both use the real type (struct alloc_state *). Opt for the latter. Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 August 2018, 18:52:09 UTC |