What's cooking (2019/06 #05)

todo
Junio C Hamano 2019-06-19 21:32:54 -07:00
parent 6a57eddf28
commit a620daca1e
1 changed files with 291 additions and 389 deletions

View File

@ -1,10 +1,10 @@
To: git@vger.kernel.org
Bcc: lwn@lwn.net
Subject: What's cooking in git.git (Jun 2019, #04; Fri, 14)
X-master-at: 0aae918dd929862d3ce0ea2960897787bb269a3b
X-next-at: d03e0c960ffbffc6714d0e076319c44163f03ac5
Subject: What's cooking in git.git (Jun 2019, #05; Wed, 19)
X-master-at: a6a95cd1b46e48e5fe06bdbb0839a67ebeef4682
X-next-at: 172b71a6c5b95846749746f7d63238d5f702bb00

What's cooking in git.git (Jun 2019, #04; Fri, 14)
What's cooking in git.git (Jun 2019, #05; Wed, 19)
--------------------------------------------------

Here are the topics that have been cooking. Commits prefixed with
@ -12,9 +12,9 @@ Here are the topics that have been cooking. Commits prefixed with
'+' are in 'next'. The ones marked with '.' do not appear in any of
the integration branches, but I am still holding onto them.

The first batch of topics post 2.22 are now in 'master'. Let's thin
down what are left in 'next' before taking anything new, and try to
keep this cycle short.
The secondt batch of topics post 2.22 are now in 'master'. Let's
thin down what are left in 'next' before taking anything new, and
try to keep this cycle short.

You can find the changes described here in the integration branches
of the repositories listed at
@ -24,220 +24,298 @@ of the repositories listed at
--------------------------------------------------
[Graduated to "master"]

* ab/deprecate-R-for-dynpath (2019-05-19) 1 commit
(merged to 'next' on 2019-05-19 at 944976e981)
+ Makefile: remove the NO_R_TO_GCC_LINKER flag
* ba/clone-remote-submodules (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 71972f94c2)
+ clone: add `--remote-submodules` flag

The way of specifying the path to find dynamic libraries at runtime
has been simplified. The old default to pass -R/path/to/dir has been
replaced with the new default to pass -Wl,-rpath,/path/to/dir,
which is the more recent GCC uses. Those who need to build with an
old GCC can still use "CC_LD_DYNPATH=-R"
"git clone --recurse-submodules" learned to set up the submodules
to ignore commit object names recorded in the superproject gitlink
and instead use the commits that happen to be at the tip of the
remote-tracking branches from the get-go, by passing the new
"--remote-submodules" option.


* ab/fail-prereqs-in-test (2019-05-14) 1 commit
(merged to 'next' on 2019-05-16 at d1be55f485)
+ tests: add a special setup where prerequisites fail
* bb/unicode-12.1-reiwa (2019-05-29) 1 commit
(merged to 'next' on 2019-05-30 at 016465335c)
+ unicode: update the width tables to Unicode 12.1

Developer support to emulate unsatisfied prerequisites in tests to
ensure that the remainer of the tests still succeeds when tests
with prerequisites are skipped.
Update to Unicode 12.1 width table.


* ab/send-email-transferencoding-fix (2019-05-29) 7 commits
(merged to 'next' on 2019-05-29 at c8a99d18c0)
+ send-email: fix regression in sendemail.identity parsing
+ send-email: document --no-[to|cc|bcc]
+ send-email: fix broken transferEncoding tests
+ send-email: remove cargo-culted multi-patch pattern in tests
(merged to 'next' on 2019-05-13 at 38c6a1e7e0)
+ send-email: do defaults -> config -> getopt in that order
+ send-email: rename the @bcclist variable for consistency
+ send-email: move the read_config() function above getopts
* bl/userdiff-octave (2019-05-29) 2 commits
(merged to 'next' on 2019-05-29 at 6ed07afc89)
+ userdiff: fix grammar and style issues
(merged to 'next' on 2019-05-19 at 9ea1180d6c)
+ userdiff: add Octave

Since "git send-email" learned to take 'auto' as the value for the
transfer-encoding, it by mistake stopped honoring the values given
to the configuration variables sendemail.transferencoding and/or
sendemail.<ident>.transferencoding. This has been corrected to
(finally) redoing the order of setting the default, reading the
configuration and command line options.
The pattern "git diff/grep" use to extract funcname and words
boundary for Matlab has been extend to cover Octave, which is more
or less equivalent.


