]> git.ipfire.org Git - thirdparty/git.git/commitdiff
What's cooking (2016/12 #05)
authorJunio C Hamano <gitster@pobox.com>
Tue, 20 Dec 2016 00:17:12 +0000 (16:17 -0800)
committerJunio C Hamano <gitster@pobox.com>
Tue, 20 Dec 2016 00:17:12 +0000 (16:17 -0800)
whats-cooking.txt

index f818f057e8f16e346f46cd66cfb761e6f6627889..ff12dcbf0b7b8c993b58d9e3adc040c816d6d68f 100644 (file)
@@ -1,10 +1,10 @@
 To: git@vger.kernel.org
 Bcc: lwn@lwn.net
-Subject: What's cooking in git.git (Dec 2016, #04; Fri, 16)
-X-master-at: eff96d7e16a769dca9b0319ccf460a83f514676e
-X-next-at: f8bf8f2a7b2b08001fdf3e1c554eef9249e47c19
+Subject: What's cooking in git.git (Dec 2016, #05; Mon, 19)
+X-master-at: 6610af872f6494a061780ec738c8713a034b848b
+X-next-at: 4f4050513f839a9c6e56bdec20cbd1a1cb924ef8
 
-What's cooking in git.git (Dec 2016, #04; Fri, 16)
+What's cooking in git.git (Dec 2016, #05; Mon, 19)
 --------------------------------------------------
 
 Here are the topics that have been cooking.  Commits prefixed with
@@ -12,6 +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 second (rather large) batch of topics have been merged to
+'master'.  Please test and catch possible regressions early.
+
 You can find the changes described here in the integration branches
 of the repositories listed at
 
@@ -20,252 +23,311 @@ of the repositories listed at
 --------------------------------------------------
 [Graduated to "master"]
 
-* ak/lazy-prereq-mktemp (2016-11-29) 1 commit
-  (merged to 'next' on 2016-12-12 at f346d1f053)
- + t7610: clean up foo.XXXXXX tmpdir
+* ah/grammos (2016-12-05) 3 commits
+  (merged to 'next' on 2016-12-12 at 13ad487b28)
+ + clone,fetch: explain the shallow-clone option a little more clearly
+ + receive-pack: improve English grammar of denyCurrentBranch message
+ + bisect: improve English grammar of not-ancestors message
 
Test code clean-up.
A few messages have been fixed for their grammatical errors.
 
 
-* bw/push-dry-run (2016-11-23) 2 commits
-  (merged to 'next' on 2016-12-12 at bde7a0f9ae)
- + push: fix --dry-run to not push submodules
- + push: --dry-run updates submodules when --recurse-submodules=on-demand
- (this branch uses hv/submodule-not-yet-pushed-fix; is tangled with sb/push-make-submodule-check-the-default.)
+* ak/commit-only-allow-empty (2016-12-09) 2 commits
+  (merged to 'next' on 2016-12-12 at 54188ab23c)
+ + commit: remove 'Clever' message for --only --amend
+ + commit: make --only --allow-empty work without paths
 
- "git push --dry-run --recurse-submodule=on-demand" wasn't
- "--dry-run" in the submodules.
+ "git commit --allow-empty --only" (no pathspec) with dirty index
+ ought to be an acceptable way to create a new commit that does not
+ change any paths, but it was forbidden, perhaps because nobody
+ needed it so far.
 
 
-* da/mergetool-trust-exit-code (2016-11-29) 2 commits
-  (merged to 'next' on 2016-12-12 at 28ae202868)
- + mergetools/vimdiff: trust Vim's exit code
- + mergetool: honor mergetool.$tool.trustExitCode for built-in tools
+* bb/unicode-9.0 (2016-12-14) 6 commits
+  (merged to 'next' on 2016-12-16 at be2531431a)
+ + unicode_width.h: update the width tables to Unicode 9.0
+ + update_unicode.sh: remove the plane filter
+ + update_unicode.sh: automatically download newer definition files
+ + update_unicode.sh: pin the uniset repo to a known good commit
+ + update_unicode.sh: remove an unnecessary subshell level
+ + update_unicode.sh: move it into contrib/update-unicode
 
- mergetool.<tool>.trustExitCode configuration variable did not apply
- to built-in tools, but now it does.
+ The character width table has been updated to match Unicode 9.0
 
 
-* dt/empty-submodule-in-merge (2016-11-17) 1 commit
-  (merged to 'next' on 2016-12-12 at 6de2350b2b)
- + submodules: allow empty working-tree dirs in merge/cherry-pick
+* da/difftool-dir-diff-fix (2016-12-08) 1 commit
+  (merged to 'next' on 2016-12-12 at fd31a92ad6)
+ + difftool: fix dir-diff index creation when in a subdirectory
 
- An empty directory in a working tree that can simply be nuked used
- to interfere while merging or cherry-picking a change to create a
- submodule directory there, which has been fixed..
+ "git difftool --dir-diff" had a minor regression when started from
+ a subdirectory, which has been fixed.
 
 
-* hv/submodule-not-yet-pushed-fix (2016-11-16) 4 commits
-  (merged to 'next' on 2016-12-05 at c9d729fca2)
- + submodule_needs_pushing(): explain the behaviour when we cannot answer
- + batch check whether submodule needs pushing into one call
- + serialize collection of refs that contain submodule changes
- + serialize collection of changed submodules
- (this branch is used by bw/push-dry-run and sb/push-make-submodule-check-the-default.)
+* da/mergetool-xxdiff-hotkey (2016-12-11) 1 commit
+  (merged to 'next' on 2016-12-13 at a08f375c81)
+ + mergetools: fix xxdiff hotkeys
 
- Originally merged to 'next' on 2016-11-21
+ The way to specify hotkeys to "xxdiff" that is used by "git
+ mergetool" has been modernized to match recent versions of xxdiff.
 
- The code in "git push" to compute if any commit being pushed in the
- superproject binds a commit in a submodule that hasn't been pushed
- out was overly inefficient, making it unusable even for a small
- project that does not have any submodule but have a reasonable
- number of refs.
 
+* jb/diff-no-index-no-abbrev (2016-12-08) 1 commit
+  (merged to 'next' on 2016-12-12 at 959981ef50)
+ + diff: handle --no-abbrev in no-index case
 
-* jk/rev-parse-symbolic-parents-fix (2016-11-16) 1 commit
-  (merged to 'next' on 2016-12-12 at 6839c1ea28)
- + rev-parse: fix parent shorthands with --symbolic
+ "git diff --no-index" did not take "--no-abbrev" option.
 
- "git rev-parse --symbolic" failed with a more recent notation like
- "HEAD^-1" and "HEAD^!".
 
