You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
140 lines
5.3 KiB
140 lines
5.3 KiB
Git v1.7.5 Release Notes (draft) |
|
======================== |
|
|
|
Updates since v1.7.4 |
|
-------------------- |
|
|
|
* Various MinGW portability fixes. |
|
|
|
* Various git-p4 enhancements (in contrib). |
|
|
|
* Various vcs-svn enhancements. |
|
|
|
* Various git-gui updates (0.14.0). |
|
|
|
* Update to more modern HP-UX port. |
|
|
|
* The codebase is getting prepared for i18n/l10n; no translated/translatable |
|
strings in the code yet. |
|
|
|
* The bash completion script can now complete symmetric difference |
|
for "git diff" command, e.g. "git diff ...bra<TAB>". |
|
|
|
* The default minimum length of abbreviated and unique object names |
|
can now be configured by setting the core.abbrev configuration |
|
variable. |
|
|
|
* "git apply -v" reports offset lines when the patch does not apply at |
|
the exact location recorded in the diff output. |
|
|
|
* "git branch --track" (and "git checkout --track --branch") used to |
|
allow setting up a random non-branch that does not make sense to follow |
|
as the "upstream". The command correctly diagnoses it as an error. |
|
|
|
* "git config" used to be also known as "git repo-config", but the old |
|
name is now officially deprecated. |
|
|
|
* "git checkout --detach <commit>" is a more user friendly synonym for |
|
"git checkout <commit>^0". |
|
|
|
* "git checkout" performed on detached HEAD gives a warning and |
|
advice when the commit being left behind will become unreachable from |
|
any branch or tag. |
|
|
|
* "git cherry-pick" and "git revert" can be told to use a custom merge |
|
strategy, similar to "git rebase". |
|
|
|
* "git cherry-pick" remembers which commit failed to apply when it is |
|
stopped by conflicts, making it unnecessary to use "commit -c $commit" |
|
to conclude it. |
|
|
|
* "git cvsimport" bails out immediately when the cvs server cannot be |
|
reached, without spewing unnecessary error messages that complain about |
|
the server response it never got. |
|
|
|
* "git fetch" vs "git upload-pack" transfer learned 'no-done' |
|
protocol extension to save one round-trip after the content |
|
negotiation is done. This saves one HTTP RPC, reducing the overall |
|
latency for a trivial fetch. |
|
|
|
* "git grep -f <filename>" learned to treat "-" as "read from the |
|
standard input stream". |
|
|
|
* "git grep --no-index" did not honor pathspecs correctly, returning |
|
paths outside the specified area. |
|
|
|
* "git log" type commands now understand globbing pathspecs. You |
|
can say "git log -- '*.txt'" for example. |
|
|
|
* "git log" family of commands learned --cherry and --cherry-mark |
|
options that can be used to view two diverged branches while omitting |
|
or highlighting equivalent changes that appear on both sides of a |
|
symmetric difference (e.g. "log --cherry A...B"). |
|
|
|
* "git mergetool" learned how to drive "beyond compare 3" as well. |
|
|
|
* "git rerere forget" without pathspec used to forget all the saved |
|
conflicts that relate to the current merge; it now requires you to |
|
give it pathspecs. |
|
|
|
* "git rev-list --objects $revs -- $pathspec" now limits the objects listed |
|
in its output properly with the pathspec, in preparation for narrow |
|
clones. |
|
|
|
* "git push" with no parameters gives better advice messages when |
|
"tracking" is used as the push.default semantics or there is no remote |
|
configured yet. |
|
|
|
* "git rerere" learned a new subcommand "remaining" that is similar to |
|
"status" and lists the paths that had conflicts which are known to |
|
rerere, but excludes the paths that have already been marked as |
|
resolved in the index from its output. "git mergetool" has been |
|
updated to use this facility. |
|
|
|
* A possible value to the "push.default" configuration variable, |
|
'tracking', gained a synonym that more naturally describes what it |
|
does, 'upstream'. |
|
|
|
Also contains various documentation updates. |
|
|
|
|
|
Fixes since v1.7.4 |
|
------------------ |
|
|
|
All of the fixes in the v1.7.4.X maintenance series are included in this |
|
release, unless otherwise noted. |
|
|
|
* "git apply" used to confuse lines updated by previous hunks as lines |
|
that existed before when applying a hunk, contributing misapplication |
|
of patches with offsets. |
|
|
|
* "git checkout $other_branch" silently removed untracked symbolic links |
|
in the working tree that are in the way in order to check out paths |
|
under it from the named branch (js/checkout-untracked-symlink). |
|
|
|
* "git diff --quiet" did not work very well with the "--diff-filter" |
|
option (jc/maint-diff-q-filter). |
|
|
|
* "git fetch" from a client that is mostly following the remote |
|
needlessly told all of its refs to the server for both sides to |
|
compute the set of objects that need to be transferred efficiently, |
|
instead of stopping when the server heard enough. In a project with |
|
many tags, this turns out to be extremely wasteful, especially over |
|
the smart HTTP transport (sp/maint-{upload,fetch}-pack-stop-early~1). |
|
|
|
* "git fetch" run from a repository that uses the same repository as |
|
its alternate object store as the repository it is fetching from |
|
did not tell the server that it already has access to objects |
|
reachable from the refs in their common alternate object store, |
|
causing it to fetch unnecessary objects (jc/maint-fetch-alt). |
|
|
|
* "git stash apply" reported the result of its operation by running |
|
"git status" from the top-level of the working tree; it should (and |
|
now does) run it from the user's working directory |
|
(pk/stash-apply-status-relative). |
|
|
|
--- |
|
exec >/var/tmp/1 |
|
O=v1.7.4.2-405-gbf0c5bb |
|
echo O=$(git describe 'master') |
|
git shortlog --no-merges ^maint ^$O master
|
|
|