* dl/format-patch-notes-config (2019-05-17) 2 commits
(merged to 'next' on 2019-05-19 at d3f6f1872b)
+ format-patch: teach format.notes config option
+ git-format-patch.txt: document --no-notes option
* ds/object-info-for-prefetch-fix (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at ee0055b276)
+ sha1-file: split OBJECT_INFO_FOR_PREFETCH

"git format-patch" learns a configuration to set the default for
its --notes=<ref> option.
Code cleanup and futureproof.


* en/fast-export-encoding (2019-05-14) 5 commits
(merged to 'next' on 2019-05-16 at c88bd3edb5)
+ fast-export: do automatic reencoding of commit messages only if requested
+ fast-export: differentiate between explicitly UTF-8 and implicitly UTF-8
+ fast-export: avoid stripping encoding header if we cannot reencode
+ fast-import: support 'encoding' commit header
+ t9350: fix encoding test to actually test reencoding
* ds/topo-traversal-using-commit-graph (2019-05-28) 2 commits
(merged to 'next' on 2019-05-30 at 590527995e)
+ revision: keep topo-walk free of unintersting commits
+ revision: use generation for A..B --topo-order queries

The "git fast-export/import" pair has been taught to handle commits
with log messages in encoding other than UTF-8 better.
Prepare use of reachability index in topological walker that works
on a range (A..B).


* ew/update-server-info (2019-05-15) 1 commit
(merged to 'next' on 2019-05-19 at bf4f2871ab)
+ update-server-info: avoid needless overwrites
* es/first-contrib-tutorial (2019-05-29) 3 commits
(merged to 'next' on 2019-05-30 at 96317960ab)
+ doc: add some nit fixes to MyFirstContribution
(merged to 'next' on 2019-05-19 at 9ddfae82bf)
+ documentation: add anchors to MyFirstContribution
+ documentation: add tutorial for first contribution

"git update-server-info" learned not to rewrite the file with the
same contents.
A new tutorial targetting specifically aspiring git-core
developers.


* jk/help-unknown-ref-fix (2019-05-15) 2 commits
(merged to 'next' on 2019-05-19 at e3e01160f7)
+ help_unknown_ref(): check for refname ambiguity
+ help_unknown_ref(): duplicate collected refnames
* es/git-debugger-doc (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 449ba4ae6c)
+ doc: hint about GIT_DEBUGGER in CodingGuidelines

Improve the code to show args with potential typo that cannot be
interpreted as a commit-ish.
Doc update.


* jk/unused-params-final-batch (2019-05-13) 14 commits
(merged to 'next' on 2019-05-15 at ef7435264c)
+ verify-commit: simplify parameters to run_gpg_verify()
+ show-branch: drop unused parameter from show_independent()
+ rev-list: drop unused void pointer from finish_commit()
+ remove_all_fetch_refspecs(): drop unused "remote" parameter
+ receive-pack: drop unused "commands" from prepare_shallow_update()
+ pack-objects: drop unused rev_info parameters
+ name-rev: drop unused parameters from is_better_name()
+ mktree: drop unused length parameter
+ wt-status: drop unused status parameter
+ read-cache: drop unused parameter from threaded load
+ clone: drop dest parameter from copy_alternates()
+ submodule: drop unused prefix parameter from some functions
+ builtin: consistently pass cmd_* prefix to parse_options
+ cmd_{read,write}_tree: rename "unused" variable that is used
* es/grep-require-name-when-needed (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at e1ec57894a)
+ grep: fail if call could output and name is null

Remove many unused parameters throughout the codebase, with the
ultimate aim to allow us compile with -Wunused-parameter cleanly.
More parameter validation.


* js/rebase-cleanup (2019-05-15) 5 commits
(merged to 'next' on 2019-05-16 at ccfed8f263)
+ rebase: fold git-rebase--common into the -p backend
+ sequencer: the `am` and `rebase--interactive` scripts are gone
+ .gitignore: there is no longer a built-in `git-rebase--interactive`
+ t3400: stop referring to the scripted rebase
+ Drop unused git-rebase--am.sh
* ew/server-info-remove-crufts (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 655ba18f30)
+ server-info: do not list unlinked packs

Update supporting parts of "git rebase" to remove code that should
no longer be used.
"git update-server-info" used to leave stale packfiles in its
output, which has been corrected.