+* jc/lock-report-on-error (2016-12-07) 3 commits
+  (merged to 'next' on 2016-12-13 at cb6c07ee92)
+ + lockfile: LOCK_REPORT_ON_ERROR
+ + hold_locked_index(): align error handling with hold_lockfile_for_update()
+ + wt-status: implement opportunisitc index update correctly
 
-* ld/p4-update-shelve (2016-12-05) 1 commit
-  (merged to 'next' on 2016-12-12 at 22f6bec94c)
- + git-p4: support updating an existing shelved changelist
- (this branch uses vk/p4-submit-shelve.)
+ Git 2.11 had a minor regression in "merge --ff-only" that competed
+ with another process that simultanously attempted to update the
+ index. We used to explain what went wrong with an error message,
+ but the new code silently failed.  The error message has been
+ resurrected.
 
- Will merge to 'master'.
 
+* jc/pull-rebase-ff (2016-11-29) 1 commit
+  (merged to 'next' on 2016-12-16 at c1a0cedd9e)
+ + pull: fast-forward "pull --rebase=true"
 
-* ls/p4-empty-file-on-lfs (2016-12-05) 1 commit
-  (merged to 'next' on 2016-12-12 at 1fce8e037a)
- + git-p4: fix empty file processing for large file system backend GitLFS
+ "git pull --rebase", when there is no new commits on our side since
+ we forked from the upstream, should be able to fast-forward without
+ invoking "git rebase", but it didn't.
 
- "git p4" LFS support was broken when LFS stores an empty blob.
 
+* jc/renormalize-merge-kill-safer-crlf (2016-12-01) 4 commits
+  (merged to 'next' on 2016-12-12 at 041b834f81)
+ + convert: git cherry-pick -Xrenormalize did not work
+ + Merge branch 'tb/t0027-raciness-fix' into jc/renormalize-merge-kill-safer-crlf
+ + merge-recursive: handle NULL in add_cacheinfo() correctly
+ + cherry-pick: demonstrate a segmentation fault
 
-* ls/p4-retry-thrice (2016-12-05) 1 commit
-  (merged to 'next' on 2016-12-12 at 9462e660a8)
- + git-p4: add config to retry p4 commands; retry 3 times by default
+ Fix a corner case in merge-recursive regression that crept in
+ during 2.10 development cycle.
 
- Will merge to 'master'.
 
+* jk/http-walker-limit-redirect (2016-12-06) 2 commits
+  (merged to 'next' on 2016-12-12 at 8b58025e3a)
+ + http-walker: complain about non-404 loose object errors
+ + Merge branch 'ew/http-walker' into jk/http-walker-limit-redirect
+ (this branch is used by bw/transport-protocol-policy; uses jk/http-walker-limit-redirect-2.9.)
 
-* nd/qsort-in-merge-recursive (2016-11-28) 1 commit
-  (merged to 'next' on 2016-12-12 at e9700f5b93)
- + merge-recursive.c: use string_list_sort instead of qsort
+ Update the error messages from the dumb-http client when it fails
+ to obtain loose objects; we used to give sensible error message
+ only upon 404 but we now forbid unexpected redirects that needs to
+ be reported with something sensible.
 
- Code simplification.
 
+* jk/http-walker-limit-redirect-2.9 (2016-12-06) 5 commits
+  (merged to 'next' on 2016-12-12 at 3e4bcd7bca)
+ + http: treat http-alternates like redirects
+ + http: make redirects more obvious
+ + remote-curl: rename shadowed options variable
+ + http: always update the base URL for redirects
+ + http: simplify update_url_from_redirect
+ (this branch is used by bw/transport-protocol-policy and jk/http-walker-limit-redirect.)
 
-* nd/worktree-list-fixup (2016-11-28) 5 commits
-  (merged to 'next' on 2016-12-12 at 1f46421a59)
- + worktree list: keep the list sorted
- + worktree.c: get_worktrees() takes a new flag argument
- + get_worktrees() must return main worktree as first item even on error
- + worktree: reorder an if statement
- + worktree.c: zero new 'struct worktree' on allocation
- (this branch is used by nd/worktree-move and sb/submodule-embed-gitdir.)
+ Transport with dumb http can be fooled into following foreign URLs
+ that the end user does not intend to, especially with the server
+ side redirects and http-alternates mechanism, which can lead to
+ security issues.  Tighten the redirection and make it more obvious
+ to the end user when it happens.
 
- The output from "git worktree list" was made in readdir() order,
- and was unstable.
 
+* jk/make-tags-find-sources-tweak (2016-12-14) 4 commits
+  (merged to 'next' on 2016-12-16 at 06d0b0fbfd)
+ + Makefile: exclude contrib from FIND_SOURCE_FILES
+ + Makefile: match shell scripts in FIND_SOURCE_FILES
+ + Makefile: exclude test cruft from FIND_SOURCE_FILES
+ + Makefile: reformat FIND_SOURCE_FILES
 
-* vk/p4-submit-shelve (2016-11-29) 1 commit
-  (merged to 'next' on 2016-12-12 at 3fce6df117)
- + git-p4: allow submit to create shelved changelists.
- (this branch is used by ld/p4-update-shelve.)
+ Update the procedure to generate "tags" for developer support.
 
- Will merge to 'master'.
 
---------------------------------------------------
-[New Topics]
+* jk/readme-gmane-is-no-more (2016-12-15) 1 commit
+  (merged to 'next' on 2016-12-16 at 44ad5c5205)
+ + README: replace gmane link with public-inbox
 
-* bw/pathspec-cleanup (2016-12-14) 16 commits
- - pathspec: rename prefix_pathspec to init_pathspec_item
- - pathspec: small readability changes
- - pathspec: create strip submodule slash helpers
- - pathspec: create parse_element_magic helper
- - pathspec: create parse_long_magic function
- - pathspec: create parse_short_magic function
- - pathspec: factor global magic into its own function
- - pathspec: simpler logic to prefix original pathspec elements
- - pathspec: always show mnemonic and name in unsupported_magic
- - pathspec: remove unused variable from unsupported_magic
- - pathspec: copy and free owned memory
- - pathspec: remove the deprecated get_pathspec function
- - ls-tree: convert show_recursive to use the pathspec struct interface
- - dir: convert fill_directory to use the pathspec struct interface
- - dir: remove struct path_simplify
- - mv: remove use of deprecated 'get_pathspec()'
 
- Code clean-up in the pathspec API.
+* jk/stash-disable-renames-internally (2016-12-06) 1 commit
+  (merged to 'next' on 2016-12-12 at e2b97aae68)
+ + stash: prefer plumbing over git-diff
 
