locale is appropriately set. Distributors can drop in new PO files
in po/ to add new translations.
- * Porcelain commands like "git reset" did not distinguish deletions
- and type-changes from ordinary modification, and reported them with
- the same 'M' moniker. They now use 'D' (for deletion) and 'T' (for
- type-change) to match "git status -s" and "git diff --name-status".
-
* The code to handle username/password for HTTP transaction used in
"git push" & "git fetch" learned to talk "credential API" to
external programs to cache or store them, to allow integration with
when possible. HTTP transactions used to ask username without echoing
back what was typed, but with this change you will see it as you type.
+ * The internal of "revert/cherry-pick" has been tweaked to prepare
+ building more generic "sequencer" on top of the implementation that
+ drives them.
+
* "git add" learned to stream large files directly into a packfile
instead of writing them into individual loose object files.
- * "git branch -m <current branch> HEAD" is an obvious no-op and is
- now allowed.
-
* "git checkout -B <current branch> <elsewhere>" is a more intuitive
way to spell "git reset --keep <elsewhere>".
* "git commit" detects and rejects an attempt to stuff NUL byte in
the commit log message.
+ * "git commit" learned "-S" to GPG-sign the commit; this can be shown
+ with the "--show-signature" option to "git log".
+
* fsck and prune are relatively lengthy operations that still go
silent while making the end-user wait. They learned to give progress
output like other slow operations.
* The set of built-in function-header patterns for various languages
knows MATLAB.
- * "git log --follow" honors the rename threshold score given with the
- -M option (e.g. "-M50%").
-
* "git log --format='<format>'" learned new %g[nNeE] specifiers to
show information from the reflog entries when warlking the reflog
(i.e. with "-g").
signed tag is recorded in the resulting merge commit for later
auditing.
+ * "git log" learned "--show-signature" option to show the signed tag
+ that was merged that is embedded in the merge commit. It also can
+ show the signature made on the commit with "git commit -S".
+
* "git branch --edit-description" can be used to add descriptive text
to explain what a topic branch is about.
Fixes since v1.7.8
------------------
- * The replacement implemention for snprintf used on platforms with
- native snprintf that is broken did not use va_copy correctly.
- (merge a9bfbc5 jk/maint-snprintf-va-copy later to maint).
-
- * git native connection going over TCP (not over SSH) did not set
- SO_KEEPALIVE option which failed to receive link layer errors.
- (merge e47a858 ew/keepalive later to maint).
-
- * LF-to-CRLF streaming filter replaced all LF with CRLF, which might
- be techinically correct but not friendly to people who are trying
- to recover from earlier mistakes of using CRLF in the repository
- data in the first place. It now refrains from doing so for LF that
- follows a CR.
- (merge 8496f56 jc/maint-lf-to-crlf-keep-crlf later to maint).
-
- * "git checkout -m" did not recreate the conflicted state in a "both
- sides added, without any common ancestor version" conflict
- situation.
- (merge 5cd7fadc jc/checkout-m-twoway later to maint).
-
- * "git cherry-pick $commit" (not a range) created an unnecessary
- sequencer state and interfered with valid workflow to use the
- command during a session to cherry-pick multiple commits.
- (merge d596118 jn/maint-sequencer-fixes later to maint).
-
- * You could make "git commit" segfault by giving the "--no-message"
- option.
- (merge 03f94ae jk/maint-strbuf-missing-init later to maint).
-
- * "fast-import" did not correctly update an existing notes tree,
- possibly corrupting the fan-out.
-
- * "git fetch-pack" accepted unqualified refs that do not begin with
- refs/ by mistake and compensated it by matching the refspec with
- tail-match, which was doubly wrong. This broke fetching from a
- repository with a funny named ref "refs/foo/refs/heads/master" and a
- 'master' branch with "git fetch-pack refs/heads/master", as the
- command incorrectly considered the former a "match".
- (merge bab8d28 jk/fetch-no-tail-match-refs later to maint).
-
- * "git mv" gave suboptimal error/warning messages when it overwrites
- target files. It also did not pay attention to "-v" option.
- (merge 534376c jk/maint-mv later to maint).
-
- * When a "reword" action in "git rebase -i" failed to run "commit --amend",
- we did not give the control back to the user to resolve the situation, and
- instead kept the original commit log message.
- (merge 0becb3e aw/rebase-i-stop-on-failure-to-amend later to maint).
-
- * Authenticated "git push" over dumb HTTP were broken with a recent
- change and failed without asking for password when username is
- given.
- (merge a4ddbc3 jk/maint-push-over-dav later to maint).
-
- * "git push" to an empty repository over HTTP were broken with a
- recent change to the ref handling.
- (merge 02f7914 jk/http-push-to-empty later to maint).
-
- * "git push -v" forgot how to be verbose by mistake. It now properly is.
- (merge bd2c86e jk/maint-push-v-is-verbose later to maint).
+Unless otherwise noted, all the fixes since v1.7.8 in the maintenance
+releases are contained in this release (see release notes to them for
+details).
--
exec >/var/tmp/1
-O=v1.7.8.1-361-g1aea303
+O=v1.7.8.2-301-g48de656
echo O=$(git describe master)
git log --first-parent --oneline --reverse ^$O master
echo