* mh/import-transport-fd-fix (2019-05-16) 2 commits
(merged to 'next' on 2019-05-19 at 5e86f92f7a)
+ Use xmmap_gently instead of xmmap in use_pack
+ dup() the input fd for fast-import used for remote helpers
* jk/HEAD-symref-in-xfer-namespaces (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at c2cfe38955)
+ upload-pack: strip namespace from symref data

The ownership rule for the file descriptor to fast-import remote
backend was mixed up, leading to unrelated file descriptor getting
closed, which has been fixed.
The server side support for "git fetch" used to show incorrect
value for the HEAD symbolic ref when the namespace feature is in
use, which has been corrected.


* nd/corrupt-worktrees (2019-05-15) 1 commit
(merged to 'next' on 2019-05-16 at d92c25f800)
+ worktree add: be tolerant of corrupt worktrees
* jk/am-i-resolved-fix (2019-05-28) 4 commits
(merged to 'next' on 2019-05-29 at e711103b1a)
+ am: fix --interactive HEAD tree resolution
+ am: drop tty requirement for --interactive
+ am: read interactive input from stdin
+ am: simplify prompt response handling

"git worktree add" used to fail when another worktree connected to
the same repository was corrupt, which has been corrected.
"git am -i --resolved" segfaulted after trying to see a commit as
if it were a tree, which has been corrected.


* nd/init-relative-template-fix (2019-05-13) 1 commit
(merged to 'next' on 2019-05-15 at 4d5b17f712)
+ init: make --template path relative to $CWD
* js/bisect-helper-check-get-oid-return-value (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 24125b3bc0)
+ bisect--helper: verify HEAD could be parsed before continuing

A relative pathname given to "git init --template=<path> <repo>"
ought to be relative to the directory "git init" gets invoked in,
but it instead was made relative to the repository, which has been
corrected.
Code cleanup.


* nd/merge-quit (2019-05-19) 2 commits
(merged to 'next' on 2019-05-19 at 9880e7ee4e)
+ merge: add --quit
+ merge: remove drop_save() in favor of remove_merge_branch_state()
* js/bundle-verify-require-object-store (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 747fbbaf11)
+ bundle verify: error out if called without an object database

"git merge" learned "--quit" option that cleans up the in-progress
merge while leaving the working tree and the index still in a mess.
"git bundle verify" needs to see if prerequisite objects exist in
the receiving repository, but the command did not check if we are
in a repository upfront, which has been corrected.


* nd/worktree-name-sanitization (2019-05-15) 1 commit
(merged to 'next' on 2019-05-16 at 9a2dd33122)
+ worktree add: sanitize worktree names
* js/fsmonitor-unflake (2019-05-28) 2 commits
(merged to 'next' on 2019-05-30 at 1aa850bc59)
+ mark_fsmonitor_valid(): mark the index as changed if needed
+ fill_stat_cache_info(): prepare for an fsmonitor fix

In recent versions of Git, per-worktree refs are exposed in
refs/worktrees/<wtname>/ hierarchy, which means that worktree names
must be a valid refname component. The code now sanitizes the names
given to worktrees, to make sure these refs are well-formed.
The data collected by fsmonitor was not properly written back to
the on-disk index file, breaking t7519 tests occasionally, which
has been corrected.


* pw/rebase-edit-message-for-replayed-merge (2019-05-19) 1 commit
(merged to 'next' on 2019-05-19 at dc3e30641c)
+ rebase -r: always reword merge -c
* mm/p4-unshelve-windows-fix (2019-05-28) 1 commit
(merged to 'next' on 2019-05-31 at d45167d723)
+ p4 unshelve: fix "Not a valid object name HEAD0" on Windows

A "merge -c" instruction during "git rebase --rebase-merges" should
give the user a chance to edit the log message, even when there is
otherwise no need to create a new merge and replace the existing
one (i.e. fast-forward instead), but did not. Which has been
corrected.
The command line to invoke a "git cat-file" command from inside
"git p4" was not properly quoted to protect a caret and running a
broken command on Windows, which has been corrected.


* sb/format-patch-base-patch-id-fix (2019-05-08) 2 commits
(merged to 'next' on 2019-05-15 at 1ab7d2b71c)
+ format-patch: make --base patch-id output stable
+ format-patch: inform user that patch-id generation is unstable
* pb/request-pull-verify-remote-ref (2019-05-28) 2 commits
(merged to 'next' on 2019-05-31 at 0f73300dfa)
+ request-pull: warn if the remote object is not the same as the local one
+ request-pull: quote regex metacharacters in local ref