- Waiting for the (hopefully) final round of review before 'next'.
+ When diff.renames configuration is on (and with Git 2.9 and later,
+ it is enabled by default, which made it worse), "git stash"
+ misbehaved if a file is removed and another file with a very
+ similar content is added.
 
 
-* cp/merge-continue (2016-12-15) 4 commits
- - merge: mark usage error strings for translation
- merge: ensure '--abort' option takes no arguments
- completion: add --continue option for merge
- - merge: add '--continue' option as a synonym for 'git commit'
+* jk/trailers-placeholder-in-pretty (2016-12-11) 2 commits
+  (merged to 'next' on 2016-12-12 at 57de4e699a)
+ ref-filter: add support to display trailers as part of contents
+ pretty: add %(trailers) format for displaying trailers of a commit message
+ (this branch uses jt/use-trailer-api-in-commands.)
 
"git merge --continue" has been added as a synonym to "git commit"
to conclude a merge that has stopped due to conflicts.
In addition to %(subject), %(body), "log --pretty=format:..."
learned a new placeholder %(trailers).
 
- Will merge to 'next'.
 
+* jk/xdiff-drop-xdl-fast-hash (2016-12-06) 1 commit
+  (merged to 'next' on 2016-12-13 at 914e306217)
+ + xdiff: drop XDL_FAST_HASH
 
-* jk/make-tags-find-sources-tweak (2016-12-14) 4 commits
-  (merged to 'next' on 2016-12-16 at 06d0b0fbfd)
- + Makefile: exclude contrib from FIND_SOURCE_FILES
- + Makefile: match shell scripts in FIND_SOURCE_FILES
- + Makefile: exclude test cruft from FIND_SOURCE_FILES
- + Makefile: reformat FIND_SOURCE_FILES
+ Retire the "fast hash" that had disastrous performance issues in
+ some corner cases.
 
- Update the procedure to generate "tags" for developer support.
 
- Will merge to 'master'.
+* js/normalize-path-copy-ceil (2016-12-16) 1 commit
+  (merged to 'next' on 2016-12-16 at 634ba4debc)
+ + normalize_path_copy(): fix pushing to //server/share/dir on Windows
 
+ A pathname that begins with "//" or "\\" on Windows is special but
+ path normalization logic was unaware of it.
 
-* jk/parseopt-usage-msg-opt (2016-12-14) 1 commit
- - parse-options: print "fatal:" before usage_msg_opt()
 
- The function usage_msg_opt() has been updated to say "fatal:"
- before the custom message programs give, when they want to die
- with a message about wrong command line options followed by the
- standard usage string.
+* jt/use-trailer-api-in-commands (2016-11-29) 5 commits
+  (merged to 'next' on 2016-12-12 at da1f140ad4)
+ + sequencer: use trailer's trailer layout
+ + trailer: have function to describe trailer layout
+ + trailer: avoid unnecessary splitting on lines
+ + commit: make ignore_non_trailer take buf/len
+ + trailer: be stricter in parsing separators
+ (this branch is used by jk/trailers-placeholder-in-pretty.)
 
- Will merge to 'next'.
+ Commands that operate on a log message and add lines to the trailer
+ blocks, such as "format-patch -s", "cherry-pick (-x|-s)", and
+ "commit -s", have been taught to use the logic of and share the
+ code with "git interpret-trailer".
 
 
-* ld/p4-compare-dir-vs-symlink (2016-12-14) 1 commit
- - git-p4: avoid crash adding symlinked directory
+* kh/tutorial-grammofix (2016-12-09) 4 commits
+  (merged to 'next' on 2016-12-13 at a951db78bc)
+ + doc: omit needless "for"
+ + doc: make the intent of sentence clearer
+ + doc: add verb in front of command to run
+ + doc: add articles (grammar)
 
- "git p4" misbehaved when swapping a directory and a symbolic link.
 
- Will merge to 'next'.
+* ld/p4-worktree (2016-12-13) 1 commit
+  (merged to 'next' on 2016-12-16 at 5210ab9973)
+ + git-p4: support git worktrees
 
+ "git p4" didn't interact with the internal of .git directory
+ correctly in the modern "git-worktree"-enabled world.
 
-* js/prepare-sequencer-more (2016-12-14) 34 commits
- - sequencer (rebase -i): write out the final message
- - sequencer (rebase -i): write the progress into files
- - sequencer (rebase -i): show the progress
- - sequencer (rebase -i): suggest --edit-todo upon unknown command
- - sequencer (rebase -i): show only failed cherry-picks' output
- - sequencer (rebase -i): show only failed `git commit`'s output
- - run_command_opt(): optionally hide stderr when the command succeeds
- - sequencer (rebase -i): differentiate between comments and 'noop'
- - sequencer (rebase -i): implement the 'drop' command
- - sequencer (rebase -i): allow rescheduling commands
- - sequencer (rebase -i): respect strategy/strategy_opts settings
- - sequencer (rebase -i): respect the rebase.autostash setting
- - sequencer (rebase -i): run the post-rewrite hook, if needed
- - sequencer (rebase -i): record interrupted commits in rewritten, too
- - sequencer (rebase -i): copy commit notes at end
- - sequencer (rebase -i): set the reflog message consistently
- - sequencer (rebase -i): refactor setting the reflog message
- - sequencer (rebase -i): allow fast-forwarding for edit/reword
- - sequencer (rebase -i): implement the 'reword' command
- - sequencer (rebase -i): leave a patch upon error
- - sequencer (rebase -i): update refs after a successful rebase
- - sequencer (rebase -i): the todo can be empty when continuing
- - sequencer (rebase -i): skip some revert/cherry-pick specific code path
- - sequencer (rebase -i): remove CHERRY_PICK_HEAD when no longer needed
- - sequencer (rebase -i): allow continuing with staged changes
- - sequencer (rebase -i): write an author-script file
- - sequencer (rebase -i): implement the short commands
- - sequencer (rebase -i): add support for the 'fixup' and 'squash' commands
- - sequencer (rebase -i): write the 'done' file
- - sequencer (rebase -i): learn about the 'verbose' mode
- - sequencer (rebase -i): implement the 'exec' command
- - sequencer (rebase -i): implement the 'edit' command
- - sequencer (rebase -i): implement the 'noop' command
- - sequencer: support a new action: 'interactive rebase'
 
