X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=Documentation%2FRelNotes-1.6.1.txt;h=adb7ccab0a4dc3895f46a1cff840988554f62ec4;hb=1973b0d790155b5d8a32a6f7401116fad2205721;hp=6f84c0c2f8ec38763d819efae2cbfa045dc78af2;hpb=efcce2e1f0b37aed045d3e2b747380adf418bdd2;p=git.git diff --git a/Documentation/RelNotes-1.6.1.txt b/Documentation/RelNotes-1.6.1.txt index 6f84c0c2f..adb7ccab0 100644 --- a/Documentation/RelNotes-1.6.1.txt +++ b/Documentation/RelNotes-1.6.1.txt @@ -20,6 +20,8 @@ on. * Various gitweb updates from repo.or.cz installation. +* Updates to emacs bindings. + (portability) * A few test scripts used nonportable "grep" that did not work well on @@ -27,8 +29,15 @@ on. * Sample pre-auto-gc script has OS X support. +* Makefile has support for (ancient) FreeBSD 4.9. + (performance) +* Many operations that are lstat(3) heavy can be told to pre-execute + necessary lstat(3) in parallel before their main operations, which + potentially gives much improved performance for cold-cache cases or in + environments with weak metadata caching (e.g. NFS). + * The underlying diff machinery to produce textual output has been optimized, which would result in faster "git blame" processing. @@ -53,15 +62,25 @@ on. to a non-zero value to accept the suggestion when git can uniquely guess. +* The packfile machinery hopefully is more robust when dealing with + corrupt packs if redundant objects involved in the corruption are + available elsewhere. + * "git add -N path..." adds the named paths as an empty blob, so that subsequent "git diff" will show a diff as if they are creation events. +* "git add" gained a built-in synonym for people who want to say "stage + changes" instead of "add contents to the staging area" which amounts + to the same thing. + * "git apply" learned --include=paths option, similar to the existing --exclude=paths option. * "git bisect" is careful about a user mistake and suggests testing of merge base first when good is not a strict ancestor of bad. +* "git bisect skip" can take a range of commits. + * "git blame" re-encodes the commit metainfo to UTF-8 from i18n.commitEncoding by default. @@ -110,11 +129,15 @@ on. * "git diff" learned --dirstat-by-file to count changed files, not number of lines, when summarizing the global picture. -* "git diff" hunk header pattern for ObjC has been added. +* "git diff" learned "textconv" filters --- a binary or hard-to-read + contents can be munged into human readable form and the difference + between the results of the conversion can be viewed (obviously this + cannot produce a patch that can be applied, so this is disabled in + format-patch among other things). -* a "textconv" filter that makes binary files textual form for human - consumption can be specified as an attribute for paths; "git diff" - learnt to make use of it. +* "--cached" option to "git diff has an easier to remember synonym "--staged", + to ask "what is the difference between the given commit and the + contents staged in the index?" * "git for-each-ref" learned "refname:short" token that gives an unambiguously abbreviated refname. @@ -138,6 +161,12 @@ on. * "git log" learned --simplify-merges, a milder variant of --full-history; "gitk --simplify-merges" is easier to view than with --full-history. +* "git log" learned "--source" to show what ref each commit was reached + from. + +* "git log" also learned "--simplify-by-decoration" to show the + birds-eye-view of the topology of the history. + * "git log --pretty=format:" learned "%d" format element that inserts names of tags that point at the commit. @@ -147,6 +176,9 @@ on. * "git merge -s $strategy" can use a custom built strategy if you have a command "git-merge-$strategy" on your $PATH. +* "git pull" (and "git fetch") can be told to operate "-v"erbosely or + "-q"uietly. + * "git push" can be told to reject deletion of refs with receive.denyDeletes configuration. @@ -159,8 +191,9 @@ on. * "git remote show $remote" lists remote branches one-per-line now. -* when giving up resolving a conflicted merge, "git reset --hard" failed - to remove new paths from the working tree. [cherry-pick to 'maint'?] +* "git send-email" can be given revision range instead of files and + maildirs on the command line, and automatically runs format-patch to + generate patches for the given revision range. * "git submodule foreach" subcommand allows you to iterate over checked out submodules. @@ -183,8 +216,13 @@ on. * Git class defined in "Git.pm" can be subclasses a bit more easily. -* We used to link GNU regex library as a compatibility layer for some platforms, - but it turns out it is not necessary on most of them. +* We used to link GNU regex library as a compatibility layer for some + platforms, but it turns out it is not necessary on most of them. + +* Some path handling routines used fixed number of buffers used alternately + but depending on the call depth, this arrangement led to hard to track + bugs. This issue is being addressed. + Fixes since v1.6.0 ------------------ @@ -192,22 +230,45 @@ Fixes since v1.6.0 All of the fixes in v1.6.0.X maintenance series are included in this release, unless otherwise noted. +* Porcelains implemented as shell scripts were utterly confused when you + entered to a subdirectory of a work tree from sideways, following a + symbolic link (this may need to be backported to older releases later). + +* Tracking symbolic links would work better on filesystems whose lstat() + returns incorrect st_size value for them. + * "git add" and "git update-index" incorrectly allowed adding S/F when S is a tracked symlink that points at a directory D that has a path F in it (we still need to fix a similar nonsense when S is a submodule and F is a path in it). +* "git am" after stopping at a broken patch lost --whitespace, -C, -p and + --3way options given from the command line initially. + * "git diff --stdin" used to take two trees on a line and compared them, but we dropped support for such a use case long time ago. This has been resurrected. -* Giving 3 or more tree-ish to "git diff" is supposed to show the combined - diff from second and subsequent trees to the first one. b75271d ("git - diff {3,}": do not reverse order of arguments, 2008-10-10) needs - to be cherry-picked to 'maint'. - * "git filter-branch" failed to rewrite a tag name with slashes in it. +* "git http-push" did not understand URI scheme other than opaquelocktoken + when acquiring a lock from the server (this may need to be backported to + older releases later). + +* After "git rebase -p" stopped with conflicts while replaying a merge, + "git rebase --continue" did not work (may need to be backported to older + releases). + +* "git revert" records relative to which parent a revert was made when + reverting a merge. Together with new documentation that explains issues + around reverting a merge and merging from the updated branch later, this + hopefully will reduce user confusion (this may need to be backported to + older releases later). + +* "git rm --cached" used to allow an empty blob that was added earlier to + be removed without --force, even when the file in the work tree has + since been modified. + * "git push --tags --all $there" failed with generic usage message without telling saying these two options are incompatible. @@ -215,8 +276,11 @@ release, unless otherwise noted. timestamp part, exposing internal implementation detail. Also these did not work with --fixed-strings match at all. +* "gitweb" did not mark non-ASCII characters imported from external HTML fragments + correctly. + -- exec >/var/tmp/1 -O=v1.6.0.3-610-g94dc4b8 +O=v1.6.1-rc3-74-gf66bc5f echo O=$(git describe master) git shortlog --no-merges $O..master ^maint