The "--base" option of "format-patch" computed the patch-ids for
prerequisite patches in an unstable way, which has been updated to
compute in a way that is compatible with "git patch-id --stable".
"git request-pull" learned to warn when the ref we ask them to pull
from in the local repository and in the published repository are
different.


* po/git-help-on-git-itself (2019-05-16) 2 commits
(merged to 'next' on 2019-05-31 at 455541d73a)
+ Doc: git.txt: remove backticks from link and add git-scm.com/docs
+ git.c: show usage for accessing the git(1) help page

"git help git" was hard to discover (well, at least for some
people).


* sw/git-p4-unshelve-branched-files (2019-05-28) 1 commit
(merged to 'next' on 2019-05-30 at e1985f61fc)
+ git-p4: allow unshelving of branched files

"git p4" update.


* vv/merge-squash-with-explicit-commit (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 209baa3e55)
+ merge: refuse --commit with --squash

"git merge --squash" is designed to update the working tree and the
index without creating the commit, and this cannot be countermanded
by adding the "--commit" option; the command now refuses to work
when both options are given.


* xl/record-partial-clone-origin (2019-05-29) 1 commit
(merged to 'next' on 2019-05-31 at dc291fa199)
+ clone: respect user supplied origin name when setting up partial clone

When creating a partial clone, the object filtering criteria is
recorded for the origin of the clone, but this incorrectly used a
hardcoded name "origin" to name that remote; it has been corrected
to honor the "--origin <name>" option.

--------------------------------------------------
[New Topics]

* js/gcc-8-and-9 (2019-06-13) 4 commits
- config: avoid calling `labs()` on too-large data type
- winansi: simplify loading the GetCurrentConsoleFontEx() function
- kwset: allow building with GCC 8
- poll (mingw): allow compiling with GCC 8 and DEVELOPER=1
* cb/fsmonitor-intfix (2019-06-17) 1 commit
- fsmonitor: avoid signed integer overflow / infinite loop

Code clean-up for new compilers.

The 'kwset' one may want to be discussed a bit longer. Perhaps
merge the other three earlier to 'next' and then to 'master'
separately?


* pw/add-p-recount (2019-06-13) 1 commit
- add -p: fix checkout -p with pathological context

"git checkout -p" needs to selectively apply a patch in reverse,
which did not work well.
Variable type fix.

Will merge to 'next' and then to 'master'.


* rs/avoid-overflow-in-midpoint-computation (2019-06-13) 1 commit
- cleanup: fix possible overflow errors in binary search, part 2
* es/rev-list-no-object-names (2019-06-19) 1 commit
- rev-list: teach --no-object-names to enable piping

Code clean-up to avoid signed integer overlaps during binary search.
"git rev-list --objects" learned with "--no-object-names" option to
squelch the path to the object that is used as a grouping hint for
pack-objects.

Will merge to 'next'.


* md/list-objects-filter-combo (2019-06-17) 10 commits
- list-objects-filter-options: make parser void
- list-objects-filter-options: clean up use of ALLOC_GROW
- list-objects-filter-options: allow mult. --filter
- strbuf: give URL-encoding API a char predicate fn
- list-objects-filter-options: make filter_spec a string_list
- list-objects-filter-options: move error check up
- list-objects-filter: implement composite filters
- list-objects-filter-options: always supply *errbuf
- list-objects-filter: put omits set in filter struct
- list-objects-filter: make API easier to use

The list-objects-filter API (used to create a sparse/lazy clone)
learned to take a combined filter specification.


* pw/doc-synopsis-markup-opmode-options (2019-06-17) 1 commit
- show --continue/skip etc. consistently in synopsis

Docfix.

Will merge to 'next' and then to 'master'.


* js/t3404-typofix (2019-06-14) 1 commit
- t3404: fix a typo
* rs/copy-array (2019-06-17) 2 commits
- use COPY_ARRAY for copying arrays
- coccinelle: use COPY_ARRAY for copying arrays

Typofix.
Code clean-up.

Will merge to 'next' and then to 'master'.


* cb/mkstemps-uint-type-fix (2019-06-19) 1 commit
- wrapper: avoid undefined behaviour in macOS

Variable type fix.

Will merge to 'next' and then to 'master'.


* cb/xdiff-no-system-includes-in-dot-c (2019-06-19) 1 commit
- xdiff: avoid accidental redefinition of LFS feature in OpenIndiana