- The sequencer has further been extended in preparation to act as a
- back-end for "rebase -i".
+* lr/doc-fix-cet (2016-12-12) 1 commit
+  (merged to 'next' on 2016-12-13 at dbc9e07e57)
+ + date-formats.txt: Typo fix
+
+
+* ls/t0021-fixup (2016-12-05) 1 commit
+  (merged to 'next' on 2016-12-12 at db652e691a)
+ + t0021: minor filter process test cleanup
+
+
+* ls/travis-update-p4-and-lfs (2016-12-05) 1 commit
+  (merged to 'next' on 2016-12-12 at 5496caa048)
+ + travis-ci: update P4 to 16.2 and GitLFS to 1.5.2 in Linux build
+
+ The default Travis-CI configuration specifies newer P4 and GitLFS.
+
+
+* nd/for-each-ref-ignore-case (2016-12-05) 1 commit
+  (merged to 'next' on 2016-12-12 at 527cc4f275)
+ + tag, branch, for-each-ref: add --ignore-case for sorting and filtering
+
+ "git branch --list" and friends learned "--ignore-case" option to
+ optionally sort branches and tags case insensitively.
+
+
+* nd/rebase-forget (2016-12-11) 1 commit
+  (merged to 'next' on 2016-12-12 at 50b5d28af4)
+ + rebase: add --quit to cleanup rebase, leave everything else untouched
+
+ "git rebase" learned "--quit" option, which allows a user to
+ remove the metadata left by an earlier "git rebase" that was
+ manually aborted without using "git rebase --abort".
+
+
+* rj/git-version-gen-do-not-force-abbrev (2016-12-06) 1 commit
+  (merged to 'next' on 2016-12-12 at e37970c3f5)
+ + GIT-VERSION-GEN: do not force abbreviation length used by 'describe'
+
+ A minor build update.
+
+
+* sb/t3600-cleanup (2016-12-12) 2 commits
+  (merged to 'next' on 2016-12-13 at e06e6e702f)
+ + t3600: slightly modernize style
+  (merged to 'next' on 2016-12-12 at d9996af5e8)
+ + t3600: remove useless redirect
+
+ Code cleanup.
 
- Waiting for review.
 
+* sb/unpack-trees-grammofix (2016-12-05) 1 commit
+  (merged to 'next' on 2016-12-12 at 29e536f590)
+ + unpack-trees: fix grammar for untracked files in directories
 
-* jk/index-pack-wo-repo-from-stdin (2016-12-16) 4 commits
- - index-pack: skip collision check when not in repository
- - t: use nongit() function where applicable
- - index-pack: complain when --stdin is used outside of a repo
- - t5000: extract nongit function to test-lib-functions.sh
+--------------------------------------------------
+[New Topics]
 
- "git index-pack --stdin" needs an access to an existing repository,
- but "git index-pack file.pack" to generate an .idx file that
- corresponds to a packfile does not.
+* gv/p4-multi-path-commit-fix (2016-12-19) 1 commit
+ - git-p4: fix multi-path changelist empty commits
+
+ "git p4" that tracks multile p4 paths imported a single changelist
+ that touches files in these multiple paths as one commit, followed
+ by many empty commits.  This has been fixed.
 
  Will merge to 'next'.
 
 
-* jk/readme-gmane-is-no-more (2016-12-15) 1 commit
-  (merged to 'next' on 2016-12-16 at 44ad5c5205)
- + README: replace gmane link with public-inbox
+* js/mingw-isatty (2016-12-18) 1 commit
+ - winansi_isatty(): fix when Git is used from CMD
 
- Will merge to 'master'.
+ Update the isatty() emulation for Windows to make it interact
+ better with the cmd.exe console.
 
+ Waiting for an ack.
 
-* lt/shortlog-by-committer (2016-12-16) 2 commits
- - shortlog: test and document --committer option
- - shortlog: group by committer information
 
- "git shortlog" learned "--committer" option to group commits by
- committer, instead of author.
+* jt/mailinfo-fold-in-body-headers (2016-12-19) 1 commit
+ - mailinfo.c: move side-effects outside of assert
+
+ Fix for NDEBUG builds.
+
+ Will merge to 'next'.
+
+
+* ls/p4-lfs (2016-12-18) 1 commit
+ - git-p4: add diff/merge properties to .gitattributes for GitLFS files
+
+ Update GitLFS integration with "git p4".
+
+ Waiting for an ack.
+
+
+* ls/p4-path-encoding (2016-12-18) 1 commit
+ - git-p4: fix git-p4.pathEncoding for removed files
+
+ When "git p4" imports changelist that removes paths, it failed to
+ convert pathnames when the p4 used encoding different from the one
+ used on the Git side.  This has been corrected.
+
+ Waiting for an ack.
+
+
+* mh/fast-import-notes-fix-new (2016-12-19) 1 commit
+ - fast-import: properly fanout notes when tree is imported
+
+ "git fast-import" sometimes mishandled while rebalancing notes
+ tree, which has been fixed.
 
  Will merge to 'next'.
 
@@ -408,343 +470,229 @@ of the repositories listed at
 --------------------------------------------------
 [Cooking]
 
