{"push_id":2905886027,"size":51,"distinct_size":0,"ref":"refs/heads/jk/vcs-svn-drop","head":"c6ead78a8cb659d88d69f6ebf93dbc35d82fe70b","before":"3a10b5ebcc9be3e4cdff94cb1e375519974fd8ed","commits":[{"sha":"2f3eb68f10be8541b6ffdcbb16d996fd3c7a9e82","author":{"name":"Johannes Schindelin","email":"53fb8db7833fca1e1746dd8592f61048d350f64c@gmx.de"},"message":"rebase -i --autosquash: demonstrate a problem skipping the last squash\n\nThe `git commit --squash` command can be used not only to amend commit\nmessages and changes, but also to record notes for an upcoming rebase.\n\nFor example, when the author information of a given commit is incorrect,\na user might call `git commit --allow-empty -m \"Fix author\" --squash\n<commit>`, to remind them to fix that during the rebase. When the editor\nwould pop up, the user would simply delete the commit message to abort\nthe rebase at this stage, fix the author information, and continue with\n`git rebase --skip`. (This is a real-world example from the rebase of\nGit for Windows onto v2.19.0-rc1.)\n\nHowever, there is a bug in `git rebase` that will cause the squash\nmessage *not* to be forgotten in this case. It will therefore be reused\nin the next fixup/squash chain (if any).\n\nThis patch adds a test case to demonstrate this breakage.\n\nSigned-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/2f3eb68f10be8541b6ffdcbb16d996fd3c7a9e82"},{"sha":"10d2f35436fb350c42bdb8396aee424a9bce44b5","author":{"name":"Johannes Schindelin","email":"53fb8db7833fca1e1746dd8592f61048d350f64c@gmx.de"},"message":"rebase -i: be careful to wrap up fixup/squash chains\n\nWhen an interactive rebase was stopped at the end of a fixup/squash\nchain, the user might have edited the commit manually before continuing\n(with either `git rebase --skip` or `git rebase --continue`, it does not\nreally matter which).\n\nWe need to be very careful to wrap up the fixup/squash chain also in\nthis scenario: otherwise the next fixup/squash chain would try to pick\nup where the previous one was left.\n\nSigned-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/10d2f35436fb350c42bdb8396aee424a9bce44b5"},{"sha":"6c003d6ffb7ebd1599e73921cab5e01d7428001d","author":{"name":"Jeff King","email":"696e3fbcf235d40b6ea1ebd61c87cbea79d444e7@peff.net"},"message":"reopen_tempfile(): truncate opened file\n\nWe provide a reopen_tempfile() function, which is in turn\nused by reopen_lockfile().  The idea is that a caller may\nwant to rewrite the tempfile without letting go of the lock.\nAnd that's what our one caller does: after running\nadd--interactive, \"commit -p\" will update the cache-tree\nextension of the index and write out the result, all while\nholding the lock.\n\nHowever, because we open the file with only the O_WRONLY\nflag, the existing index content is left in place, and we\noverwrite it starting at position 0. If the new index after\nupdating the cache-tree is smaller than the original, those\nfinal bytes are not overwritten and remain in the file. This\nresults in a corrupt index, since those cruft bytes are\ninterpreted as part of the trailing hash (or even as an\nextension, if there are enough bytes).\n\nThis bug actually pre-dates reopen_tempfile(); the original\ncode from 9c4d6c0297 (cache-tree: Write updated cache-tree\nafter commit, 2014-07-13) has the same bug, and those lines\nwere eventually refactored into the tempfile module. Nobody\nnoticed until now for two reasons:\n\n - the bug can only be triggered in interactive mode\n   (\"commit -p\" or \"commit -i\")\n\n - the size of the index must shrink after updating the\n   cache-tree, which implies a non-trivial deletion. Notice\n   that the included test actually has to create a 2-deep\n   hierarchy. A single level is not enough to actually cause\n   shrinkage.\n\nThe fix is to truncate the file before writing out the\nsecond index. We can do that at the caller by using\nftruncate(). But we shouldn't have to do that. There is no\nother place in Git where we want to open a file and\noverwrite bytes, making reopen_tempfile() a confusing and\nerror-prone interface. Let's pass O_TRUNC there, which gives\ncallers the same state they had after initially opening the\nfile or lock.\n\nIt's possible that we could later add a caller that wants\nsomething else (e.g., to open with O_APPEND). But this is\nthe only caller we've had in the history of the codebase.\nLet's punt on doing anything more clever until another one\ncomes along.\n\nReported-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>\nSigned-off-by: Jeff King <peff@peff.net>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/6c003d6ffb7ebd1599e73921cab5e01d7428001d"},{"sha":"c3b9bc94b9bee431323856fe2c373312c60969d7","author":{"name":"Elijah Newren","email":"955405675e5ddb1a110d200661c528aa223ef60f@gmail.com"},"message":"Remove superfluous trailing semicolons\n\nSigned-off-by: Elijah Newren <newren@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/c3b9bc94b9bee431323856fe2c373312c60969d7"},{"sha":"db2d36fad8b6b495a5064ea89d3bed1a48841ba9","author":{"name":"Brandon Williams","email":"508c49d25413636f1741a48f4d767eeebd424c11@google.com"},"message":"config: document value 2 for protocol.version\n\nUpdate the config documentation to note the value `2` as an acceptable\nvalue for the protocol.version config.\n\nSigned-off-by: Brandon Williams <bmwill@google.com>\nSigned-off-by: Josh Steadmon <steadmon@google.com>\nReviewed-by: Jonathan Nieder <jrnieder@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/db2d36fad8b6b495a5064ea89d3bed1a48841ba9"},{"sha":"0597dd62ba428dd02b2bf280ede4cdb0b2e318c0","author":{"name":"Stefan Beller","email":"a7f3b1612c245dae606b3b9617b4f52187fddb65@google.com"},"message":"string-list: remove unused function print_string_list\n\nA removal of this helper function was proposed 3 years ago [1]; the\nfunction was never used since it was introduced in 2006 back then,\nand there is no new callers since.  Now time has proven we really do\nnot need the function.\n\n[1] https://public-inbox.org/git/1421343725-3973-1-git-send-email-kuleshovmail@gmail.com/\n\nSigned-off-by: Stefan Beller <sbeller@google.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/0597dd62ba428dd02b2bf280ede4cdb0b2e318c0"},{"sha":"801fa63a90e3619c91e0bb3e7a28140e6d31a097","author":{"name":"Jeff King","email":"696e3fbcf235d40b6ea1ebd61c87cbea79d444e7@peff.net"},"message":"config.mak.dev: add -Wformat-security\n\nWe currently build cleanly with -Wformat-security, and it's\na good idea to make sure we continue to do so (since calls\nthat trigger the warning may be security vulnerabilities).\n\nNote that we cannot use the stronger -Wformat-nonliteral, as\nthere are case where we are clever with passing around\npointers to string literals. E.g., bisect_rev_setup() takes\nbad_format and good_format parameters. These ultimately come\nfrom literals, but they still trigger the warning.\n\nSome of these might be fixable (e.g., by passing flags from\nwhich we locally select a format), and might even be worth\nfixing (not because of security, but just because it's an\neasy mistake to pass the wrong format). But there are other\ncases which are likely quite hard to fix (we actually\ngenerate formats in a local buffer in some cases). So let's\npunt on that for now and start with -Wformat-security, which\nis supposed to catch the most important cases.\n\nSigned-off-by: Jeff King <peff@peff.net>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/801fa63a90e3619c91e0bb3e7a28140e6d31a097"},{"sha":"79336116f5769fb53b0d84e21e984ae300f0c6a5","author":{"name":"SZEDER Gábor","email":"d1c15c709aaa0744057ac20f93d60e563c0b84d1@gmail.com"},"message":"t3701-add-interactive: tighten the check of trace output\n\nThe test 'add -p does not expand argument lists' in\n't3701-add-interactive.sh', added in 7288e12cce (add--interactive: do\nnot expand pathspecs with ls-files, 2017-03-14), checks the GIT_TRACE\nof 'git add -p' to ensure that the name of a tracked file wasn't\npassed around as argument to any of the commands executed as a result\nof undesired pathspec expansion.  This check is done with 'grep' using\nthe filename on its own as the pattern, which is too loose a pattern,\nand would match any occurrences of the filename in the trace output,\nnot just those as command arguments.  E.g. if a developer were to\nlitter the index handling code with trace_printf()s printing, among\nother things, the name of the just processed cache entry, then that\npattern would mistakenly match these as well, and would fail the test.\n\nTighten this 'grep' pattern to only match trace lines that show the\nexecuted commands.\n\nSigned-off-by: SZEDER Gábor <szeder.dev@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/79336116f5769fb53b0d84e21e984ae300f0c6a5"},{"sha":"fab01ec52e83df886ca952879e196b8d8bd42013","author":{"name":"Phillip Wood","email":"2ab49fd2594d8067d004e5d20374688a2b5dc79c@dunelm.org.uk"},"message":"diff: fix --color-moved-ws=allow-indentation-change\n\nIf there is more than one potential moved block and the longest block\nis not the first element of the array of potential blocks then the\nblock is cut short. With --color-moved=blocks this can leave moved\nlines unpainted if the shortened block does not meet the block length\nrequirement. With --color-moved=zebra then in addition to the\nunpainted lines the moved color can change in the middle of a single\nblock.\n\nFix this by freeing the whitespace delta of the match we're discarding\nrather than the one we're keeping.\n\nSigned-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>\nAcked-by: Stefan Beller <sbeller@google.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/fab01ec52e83df886ca952879e196b8d8bd42013"},{"sha":"38c93c4d9d11b881697229d15420fc5c1367d7a9","author":{"name":"Elijah Newren","email":"955405675e5ddb1a110d200661c528aa223ef60f@gmail.com"},"message":"t4200: demonstrate rerere segfault on specially crafted merge\n\nSigned-off-by: Elijah Newren <newren@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/38c93c4d9d11b881697229d15420fc5c1367d7a9"},{"sha":"ad2bf0d9b43433583e88128c278ce31c7ca4e431","author":{"name":"Elijah Newren","email":"955405675e5ddb1a110d200661c528aa223ef60f@gmail.com"},"message":"rerere: avoid buffer overrun\n\ncheck_one_conflict() compares `i` to `active_nr` in two places to avoid\nbuffer overruns, but left out an important third location.\n\nThe code did used to have a check here comparing i to active_nr, back\nbefore commit fb70a06da2f1 (\"rerere: fix an off-by-one non-bug\",\n2015-06-28), however the code at the time used an 'if' rather than a\n'while' meaning back then that this loop could not have read past the\nend of the array, making the check unnecessary and it was removed.\nUnfortunately, in commit 5eda906b2873 (\"rerere: handle conflicts with\nmultiple stage #1 entries\", 2015-07-24), the 'if' was changed to a\n'while' and the check comparing i and active_nr was not re-instated,\nleading to this problem.\n\nSigned-off-by: Elijah Newren <newren@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/ad2bf0d9b43433583e88128c278ce31c7ca4e431"},{"sha":"06ba9d03e34ffb5fe3ca71343ceef925a447771b","author":{"name":"Jeff Hostetler","email":"e88116dcd19eff75c6264107b29ab273c69b34a0@microsoft.com"},"message":"t0051: test GIT_TRACE to a windows named pipe\n\nCreate a test-tool helper to create the server side of\na windows named pipe, wait for a client connection, and\ncopy data written to the pipe to stdout.\n\nCreate t0051 test to route GIT_TRACE output of a command\nto a named pipe using the above test-tool helper.\n\nSigned-off-by: Jeff Hostetler <jeffhost@microsoft.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/06ba9d03e34ffb5fe3ca71343ceef925a447771b"},{"sha":"eeaf7ddac7594636b517497fff3ab181966edbcc","author":{"name":"Jeff Hostetler","email":"e88116dcd19eff75c6264107b29ab273c69b34a0@microsoft.com"},"message":"mingw: fix mingw_open_append to work with named pipes\n\nSigned-off-by: Jeff Hostetler <jeffhost@microsoft.com>\nAcked-by: Johannes Sixt <j6t@kdbg.org>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/eeaf7ddac7594636b517497fff3ab181966edbcc"},{"sha":"43f1180814f456ba5fb90a55c90766b5799bd1a7","author":{"name":"Ben Peart","email":"61362c21a92523e9bc7c9efb1459143d7546279e@microsoft.com"},"message":"git-mv: allow submodules and fsmonitor to work together\n\nIt was reported that\n\n   GIT_FSMONITOR_TEST=$PWD/t7519/fsmonitor-all ./t7411-submodule-config.sh\n\nbreaks as the fsmonitor data is out of sync with the state of the .gitmodules\nfile. Update is_staging_gitmodules_ok() so that it no longer tells\nie_match_stat() to ignore refreshing the fsmonitor data.\n\nReported-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>\nHelped-by: Stefan Beller <sbeller@google.com>\nSigned-off-by: Ben Peart <benpeart@microsoft.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/43f1180814f456ba5fb90a55c90766b5799bd1a7"},{"sha":"cdc067c3197f659470591c1d5614cf9221a43c98","author":{"name":"Derrick Stolee","email":"ee0b68d4428a726bf8f65d5915bcba7139f7e5c7@microsoft.com"},"message":"t3206-range-diff.sh: cover single-patch case\n\nThe commit 40ce4160 \"format-patch: allow --range-diff to apply to\na lone-patch\" added the ability to see a range-diff as commentary\nafter the commit message of a single patch series (i.e. [PATCH]\ninstead of [PATCH X/N]). However, this functionality was not\ncovered by a test case.\n\nAdd a simple test case that checks that a range-diff is written as\ncommentary to the patch.\n\nSigned-off-by: Derrick Stolee <dstolee@microsoft.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/cdc067c3197f659470591c1d5614cf9221a43c98"},{"sha":"acdee9e9e815c2df417feef3ef8de25f0dcec68d","author":{"name":"SZEDER Gábor","email":"d1c15c709aaa0744057ac20f93d60e563c0b84d1@gmail.com"},"message":"t1700-split-index: drop unnecessary 'grep'\n\nThe test 'disable split index' in 't1700-split-index.sh' runs the\nfollowing pipeline:\n\n  cmd | grep <pattern> | sed s///\n\nDrop that 'grep' from the pipeline, and let 'sed' take over its\nduties.\n\nSigned-off-by: SZEDER Gábor <szeder.dev@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/acdee9e9e815c2df417feef3ef8de25f0dcec68d"},{"sha":"456d7cd3a96bdc8b14af6440051805de8a581364","author":{"name":"SZEDER Gábor","email":"d1c15c709aaa0744057ac20f93d60e563c0b84d1@gmail.com"},"message":"t0090: disable GIT_TEST_SPLIT_INDEX for the test checking split index\n\nThe test 'switching trees does not invalidate shared index' in\n't0090-cache-tree.sh' is about verifying the behaviour of the split\nindex feature, therefore it should be in full control of when index\nsplitting is performed, like all the tests in 't1700-split-index.sh'.\n\nUnset GIT_TEST_SPLIT_INDEX for this test to avoid unintended random\nindex splitting.\n\nSigned-off-by: SZEDER Gábor <szeder.dev@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/456d7cd3a96bdc8b14af6440051805de8a581364"},{"sha":"d64324cb60e4d0e1f5fdc1d3319c79ddbf5d0eb2","author":{"name":"Torsten Bögershausen","email":"955341c97b9d93a23c19524fc0105a6405902afe@web.de"},"message":"Make git_check_attr() a void function\n\ngit_check_attr() returns always 0.\nRemove all the error handling code of the callers, which is never executed.\nChange git_check_attr() to be a void function.\n\nSigned-off-by: Torsten Bögershausen <tboegi@web.de>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/d64324cb60e4d0e1f5fdc1d3319c79ddbf5d0eb2"},{"sha":"e4c34855a26fccd2072d452390a0e3167bcc4da9","author":{"name":"Elijah Newren","email":"955405675e5ddb1a110d200661c528aa223ef60f@gmail.com"},"message":"update-ref: fix type of update_flags variable to match its usage\n\nThe ref_transaction_*() family of functions expect a flags parameter\nwhich is of type unsigned int.  Make the update_flags variable, which\nis passed as that parameter, be of the same type.\n\nSigned-off-by: Elijah Newren <newren@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/e4c34855a26fccd2072d452390a0e3167bcc4da9"},{"sha":"d345e9fbe75c8bec6469253f0ee7e34228f41917","author":{"name":"Elijah Newren","email":"955405675e5ddb1a110d200661c528aa223ef60f@gmail.com"},"message":"update-ref: allow --no-deref with --stdin\n\nIf passed both --no-deref and --stdin, update-ref would error out with a\ngeneral usage message that did not at all suggest these options were\nincompatible.  The manpage for update-ref did suggest through its\nsynopsis line that --no-deref and --stdin were incompatible, but it sadly\nalso incorrectly suggested that -d and --no-deref were incompatible.  So\nthe help around the --no-deref option is buggy in a few ways.\n\nThe --stdin option did provide a different mechanism for avoiding\ndereferencing symbolic-refs: adding a line reading\n  option no-deref\nbefore every other directive in the input.  (Technically, if the user\nwants to do the extra work of first determining which refs they want to\nupdate or delete are symbolic, then they only need to put the extra\n\"option no-deref\" lines before the updates of those refs.  But in some\ncases, that's more work than just adding the \"option no-deref\" before\nevery other directive.)\n\nIt's easier to allow the user to just pass --no-deref along with --stdin\nin order to tell update-ref that the user doesn't want any symbolic ref\nto be dereferenced.  It also makes the update-ref documentation simpler.\nImplement that, and update the documentation to match.\n\nSigned-off-by: Elijah Newren <newren@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/d345e9fbe75c8bec6469253f0ee7e34228f41917"}]}
{"actor":{"display_login":"peff"}}