Compilation fix.

Will be rerolled together with patches from the
jk/no-system-includes-in-dot-c topic.


* jk/no-system-includes-in-dot-c (2019-06-19) 2 commits
- wt-status.h: drop stdio.h include
- verify-tag: drop signal.h include

Compilation fix.

Will be rerolled with the above.


* jk/trailers-use-config (2019-06-19) 1 commit
- interpret-trailers: load default config

"git interpret-trailers" always treated '#' as the comment
character, regardless of core.commentChar setting, which has been
corrected.

Will merge to 'next' and then to 'master'.


* nd/fetch-multi-gc-once (2019-06-19) 1 commit
- fetch: only run 'gc' once when fetching multiple remotes

"git fetch" that grabs from a group of remotes learned to run the
auto-gc only once at the very end.

Will merge to 'next'.


* ra/cherry-pick-revert-skip (2019-06-19) 5 commits
- cherry-pick/revert: advise using --skip
- cherry-pick/revert: add --skip option
- sequencer: use argv_array in reset_merge
- sequencer: rename reset_for_rollback to reset_merge
- sequencer: add advice for revert

"git cherry-pick/revert" learned a new "--skip" action.


* tg/stash-ref-by-index-fix (2019-06-19) 1 commit
- stash: fix show referencing stash index

"git stash show 23" used to work, but no more after getting
rewritten in C; this regression has been corrected.

Will merge to 'next' and then to 'master'.

@ -316,6 +394,44 @@ of the repositories listed at
--------------------------------------------------
[Cooking]

* js/gcc-8-and-9 (2019-06-13) 4 commits
- config: avoid calling `labs()` on too-large data type
- winansi: simplify loading the GetCurrentConsoleFontEx() function
- kwset: allow building with GCC 8
- poll (mingw): allow compiling with GCC 8 and DEVELOPER=1

Code clean-up for new compilers.

The 'kwset' one may get a wholesale replacement, either with new
version of kwset from upstream or removal of its users, but in the
meantime, it is probably OK to merge it down.


* pw/add-p-recount (2019-06-13) 1 commit
- add -p: fix checkout -p with pathological context

"git checkout -p" needs to selectively apply a patch in reverse,
which did not work well.

Will merge to 'next' and then to 'master'.


* rs/avoid-overflow-in-midpoint-computation (2019-06-13) 1 commit
- cleanup: fix possible overflow errors in binary search, part 2

Code clean-up to avoid signed integer overlaps during binary search.

Will merge to 'next' and then to 'master'.


* js/t3404-typofix (2019-06-14) 1 commit
- t3404: fix a typo

Typofix.

Will merge to 'next' and then to 'master'.


* mo/hpux-dynpath (2019-06-07) 1 commit
- configure: Detect linking style for HP aCC on HP-UX

@ -336,13 +452,16 @@ of the repositories listed at
Will merge to 'next' and then to 'master'.


* cc/test-oidmap (2019-06-13) 3 commits
* cc/test-oidmap (2019-06-17) 4 commits
- test-hashmap: remove 'hash' command
- oidmap: use sha1hash() instead of static hash() function
- t: add t0016-oidmap.sh
- t/helper: add test-oidmap.c

Extend the test coverage a bit.

Will merge to 'next'.


* ds/midx-expire-repack (2019-06-11) 11 commits
- t5319-multi-pack-index.sh: test batch size zero
@ -362,14 +481,14 @@ of the repositories listed at
Will merge to 'next'.


* md/sort-detached-head-first (2019-06-11) 1 commit
* md/sort-detached-head-first (2019-06-19) 1 commit
- ref-filter: sort detached HEAD lines firstly

"git branch --list" learned to always output the detached HEAD as
the first item (when the HEAD is detached, of course), instead of
relying on the textual order of sorting
the first item (when the HEAD is detached, of course), regardless
of the locale.

At least the test needs to be redone.
Will merge to 'next'.


* nd/completion-no-cache-failure (2019-06-12) 1 commit
@ -464,7 +583,9 @@ of the repositories listed at
Will merge to 'next'.