-* bw/realpath-wo-chdir (2016-12-12) 4 commits
- - real_path: have callers use real_pathdup and strbuf_realpath
- - real_path: create real_pathdup
- - real_path: convert real_path_internal to strbuf_realpath
- - real_path: resolve symlinks by hand
- (this branch is used by bw/grep-recurse-submodules.)
-
- The implementation of "real_path()" was to go there with chdir(2)
- and call getcwd(3), but this obviously wouldn't be usable in a
- threaded environment.  Rewrite it to manually resolve relative
- paths including symbolic links in path components.
-
- Will merge to 'next'.
-
-
-* jk/quote-env-path-list-component (2016-12-13) 4 commits
-  (merged to 'next' on 2016-12-16 at d2cd6008b9)
- + t5547-push-quarantine: run the path separator test on Windows, too
- + tmp-objdir: quote paths we add to alternates
- + alternates: accept double-quoted paths
- + Merge branch 'jk/alt-odb-cleanup' into jk/quote-env-path-list-component
-
- A recent update to receive-pack to make it easier to drop garbage
- objects made it clear that GIT_ALTERNATE_OBJECT_DIRECTORIES cannot
- have a pathname with a colon in it (no surprise!), and this in turn
- made it impossible to push into a repository at such a path.  This
- has been fixed by introducing a quoting mechanism used when
- appending such a path to the colon-separated list.
-
- Will merge to 'master'.
-
-
-* js/normalize-path-copy-ceil (2016-12-16) 1 commit
-  (merged to 'next' on 2016-12-16 at 634ba4debc)
- + normalize_path_copy(): fix pushing to //server/share/dir on Windows
-
- A pathname that begins with "//" or "\\" on Windows is special but
- path normalization logic was unaware of it.
-
- Will merge to 'master'.
-
-
-* jc/lock-report-on-error (2016-12-07) 3 commits
-  (merged to 'next' on 2016-12-13 at cb6c07ee92)
- + lockfile: LOCK_REPORT_ON_ERROR
- + hold_locked_index(): align error handling with hold_lockfile_for_update()
- + wt-status: implement opportunisitc index update correctly
-
- Git 2.11 had a minor regression in "merge --ff-only" that competed
- with another process that simultanously attempted to update the
- index. We used to explain what went wrong with an error message,
- but the new code silently failed.  This resurrects the error
- message.
-
- Will merge to 'master'.
-
-
-* nd/shallow-fixup (2016-12-07) 6 commits
-  (merged to 'next' on 2016-12-13 at 1a3edb8bce)
- + shallow.c: remove useless code
- + shallow.c: bit manipulation tweaks
- + shallow.c: avoid theoretical pointer wrap-around
- + shallow.c: make paint_alloc slightly more robust
- + shallow.c: stop abusing COMMIT_SLAB_SIZE for paint_info's memory pools
- + shallow.c: rename fields in paint_info to better express their purposes
-
- Code cleanup in shallow boundary computation.
-
- Will merge to 'master'.
-
-
-* sb/sequencer-abort-safety (2016-12-14) 6 commits
-  (merged to 'next' on 2016-12-16 at ec71fb1217)
- + Revert "sequencer: remove useless get_dir() function"
-  (merged to 'next' on 2016-12-13 at 6107e43d65)
- + sequencer: remove useless get_dir() function
- + sequencer: make sequencer abort safer
- + t3510: test that cherry-pick --abort does not unsafely change HEAD
- + am: change safe_to_abort()'s not rewinding error into a warning
- + am: fix filename in safe_to_abort() error message
-
- Unlike "git am --abort", "git cherry-pick --abort" moved HEAD back
- to where cherry-pick started while picking multiple changes, when
- the cherry-pick stopped to ask for help from the user, and the user
- did "git reset --hard" to a different commit in order to re-attempt
- the operation.
-
- Will merge to 'master'.
-
-
-* kh/tutorial-grammofix (2016-12-09) 4 commits
-  (merged to 'next' on 2016-12-13 at a951db78bc)
- + doc: omit needless "for"
- + doc: make the intent of sentence clearer
- + doc: add verb in front of command to run
- + doc: add articles (grammar)
-
- Will merge to 'master'.
-
-
-* da/mergetool-xxdiff-hotkey (2016-12-11) 1 commit
-  (merged to 'next' on 2016-12-13 at a08f375c81)
- + mergetools: fix xxdiff hotkeys
-
- The way to specify hotkeys to "xxdiff" that is used by "git
- mergetool" has been modernized to match recent versions of xxdiff.
-
- Will merge to 'master'.
-
-
-* jk/difftool-in-subdir (2016-12-11) 4 commits
- - difftool: rename variables for consistency
- - difftool: chdir as early as possible
- - difftool: sanitize $workdir as early as possible
- - difftool: fix dir-diff index creation when in a subdirectory
-
- Even though an fix was attempted in Git 2.9.3 days, but running
- "git difftool --dir-diff" from a subdirectory never worked. This
- has been fixed.
-
- Will merge to 'next'.
-
-
-* lr/doc-fix-cet (2016-12-12) 1 commit
-  (merged to 'next' on 2016-12-13 at dbc9e07e57)
- + date-formats.txt: Typo fix
-
- Will merge to 'master'.
-
-
-* vs/submodule-clone-nested-submodules-alternates (2016-12-12) 1 commit
-  (merged to 'next' on 2016-12-13 at 8a317ab745)
- + submodule--helper: set alternateLocation for cloned submodules
-
- "git clone --reference $there --recurse-submodules $super" has been
- taught to guess repositories usable as references for submodules of
- $super that are embedded in $there while making a clone of the
- superproject borrow objects from $there; extend the mechanism to
- also allow submodules of these submodules to borrow repositories
- embedded in these clones of the submodules embedded in the clone of
- the superproject.
-
- Will merge to 'master'.
-
-
-* jb/diff-no-index-no-abbrev (2016-12-08) 1 commit
-  (merged to 'next' on 2016-12-12 at 959981ef50)
- + diff: handle --no-abbrev in no-index case
-
- "git diff --no-index" did not take "--no-abbrev" option.
-
- Will merge to 'master'.
-
-
-* jk/http-walker-limit-redirect-2.9 (2016-12-06) 5 commits
-  (merged to 'next' on 2016-12-12 at 3e4bcd7bca)
- + http: treat http-alternates like redirects
- + http: make redirects more obvious
- + remote-curl: rename shadowed options variable
- + http: always update the base URL for redirects
- + http: simplify update_url_from_redirect
- (this branch is used by bw/transport-protocol-policy and jk/http-walker-limit-redirect.)
-
- Transport with dumb http can be fooled into following foreign URLs
- that the end user does not intend to, especially with the server
- side redirects and http-alternates mechanism, which can lead to
- security issues.  Tighten the redirection and make it more obvious
- to the end user when it happens.
-
- Will merge to 'master'.
-
-
-* jk/http-walker-limit-redirect (2016-12-06) 2 commits
-  (merged to 'next' on 2016-12-12 at 8b58025e3a)
- + http-walker: complain about non-404 loose object errors
- + Merge branch 'ew/http-walker' into jk/http-walker-limit-redirect
- (this branch is used by bw/transport-protocol-policy; uses jk/http-walker-limit-redirect-2.9.)
-
- Update the error messages from the dumb-http client when it fails
- to obtain loose objects; we used to give sensible error message
- only upon 404 but we now forbid unexpected redirects that needs to
- be reported with something sensible.
-
- Will merge to 'master'.
-
-
-* ah/grammos (2016-12-05) 3 commits
-  (merged to 'next' on 2016-12-12 at 13ad487b28)
- + clone,fetch: explain the shallow-clone option a little more clearly
- + receive-pack: improve English grammar of denyCurrentBranch message
- + bisect: improve English grammar of not-ancestors message
-
- A few messages have been fixed for their grammatical errors.
-
- Will merge to 'master'.
-
-
-* ak/commit-only-allow-empty (2016-12-09) 2 commits
-  (merged to 'next' on 2016-12-12 at 54188ab23c)
- + commit: remove 'Clever' message for --only --amend
- + commit: make --only --allow-empty work without paths
+* bw/pathspec-cleanup (2016-12-14) 16 commits
+ - pathspec: rename prefix_pathspec to init_pathspec_item
+ - pathspec: small readability changes
+ - pathspec: create strip submodule slash helpers
+ - pathspec: create parse_element_magic helper
+ - pathspec: create parse_long_magic function
+ - pathspec: create parse_short_magic function
+ - pathspec: factor global magic into its own function
+ - pathspec: simpler logic to prefix original pathspec elements
+ - pathspec: always show mnemonic and name in unsupported_magic
+ - pathspec: remove unused variable from unsupported_magic
+ - pathspec: copy and free owned memory
+ - pathspec: remove the deprecated get_pathspec function
+ - ls-tree: convert show_recursive to use the pathspec struct interface
+ - dir: convert fill_directory to use the pathspec struct interface
+ - dir: remove struct path_simplify
+ - mv: remove use of deprecated 'get_pathspec()'
 
