X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=Documentation%2FRelNotes-1.5.5.txt;h=29322124881bf65c3ee6f5d613251b09f4a98d9a;hb=5fdb70983585ccde1540563a8c7458621f7a7407;hp=c8b4f72c2306f7da37085053499694004e9fcba8;hpb=6d21667206c4c2b10aad99eca1530a4f17c4e61d;p=git.git diff --git a/Documentation/RelNotes-1.5.5.txt b/Documentation/RelNotes-1.5.5.txt index c8b4f72c2..293221248 100644 --- a/Documentation/RelNotes-1.5.5.txt +++ b/Documentation/RelNotes-1.5.5.txt @@ -4,6 +4,19 @@ GIT v1.5.5 Release Notes Updates since v1.5.4 -------------------- +(subsystems) + + * Comes with git-gui 0.10.1 + +(portability) + + * We shouldn't ask for BSD group ownership semantics by setting g+s bit + on directories on older BSD systems that refuses chmod() by non root + users. BSD semantics is the default there anyway. + + * Bunch of portability improvement patches coming from an effort to port + to Solaris has been applied. + (performance) * On platforms with suboptimal qsort(3) implementation, there @@ -23,35 +36,138 @@ Updates since v1.5.4 (usability, bells and whistles) + * Bash completion script (in contrib) are aware of more commands and + options. + * You can be warned when core.autocrlf conversion is applied in such a way that results in an irreversible conversion. + * A catch-all "color.ui" configuration variable can be used to + enable coloring of all color-capable commands, instead of + individual ones such as "color.status" and "color.branch". + + * The commands refused to take absolute pathnames where they + require pathnames relative to the work tree or the current + subdirectory. They now can take absolute pathnames in such a + case as long as the pathnames do not refer outside of the + work tree. E.g. "git add $(pwd)/foo" now works. + + * Error messages used to be sent to stderr, only to get hidden, + when $PAGER was in use. They now are sent to stdout along + with the command output to be shown in the $PAGER. + * A pattern "foo/" in .gitignore file now matches a directory "foo". Pattern "foo" also matches as before. + * bash completion's prompt helper function can talk about + operation in-progress (e.g. merge, rebase, etc.). + + * Configuration variables "url..insteadof = " can be + used to tell "git-fetch" and "git-push" to use different URL than what + is given from the command line. + + * "git add -i" behaves better even before you make an initial commit. + + * "git am" refused to run from a subdirectory without a good reason. + + * After "git apply --whitespace=fix" fixes whitespace errors in a patch, + a line before the fix can appear as a context or preimage line in a + later patch, causing the patch not to apply. The command now knows to + see through whitespace fixes done to context lines to successfully + apply such a patch series. + + * "git branch" (and "git checkout -b") to branch from a local branch can + optionally set "branch..merge" to mark the new branch to build on + the other local branch, when "branch.autosetupmerge" is set to + "always", or when passing the command line option "--track" (this option + was ignored when branching from local branches). By default, this does + not happen when branching from a local branch. + + * "git checkout" to switch to a branch that has "branch..merge" set + (i.e. marked to build on another branch) reports how much the branch + and the other branch diverged. + + * When "git checkout" has to update a lot of paths, it used to be silent + for 4 seconds before it showed any progress report. It is now a bit + more impatient and starts showing progress report early. + + * "git commit" learned a new hook "prepare-commit-msg" that can + inspect what is going to be committed and prepare the commit + log message template to be edited. + + * "git cvsimport" can now take more than one -M options. + * "git describe" learned to limit the tags to be used for naming with --match option. * "git describe --contains" now barfs when the named commit cannot be described. - * bash completion's prompt helper function can talk about - operation in-progress (e.g. merge, rebase, etc.). + * "git describe --exact-match" describes only commits that are tagged. - * "git commit" learned a new hook "prepare-commit-msg" that can - inspect what is going to be committed and prepare the commit - log message template to be edited. + * "git describe --long" describes a tagged commit as $tag-0-$sha1, + instead of just showing the exact tagname. + + * "git describe" warns when using a tag whose name and path contradict + with each other. + + * "git diff" learned "--relative" option to limit and output paths + relative to the current directory when working in a subdirectory. + + * "git diff" learned "--dirstat" option to show birds-eye-summary of + changes more concisely than "--diffstat". + + * "git format-patch" learned --cover-letter option to generate a cover + letter template. + + * "git gc" learned --quiet option. + + * "git gc" now automatically prunes unreachable objects that are two + weeks old or older. + + * "git gc --auto" can be disabled more easily by just setting gc.auto + to zero. It also tolerates more packfiles by default. + + * "git grep" now knows "--name-only" is a synonym for the "-l" option. + + * "git help " now reports "'git ' is alias to ", + instead of saying "No manual entry for git-". + + * "git help" can use different backends to show manual pages and this can + be configured using "man.viewer" configuration. + + * "gitk" does not restore window position from $HOME/.gitk anymore (it + still restores the size). + + * "git log --grep=" learned "--fixed-strings" option to look for + without treating it as a regular expression. * "git gui" learned an auto-spell checking. + * "git push HEAD" and "git push +HEAD" works as + expected; they push the current branch (and only the current branch). + In addition, HEAD can be written as the value of "remote..push" + configuration variable. + + * When the configuration variable "pack.threads" is set to 0, "git + repack" auto detects the number of CPUs and uses that many threads. + * "git send-email" learned to prompt for passwords interactively. * "git send-email" learned an easier way to suppress CC recipients. - * Various "git cvsimport", "git cvsexportcommit", "git svn" and - "git p4" improvements. + * "git stash" learned "pop" command, that applies the latest stash and + removes it from the stash, and "drop" command to discard the named + stash entry. + + * "git submodule" learned a new subcommand "summary" to show the + symmetric difference between the HEAD version and the work tree version + of the submodule commits. + + * Various "git cvsimport", "git cvsexportcommit", "git cvsserver", + "git svn" and "git p4" improvements. (internal) @@ -61,6 +177,19 @@ Updates since v1.5.4 * It is now easier to write test scripts that records known breakages. + * "git checkout" is rewritten in C. + + * "git remote" is rewritten in C. + + * Two conflict hunks that are separated by a very short span of common + lines are now coalesced into one larger hunk, to make the result easier + to read. + + * Run-command API's use of file descriptors is documented clearer and + is more consistent now. + + * diff output can be sent to FILE * that is different from stdout. This + will help reimplementing more things in C. Fixes since v1.5.4 ------------------ @@ -68,11 +197,11 @@ Fixes since v1.5.4 All of the fixes in v1.5.4 maintenance series are included in this release, unless otherwise noted. + * "git-http-push" did not allow deletion of remote ref with the usual + "push :" syntax. ---- -exec >/var/tmp/1 -O=v1.5.4 -O=v1.5.4.2-122-g7cb97da -echo O=`git describe refs/heads/master` -git shortlog --no-merges $O..refs/heads/master ^refs/heads/maint + * "git-rebase --abort" did not go back to the right location if + "git-reset" was run during the "git-rebase" session. + * "git imap-send" without setting imap.host did not error out but + segfaulted.