* ds/commit-graph-incremental (2019-06-12) 16 commits
* ds/commit-graph-incremental (2019-06-19) 18 commits
- commit-graph: test verify across alternates
- commit-graph: normalize commit-graph filenames
- commit-graph: test --split across alternate without --split
- commit-graph: test octopus merges with --split
- commit-graph: clean up chains after flattened write
@ -481,7 +602,7 @@ of the repositories listed at
- commit-graph: rename commit_compare to oid_compare
- commit-graph: prepare for commit-graph chains
- commit-graph: document commit-graph chains
(this branch uses ds/commit-graph-write-refactor; is tangled with ds/close-object-store.)
(this branch uses ds/close-object-store and ds/commit-graph-write-refactor.)

The commits in a repository can be described by multiple
commit-graph files now, which allows the commit-graph files to be
@ -537,15 +658,6 @@ of the repositories listed at
Will merge to 'next' and then to 'master'.


* bb/unicode-12.1-reiwa (2019-05-29) 1 commit
(merged to 'next' on 2019-05-30 at 016465335c)
+ unicode: update the width tables to Unicode 12.1

Update to Unicode 12.1 width table.

Will merge to 'master'.


* ab/hash-object-doc (2019-05-28) 1 commit
(merged to 'next' on 2019-06-06 at 8e4d85b906)
+ hash-object doc: stop mentioning git-cvsimport
@ -555,177 +667,6 @@ of the repositories listed at
Will merge to 'master'.


* ds/object-info-for-prefetch-fix (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at ee0055b276)
+ sha1-file: split OBJECT_INFO_FOR_PREFETCH

Code cleanup and futureproof.

Will merge to 'master'.


* ds/topo-traversal-using-commit-graph (2019-05-28) 2 commits
(merged to 'next' on 2019-05-30 at 590527995e)
+ revision: keep topo-walk free of unintersting commits
+ revision: use generation for A..B --topo-order queries

Prepare use of reachability index in topological walker that works
on a range (A..B).

Will merge to 'master'.


* es/git-debugger-doc (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 449ba4ae6c)
+ doc: hint about GIT_DEBUGGER in CodingGuidelines

Doc update.

Will merge to 'master'.


* es/grep-require-name-when-needed (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at e1ec57894a)
+ grep: fail if call could output and name is null

More parameter validation.

Will merge to 'master'.


* ew/server-info-remove-crufts (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 655ba18f30)
+ server-info: do not list unlinked packs

"git update-server-info" used to leave stale packfiles in its
output, which has been corrected.

Will merge to 'master'.


* jk/HEAD-symref-in-xfer-namespaces (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at c2cfe38955)
+ upload-pack: strip namespace from symref data

The server side support for "git fetch" used to show incorrect
value for the HEAD symbolic ref when the namespace feature is in
use, which has been corrected.

Will merge to 'master'.


* jk/am-i-resolved-fix (2019-05-28) 4 commits
(merged to 'next' on 2019-05-29 at e711103b1a)
+ am: fix --interactive HEAD tree resolution
+ am: drop tty requirement for --interactive
+ am: read interactive input from stdin
+ am: simplify prompt response handling

"git am -i --resolved" segfaulted after trying to see a commit as
if it were a tree, which has been corrected.

Will merge to 'master'.


* js/bisect-helper-check-get-oid-return-value (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 24125b3bc0)
+ bisect--helper: verify HEAD could be parsed before continuing

Code cleanup.

Will merge to 'master'.


* js/bundle-verify-require-object-store (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 747fbbaf11)
+ bundle verify: error out if called without an object database

"git bundle verify" needs to see if prerequisite objects exist in
the receiving repository, but the command did not check if we are
in a repository upfront, which has been corrected.

Will merge to 'master'.


* js/fsmonitor-unflake (2019-05-28) 2 commits
(merged to 'next' on 2019-05-30 at 1aa850bc59)
+ mark_fsmonitor_valid(): mark the index as changed if needed
+ fill_stat_cache_info(): prepare for an fsmonitor fix

The data collected by fsmonitor was not properly written back to
the on-disk index file, breaking t7519 tests occasionally, which
has been corrected.

Will merge to 'master'.


* mm/p4-unshelve-windows-fix (2019-05-28) 1 commit
(merged to 'next' on 2019-05-31 at d45167d723)
+ p4 unshelve: fix "Not a valid object name HEAD0" on Windows

The command line to invoke a "git cat-file" command from inside
"git p4" was not properly quoted to protect a caret and running a
broken command on Windows, which has been corrected.

Will merge to 'master'.


* pb/request-pull-verify-remote-ref (2019-05-28) 2 commits
(merged to 'next' on 2019-05-31 at 0f73300dfa)
+ request-pull: warn if the remote object is not the same as the local one
+ request-pull: quote regex metacharacters in local ref