- "git commit --allow-empty --only" (no pathspec) with dirty index
- ought to be an acceptable way to create a new commit that does not
- change any paths, but it was forbidden (perhaps because nobody
- needed it).
+ Code clean-up in the pathspec API.
 
- Will merge to 'master'.
+ Waiting for the (hopefully) final round of review before 'next'.
 
 
-* bb/unicode-9.0 (2016-12-14) 6 commits
-  (merged to 'next' on 2016-12-16 at be2531431a)
- + unicode_width.h: update the width tables to Unicode 9.0
- + update_unicode.sh: remove the plane filter
- + update_unicode.sh: automatically download newer definition files
- + update_unicode.sh: pin the uniset repo to a known good commit
- + update_unicode.sh: remove an unnecessary subshell level
- + update_unicode.sh: move it into contrib/update-unicode
+* cp/merge-continue (2016-12-15) 4 commits
+  (merged to 'next' on 2016-12-19 at 8ba0094f45)
+ + merge: mark usage error strings for translation
+ + merge: ensure '--abort' option takes no arguments
+ + completion: add --continue option for merge
+ + merge: add '--continue' option as a synonym for 'git commit'
 
- The character width table has been updated to match Unicode 9.0
+ "git merge --continue" has been added as a synonym to "git commit"
+ to conclude a merge that has stopped due to conflicts.
 
  Will merge to 'master'.
 
 
-* ld/p4-worktree (2016-12-13) 1 commit
-  (merged to 'next' on 2016-12-16 at 5210ab9973)
- + git-p4: support git worktrees
+* jk/parseopt-usage-msg-opt (2016-12-14) 1 commit
+  (merged to 'next' on 2016-12-19 at c488c7c6e1)
+ + parse-options: print "fatal:" before usage_msg_opt()
 
- "git p4" didn't interact with the internal of .git directory
- correctly in the modern "git-worktree"-enabled world.
+ The function usage_msg_opt() has been updated to say "fatal:"
+ before the custom message programs give, when they want to die
+ with a message about wrong command line options followed by the
+ standard usage string.
 
  Will merge to 'master'.
 
 
-* ls/t0021-fixup (2016-12-05) 1 commit
-  (merged to 'next' on 2016-12-12 at db652e691a)
- + t0021: minor filter process test cleanup
+* ld/p4-compare-dir-vs-symlink (2016-12-18) 1 commit
+ - git-p4: avoid crash adding symlinked directory
 
Will merge to 'master'.
"git p4" misbehaved when swapping a directory and a symbolic link.
 
+ Will merge to 'next'.
 
-* ls/travis-update-p4-and-lfs (2016-12-05) 1 commit
-  (merged to 'next' on 2016-12-12 at 5496caa048)
- + travis-ci: update P4 to 16.2 and GitLFS to 1.5.2 in Linux build
 
- The default Travis-CI configuration specifies newer P4 and GitLFS.
+* js/prepare-sequencer-more (2016-12-14) 34 commits
+ - sequencer (rebase -i): write out the final message
+ - sequencer (rebase -i): write the progress into files
+ - sequencer (rebase -i): show the progress
+ - sequencer (rebase -i): suggest --edit-todo upon unknown command
+ - sequencer (rebase -i): show only failed cherry-picks' output
+ - sequencer (rebase -i): show only failed `git commit`'s output
+ - run_command_opt(): optionally hide stderr when the command succeeds
+ - sequencer (rebase -i): differentiate between comments and 'noop'
+ - sequencer (rebase -i): implement the 'drop' command
+ - sequencer (rebase -i): allow rescheduling commands
+ - sequencer (rebase -i): respect strategy/strategy_opts settings
+ - sequencer (rebase -i): respect the rebase.autostash setting
+ - sequencer (rebase -i): run the post-rewrite hook, if needed
+ - sequencer (rebase -i): record interrupted commits in rewritten, too
+ - sequencer (rebase -i): copy commit notes at end
+ - sequencer (rebase -i): set the reflog message consistently
+ - sequencer (rebase -i): refactor setting the reflog message
+ - sequencer (rebase -i): allow fast-forwarding for edit/reword
+ - sequencer (rebase -i): implement the 'reword' command
+ - sequencer (rebase -i): leave a patch upon error
+ - sequencer (rebase -i): update refs after a successful rebase
+ - sequencer (rebase -i): the todo can be empty when continuing
+ - sequencer (rebase -i): skip some revert/cherry-pick specific code path
+ - sequencer (rebase -i): remove CHERRY_PICK_HEAD when no longer needed
+ - sequencer (rebase -i): allow continuing with staged changes
+ - sequencer (rebase -i): write an author-script file
+ - sequencer (rebase -i): implement the short commands
+ - sequencer (rebase -i): add support for the 'fixup' and 'squash' commands
+ - sequencer (rebase -i): write the 'done' file
+ - sequencer (rebase -i): learn about the 'verbose' mode
+ - sequencer (rebase -i): implement the 'exec' command
+ - sequencer (rebase -i): implement the 'edit' command
+ - sequencer (rebase -i): implement the 'noop' command
+ - sequencer: support a new action: 'interactive rebase'
 
- Will merge to 'master'.
+ The sequencer has further been extended in preparation to act as a
+ back-end for "rebase -i".
 
+ Waiting for review.
 
-* sb/t3600-cleanup (2016-12-12) 2 commits
-  (merged to 'next' on 2016-12-13 at e06e6e702f)
- + t3600: slightly modernize style
-  (merged to 'next' on 2016-12-12 at d9996af5e8)
- + t3600: remove useless redirect
 
- Code cleanup.
+* jk/index-pack-wo-repo-from-stdin (2016-12-16) 4 commits
+  (merged to 'next' on 2016-12-19 at 9a88221347)
+ + index-pack: skip collision check when not in repository
+ + t: use nongit() function where applicable
+ + index-pack: complain when --stdin is used outside of a repo
+ + t5000: extract nongit function to test-lib-functions.sh
+
+ "git index-pack --stdin" needs an access to an existing repository,
+ but "git index-pack file.pack" to generate an .idx file that
+ corresponds to a packfile does not.
 
  Will merge to 'master'.
 
 
