1 Git v1.7.9 Release Notes (draft)
2 ========================
4 Updates since v1.7.8
5 --------------------
7 * git-gui updated to 0.16.0.
9 * git-p4 (in contrib/) updates.
11 * Porcelain commands like "git reset" did not distinguish deletions
12 and type-changes from ordinary modification, and reported them with
13 the same 'M' moniker. They now use 'D' (for deletion) and 'T' (for
14 type-change) to match "git status -s" and "git diff --name-status".
16 * "git branch -m <current branch> HEAD" is an obvious no-op and is
17 now allowed.
19 * "git checkout -B <current branch> <elsewhere>" is a more intuitive
20 way to spell "git reset --keep <elsewhere>".
22 * "git checkout" and "git merge" learned "--no-overwrite-ignore" option
23 to tell Git that untracked and ignored files are not expendable.
25 * fsck and prune are relatively lengthy operations that still go
26 silent while making the end-user wait. They learned to give progress
27 output like other slow operations.
29 * The set of built-in function-header patterns for various languages
30 knows MATLAB.
32 * "git pull" can be used to fetch and merge an annotated/signed tag,
33 instead of the tip of a topic branch. The GPG signature from the
34 signed tag is recorded in the resulting merge commit for later
35 auditing.
37 * "git branch --edit-description" can be used to add descriptive text
38 to explain what a topic branch is about.
40 * "git fmt-merge-msg" learned to take the branch description into
41 account when preparing a merge summary that "git merge" records
42 when merging a local branch.
44 * "git request-pull" has been updated to convey more information
45 useful for integrators to decide if a topic is worth merging and
46 what is pulled is indeed what the requestor asked to pull,
47 including:
49 - the tip of the branch being requested to be merged;
50 - the branch description describing what the topic is about;
51 - the contents of the annotated tag, when requesting to pull a tag.
53 * "git pull" learned to notice 'pull.rebase' configuration variable,
54 which serves as a global fallback for setting 'branch.<name>.rebase'
55 configuration variable per branch.
57 * "git tag" learned "--cleanup" option to control how the whitespaces
58 and empty lines in tag message are cleaned up.
60 * "gitweb" learned to show side-by-side diff.
62 Also contains minor documentation updates and code clean-ups.
65 Fixes since v1.7.8
66 ------------------
68 * The function header pattern for files with "diff=cpp" attribute did
69 not consider "type *funcname(type param1,..." as the beginning of a
70 function.
71 (merge 37e7793 tr/userdiff-c-returns-pointer later to maint).
73 * LF-to-CRLF streaming filter used when checking out a large-ish blob
74 fell into an infinite loop with a rare input.
75 (merge 284e3d2 cn/maint-lf-to-crlf-filter later to maint).
77 * "git archive" mistakenly allowed remote clients to ask for commits
78 that are not at the tip of any ref.
79 (merge 7b51c33 jk/maint-upload-archive later to maint).
81 * "git apply --check" did not error out when given an empty input
82 without any patch.
83 (merge cc64b31 bc/maint-apply-check-no-patch later to maint).
85 * The error message from "git diff" and "git status" when they fail
86 to inspect changes in submodules did not report which submodule they
87 had trouble with.
88 (merge 6a5ceda jl/submodule-status-failure-report later to maint).
90 --
91 exec >/var/tmp/1
92 O=v1.7.8-246-gb3f17ac
93 echo O=$(git describe master)
94 git log --first-parent --oneline --reverse ^$O master
95 echo
96 git shortlog --no-merges ^$O ^maint master