"git request-pull" learned to warn when the ref we ask them to pull
from in the local repository and in the published repository are
different.

Will merge to 'master'.


* po/git-help-on-git-itself (2019-05-16) 2 commits
(merged to 'next' on 2019-05-31 at 455541d73a)
+ Doc: git.txt: remove backticks from link and add git-scm.com/docs
+ git.c: show usage for accessing the git(1) help page

"git help git" was hard to discover (well, at least for some
people).

Will merge to 'master'.


* sw/git-p4-unshelve-branched-files (2019-05-28) 1 commit
(merged to 'next' on 2019-05-30 at e1985f61fc)
+ git-p4: allow unshelving of branched files

"git p4" update.

Will merge to 'master'.


* vv/merge-squash-with-explicit-commit (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 209baa3e55)
+ merge: refuse --commit with --squash

"git merge --squash" is designed to update the working tree and the
index without creating the commit, and this cannot be countermanded
by adding the "--commit" option; the command now refuses to work
when both options are given.

Will merge to 'master'.


* xl/record-partial-clone-origin (2019-05-29) 1 commit
(merged to 'next' on 2019-05-31 at dc291fa199)
+ clone: respect user supplied origin name when setting up partial clone

When creating a partial clone, the object filtering criteria is
recorded for the origin of the clone, but this incorrectly used a
hardcoded name "origin" to name that remote; it has been corrected
to honor the "--origin <name>" option.

Will merge to 'master'.


* jt/partial-clone-missing-ref-delta-base (2019-06-11) 4 commits
(merged to 'next' on 2019-06-12 at 95628af9bb)
+ t5616: cover case of client having delta base
@ -741,37 +682,11 @@ of the repositories listed at
Will merge to 'master'.


* bl/userdiff-octave (2019-05-29) 2 commits
(merged to 'next' on 2019-05-29 at 6ed07afc89)
+ userdiff: fix grammar and style issues
(merged to 'next' on 2019-05-19 at 9ea1180d6c)
+ userdiff: add Octave

The pattern "git diff/grep" use to extract funcname and words
boundary for Matlab has been extend to cover Octave, which is more
or less equivalent.

Will merge to 'master'.


* ba/clone-remote-submodules (2019-05-28) 1 commit
(merged to 'next' on 2019-05-29 at 71972f94c2)
+ clone: add `--remote-submodules` flag

"git clone --recurse-submodules" learned to set up the submodules
to ignore commit object names recorded in the superproject gitlink
and instead use the commits that happen to be at the tip of the
remote-tracking branches from the get-go, by passing the new
"--remote-submodules" option.

Will merge to 'master'.


* ds/close-object-store (2019-06-12) 3 commits
- packfile: rename close_all_packs to close_object_store
- packfile: close commit-graph in close_all_packs
- commit-graph: use raw_object_store when closing
(this branch uses ds/commit-graph-write-refactor; is tangled with ds/commit-graph-incremental.)
(this branch is used by ds/commit-graph-incremental; uses ds/commit-graph-write-refactor.)

The commit-graph file is now part of the "files that the runtime
may keep open file descriptors on, all of which would need to be
@ -814,8 +729,8 @@ of the repositories listed at
"git rebase --abort" used to leave refs/rewritten/ when concluding
"git rebase -r", which has been corrected.

On hold.
cf. <20190514180349.17245-1-phillip.wood123@gmail.com>
Will merge to 'next'.
cf. <2a37d4c2-6eec-548d-0bd0-12bbd49c8071@gmail.com>


* nb/branch-show-other-worktrees-head (2019-05-07) 3 commits
@ -831,19 +746,6 @@ of the repositories listed at
Will merge to 'next' and then to 'master'.


* es/first-contrib-tutorial (2019-05-29) 3 commits
(merged to 'next' on 2019-05-30 at 96317960ab)
+ doc: add some nit fixes to MyFirstContribution
(merged to 'next' on 2019-05-19 at 9ddfae82bf)
+ documentation: add anchors to MyFirstContribution
+ documentation: add tutorial for first contribution

A new tutorial targetting specifically aspiring git-core
developers.

Will merge to 'master'.


* cc/multi-promisor (2019-04-15) 17 commits
- Move core_partial_clone_filter_default to promisor-remote.c
- Move repository_format_partial_clone to promisor-remote.c