-* sb/unpack-trees-grammofix (2016-12-05) 1 commit
-  (merged to 'next' on 2016-12-12 at 29e536f590)
- + unpack-trees: fix grammar for untracked files in directories
+* lt/shortlog-by-committer (2016-12-16) 2 commits
+  (merged to 'next' on 2016-12-19 at 555976fc0a)
+ + shortlog: test and document --committer option
+ + shortlog: group by committer information
+
+ "git shortlog" learned "--committer" option to group commits by
+ committer, instead of author.
 
  Will merge to 'master'.
 
 
-* da/difftool-dir-diff-fix (2016-12-08) 1 commit
-  (merged to 'next' on 2016-12-12 at fd31a92ad6)
- + difftool: fix dir-diff index creation when in a subdirectory
+* bw/realpath-wo-chdir (2016-12-12) 4 commits
+ - real_path: have callers use real_pathdup and strbuf_realpath
+ - real_path: create real_pathdup
+ - real_path: convert real_path_internal to strbuf_realpath
+ - real_path: resolve symlinks by hand
+ (this branch is used by bw/grep-recurse-submodules.)
 
- "git difftool --dir-diff" had a minor regression when started from
- a subdirectory, which has been fixed.
+ The implementation of "real_path()" was to go there with chdir(2)
+ and call getcwd(3), but this obviously wouldn't be usable in a
+ threaded environment.  Rewrite it to manually resolve relative
+ paths including symbolic links in path components.
 
- Will merge to 'master'.
+ Will merge to 'next'.
 
 
-* jk/stash-disable-renames-internally (2016-12-06) 1 commit
-  (merged to 'next' on 2016-12-12 at e2b97aae68)
- + stash: prefer plumbing over git-diff
+* jk/quote-env-path-list-component (2016-12-13) 4 commits
+  (merged to 'next' on 2016-12-16 at d2cd6008b9)
+ + t5547-push-quarantine: run the path separator test on Windows, too
+ + tmp-objdir: quote paths we add to alternates
+ + alternates: accept double-quoted paths
+ + Merge branch 'jk/alt-odb-cleanup' into jk/quote-env-path-list-component
 
- When diff.renames configuration is on (and with Git 2.9 and later,
- it is enabled by default, which made it worse), "git stash"
- misbehaved if a file is removed and another file with a very
- similar content is added.
+ A recent update to receive-pack to make it easier to drop garbage
+ objects made it clear that GIT_ALTERNATE_OBJECT_DIRECTORIES cannot
+ have a pathname with a colon in it (no surprise!), and this in turn
+ made it impossible to push into a repository at such a path.  This
+ has been fixed by introducing a quoting mechanism used when
+ appending such a path to the colon-separated list.
 
  Will merge to 'master'.
 
 
-* jk/xdiff-drop-xdl-fast-hash (2016-12-06) 1 commit
-  (merged to 'next' on 2016-12-13 at 914e306217)
- + xdiff: drop XDL_FAST_HASH
+* nd/shallow-fixup (2016-12-07) 6 commits
+  (merged to 'next' on 2016-12-13 at 1a3edb8bce)
+ + shallow.c: remove useless code
+ + shallow.c: bit manipulation tweaks
+ + shallow.c: avoid theoretical pointer wrap-around
+ + shallow.c: make paint_alloc slightly more robust
+ + shallow.c: stop abusing COMMIT_SLAB_SIZE for paint_info's memory pools
+ + shallow.c: rename fields in paint_info to better express their purposes
 
- Retire the "fast hash" that had disastrous performance issues in
- some corner cases.
+ Code cleanup in shallow boundary computation.
 
  Will merge to 'master'.
 
 
-* ls/filter-process (2016-12-06) 1 commit
-  (merged to 'next' on 2016-12-12 at 8ed1f9eb02)
- + docs: warn about possible '=' in clean/smudge filter process values
+* sb/sequencer-abort-safety (2016-12-14) 6 commits
+  (merged to 'next' on 2016-12-16 at ec71fb1217)
+ + Revert "sequencer: remove useless get_dir() function"
+  (merged to 'next' on 2016-12-13 at 6107e43d65)
+ + sequencer: remove useless get_dir() function
+ + sequencer: make sequencer abort safer
+ + t3510: test that cherry-pick --abort does not unsafely change HEAD
+ + am: change safe_to_abort()'s not rewinding error into a warning
+ + am: fix filename in safe_to_abort() error message
 
- Doc update.
+ Unlike "git am --abort", "git cherry-pick --abort" moved HEAD back
+ to where cherry-pick started while picking multiple changes, when
+ the cherry-pick stopped to ask for help from the user, and the user
+ did "git reset --hard" to a different commit in order to re-attempt
+ the operation.
 
  Will merge to 'master'.
 
 
-* nd/for-each-ref-ignore-case (2016-12-05) 1 commit
-  (merged to 'next' on 2016-12-12 at 527cc4f275)
- + tag, branch, for-each-ref: add --ignore-case for sorting and filtering
+* jk/difftool-in-subdir (2016-12-11) 4 commits
+ - difftool: rename variables for consistency
+ - difftool: chdir as early as possible
+ - difftool: sanitize $workdir as early as possible
+ - difftool: fix dir-diff index creation when in a subdirectory
 
- "git branch --list" and friends learned "--ignore-case" option to
- optionally sort branches and tags case insensitively.
+ Even though an fix was attempted in Git 2.9.3 days, but running
+ "git difftool --dir-diff" from a subdirectory never worked. This
+ has been fixed.
 
- Will merge to 'master'.
+ Will merge to 'next'.
 
 
-* rj/git-version-gen-do-not-force-abbrev (2016-12-06) 1 commit
-  (merged to 'next' on 2016-12-12 at e37970c3f5)
- + GIT-VERSION-GEN: do not force abbreviation length used by 'describe'
+* vs/submodule-clone-nested-submodules-alternates (2016-12-12) 1 commit
+  (merged to 'next' on 2016-12-13 at 8a317ab745)
+ + submodule--helper: set alternateLocation for cloned submodules
 
- A minor build update.
+ "git clone --reference $there --recurse-submodules $super" has been
+ taught to guess repositories usable as references for submodules of
+ $super that are embedded in $there while making a clone of the
+ superproject borrow objects from $there; extend the mechanism to
+ also allow submodules of these submodules to borrow repositories
+ embedded in these clones of the submodules embedded in the clone of
+ the superproject.
 
  Will merge to 'master'.
 
 
-* jc/renormalize-merge-kill-safer-crlf (2016-12-01) 4 commits
-  (merged to 'next' on 2016-12-12 at 041b834f81)
- + convert: git cherry-pick -Xrenormalize did not work
- + Merge branch 'tb/t0027-raciness-fix' into jc/renormalize-merge-kill-safer-crlf
- + merge-recursive: handle NULL in add_cacheinfo() correctly
- + cherry-pick: demonstrate a segmentation fault
+* ls/filter-process (2016-12-18) 2 commits
+  (merged to 'next' on 2016-12-19 at 5ed29656db)
+ + t0021: fix flaky test
+  (merged to 'next' on 2016-12-12 at 8ed1f9eb02)
+ + docs: warn about possible '=' in clean/smudge filter process values
 
