Code

Merge branch 'jc/checkout-m-twoway'
[git.git] / Documentation / RelNotes / 1.7.9.txt
1 Git v1.7.9 Release Notes (draft)
2 ========================
4 Updates since v1.7.8
5 --------------------
7  * gitk updates accumulated since early 2011.
9  * git-gui updated to 0.16.0.
11  * git-p4 (in contrib/) updates.
13  * Porcelain commands like "git reset" did not distinguish deletions
14    and type-changes from ordinary modification, and reported them with
15    the same 'M' moniker. They now use 'D' (for deletion) and 'T' (for
16    type-change) to match "git status -s" and "git diff --name-status".
18  * "git add" learned to stream large files directly into a packfile
19    instead of writing them into individual loose object files.
21  * "git branch -m <current branch> HEAD" is an obvious no-op and is
22    now allowed.
24  * "git checkout -B <current branch> <elsewhere>" is a more intuitive
25    way to spell "git reset --keep <elsewhere>".
27  * "git checkout" and "git merge" learned "--no-overwrite-ignore" option
28    to tell Git that untracked and ignored files are not expendable.
30  * "git commit --amend" learned "--no-edit" option to say that the
31    user is amending the tree being recorded, without updating the
32    commit log message.
34  * fsck and prune are relatively lengthy operations that still go
35    silent while making the end-user wait. They learned to give progress
36    output like other slow operations.
38  * The set of built-in function-header patterns for various languages
39    knows MATLAB.
41  * "git pull" can be used to fetch and merge an annotated/signed tag,
42    instead of the tip of a topic branch. The GPG signature from the
43    signed tag is recorded in the resulting merge commit for later
44    auditing.
46  * "git branch --edit-description" can be used to add descriptive text
47    to explain what a topic branch is about.
49  * "git fmt-merge-msg" learned to take the branch description into
50    account when preparing a merge summary that "git merge" records
51    when merging a local branch.
53  * "git request-pull" has been updated to convey more information
54    useful for integrators to decide if a topic is worth merging and
55    what is pulled is indeed what the requestor asked to pull,
56    including:
58    - the tip of the branch being requested to be merged;
59    - the branch description describing what the topic is about;
60    - the contents of the annotated tag, when requesting to pull a tag.
62  * "git pull" learned to notice 'pull.rebase' configuration variable,
63    which serves as a global fallback for setting 'branch.<name>.rebase'
64    configuration variable per branch.
66  * "git tag" learned "--cleanup" option to control how the whitespaces
67    and empty lines in tag message are cleaned up.
69  * "gitweb" learned to show side-by-side diff.
71 Also contains minor documentation updates and code clean-ups.
74 Fixes since v1.7.8
75 ------------------
77  * The function header pattern for files with "diff=cpp" attribute did
78    not consider "type *funcname(type param1,..." as the beginning of a
79    function.
80    (merge 37e7793 tr/userdiff-c-returns-pointer later to maint).
82  * LF-to-CRLF streaming filter used when checking out a large-ish blob
83    fell into an infinite loop with a rare input.
84    (merge 284e3d2 cn/maint-lf-to-crlf-filter later to maint).
86  * "git archive" mistakenly allowed remote clients to ask for commits
87    that are not at the tip of any ref.
88    (merge 7b51c33 jk/maint-upload-archive later to maint).
90  * "git apply --check" did not error out when given an empty input
91    without any patch.
92    (merge cc64b31 bc/maint-apply-check-no-patch later to maint).
94  * The error message from "git diff" and "git status" when they fail
95    to inspect changes in submodules did not report which submodule they
96    had trouble with.
97    (merge 6a5ceda jl/submodule-status-failure-report later to maint).
99  * "fast-import" did not correctly update an existing notes tree,
100    possibly corrupting the fan-out.
102  * When a "reword" action in "git rebase -i" failed to run "commit --amend",
103    we did not give the control back to the user to resolve the situation, and
104    instead kept the original commit log message.
105    (merge 0becb3e aw/rebase-i-stop-on-failure-to-amend later to maint).
107 --
108 exec >/var/tmp/1
109 O=v1.7.8-282-ga2add85
110 echo O=$(git describe master)
111 git log --first-parent --oneline --reverse ^$O master
112 echo
113 git shortlog --no-merges ^$O ^maint master