- Fix a corner case in merge-recursive regression that crept in
- during 2.10 development cycle.
+ Doc update.
 
  Will merge to 'master'.
 
@@ -769,18 +717,6 @@ of the repositories listed at
  Will cook in 'next'.
 
 
-* jk/trailers-placeholder-in-pretty (2016-12-11) 2 commits
-  (merged to 'next' on 2016-12-12 at 57de4e699a)
- + ref-filter: add support to display trailers as part of contents
- + pretty: add %(trailers) format for displaying trailers of a commit message
- (this branch uses jt/use-trailer-api-in-commands.)
-
- In addition to %(subject), %(body), "log --pretty=format:..."
- learned a new placeholder %(trailers).
-
- Will merge to 'master'.
-
-
 * sb/submodule-embed-gitdir (2016-12-12) 6 commits
  - submodule: add absorb-git-dir function
  - move connect_work_tree_and_git_dir to dir.h
@@ -896,19 +832,19 @@ of the repositories listed at
 
 
 * bw/transport-protocol-policy (2016-12-15) 6 commits
- - http: respect protocol.*.allow=user for http-alternates
- - transport: add from_user parameter to is_transport_allowed
- - http: create function to get curl allowed protocols
- - transport: add protocol policy config option
- - http: always warn if libcurl version is too old
- - lib-proto-disable: variable name fix
- (this branch uses jk/http-walker-limit-redirect and jk/http-walker-limit-redirect-2.9.)
+  (merged to 'next' on 2016-12-19 at 166168205c)
+ + http: respect protocol.*.allow=user for http-alternates
+ + transport: add from_user parameter to is_transport_allowed
+ + http: create function to get curl allowed protocols
+ + transport: add protocol policy config option
+ + http: always warn if libcurl version is too old
+ + lib-proto-disable: variable name fix
 
  Finer-grained control of what protocols are allowed for transports
  during clone/fetch/push have been enabled via a new configuration
  mechanism.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
 * jt/fetch-no-redundant-tag-fetch-map (2016-11-11) 1 commit
@@ -950,34 +886,6 @@ of the repositories listed at
  Will cook in 'next'.
 
 
-* jt/use-trailer-api-in-commands (2016-11-29) 5 commits
-  (merged to 'next' on 2016-12-12 at da1f140ad4)
- + sequencer: use trailer's trailer layout
- + trailer: have function to describe trailer layout
- + trailer: avoid unnecessary splitting on lines
- + commit: make ignore_non_trailer take buf/len
- + trailer: be stricter in parsing separators
- (this branch is used by jk/trailers-placeholder-in-pretty.)
-
- Commands that operate on a log message and add lines to the trailer
- blocks, such as "format-patch -s", "cherry-pick (-x|-s)", and
- "commit -s", have been taught to use the logic of and share the
- code with "git interpret-trailer".
-
- Will merge to 'master'.
-
-
-* nd/rebase-forget (2016-12-11) 1 commit
-  (merged to 'next' on 2016-12-12 at 50b5d28af4)
- + rebase: add --quit to cleanup rebase, leave everything else untouched
-
- "git rebase" learned "--forget" option, which allows a user to
- remove the metadata left by an earlier "git rebase" that was
- manually aborted without using "git rebase --abort".
-
- Will merge to 'master'.
-
-
 * jc/git-open-cloexec (2016-11-02) 3 commits
  - sha1_file: stop opening files with O_NOATIME
  - git_open_cloexec(): use fcntl(2) w/ FD_CLOEXEC fallback
@@ -1146,26 +1054,27 @@ of the repositories listed at
 
 
 * va/i18n-perl-scripts (2016-12-14) 16 commits
- - i18n: difftool: mark warnings for translation
- - i18n: send-email: mark composing message for translation
- - i18n: send-email: mark string with interpolation for translation
- - i18n: send-email: mark warnings and errors for translation
- - i18n: send-email: mark strings for translation
- - i18n: add--interactive: mark status words for translation
- - i18n: add--interactive: remove %patch_modes entries
- - i18n: add--interactive: mark edit_hunk_manually message for translation
- - i18n: add--interactive: i18n of help_patch_cmd
- - i18n: add--interactive: mark patch prompt for translation
- - i18n: add--interactive: mark plural strings
- - i18n: clean.c: match string with git-add--interactive.perl
- - i18n: add--interactive: mark strings with interpolation for translation
- - i18n: add--interactive: mark simple here-documents for translation
- - i18n: add--interactive: mark strings for translation
- - Git.pm: add subroutines for commenting lines
+  (merged to 'next' on 2016-12-19 at ec800aba9f)
+ + i18n: difftool: mark warnings for translation
+ + i18n: send-email: mark composing message for translation
+ + i18n: send-email: mark string with interpolation for translation
+ + i18n: send-email: mark warnings and errors for translation
+ + i18n: send-email: mark strings for translation
+ + i18n: add--interactive: mark status words for translation
+ + i18n: add--interactive: remove %patch_modes entries
+ + i18n: add--interactive: mark edit_hunk_manually message for translation
+ + i18n: add--interactive: i18n of help_patch_cmd
+ + i18n: add--interactive: mark patch prompt for translation
+ + i18n: add--interactive: mark plural strings
+ + i18n: clean.c: match string with git-add--interactive.perl
+ + i18n: add--interactive: mark strings with interpolation for translation
+ + i18n: add--interactive: mark simple here-documents for translation
+ + i18n: add--interactive: mark strings for translation
+ + Git.pm: add subroutines for commenting lines
 
  Porcelain scripts written in Perl are getting internationalized.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
 * jc/latin-1 (2016-09-26) 2 commits
@@ -1201,17 +1110,6 @@ of the repositories listed at
  cf. <20161208142401.1329-1-szeder.dev@gmail.com>
 
 
-* jc/pull-rebase-ff (2016-11-29) 1 commit
-  (merged to 'next' on 2016-12-16 at c1a0cedd9e)
- + pull: fast-forward "pull --rebase=true"
-
- "git pull --rebase", when there is no new commits on our side since
- we forked from the upstream, should be able to fast-forward without
- invoking "git rebase", but it didn't.
-
- Will merge to 'master'.
-
-
 * jc/merge-drop-old-syntax (2015-04-29) 1 commit
   (merged to 'next' on 2016-12-05 at 041946dae0)
  + merge: drop 'git merge <message> HEAD <commit>' syntax