read-tree --debug-unpack
[gitweb.git] / Documentation / RelNotes-1.5.5.txt
index 849b6b96047d305122c24cd4728467ffde551238..29322124881bf65c3ee6f5d613251b09f4a98d9a 100644 (file)
@@ -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,6 +36,9 @@ 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.
 
@@ -50,13 +66,10 @@ Updates since v1.5.4
    used to tell "git-fetch" and "git-push" to use different URL than what
    is given from the command line.
 
- * "git push <somewhere> HEAD" and "git push <somewhere> +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.<there>.push"
-   configuration variable.
-
  * "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
@@ -66,8 +79,9 @@ Updates since v1.5.4
  * "git branch" (and "git checkout -b") to branch from a local branch can
    optionally set "branch.<name>.merge" to mark the new branch to build on
    the other local branch, when "branch.autosetupmerge" is set to
-   "always".  By default, this does not happen when branching from a local
-   branch.
+   "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.<name>.merge" set
    (i.e. marked to build on another branch) reports how much the branch
@@ -81,6 +95,8 @@ Updates since v1.5.4
    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.
 
@@ -89,6 +105,12 @@ Updates since v1.5.4
 
  * "git describe --exact-match" describes only commits that are tagged.
 
+ * "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.
 
@@ -98,27 +120,54 @@ Updates since v1.5.4
  * "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 <alias>" now reports "'git <alias>' is alias to <what>",
    instead of saying "No manual entry for git-<alias>".
 
+ * "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=<what>" learned "--fixed-strings" option to look for
    <what> without treating it as a regular expression.
 
  * "git gui" learned an auto-spell checking.
 
+ * "git push <somewhere> HEAD" and "git push <somewhere> +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.<there>.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.
 
- * When the configuration variable "pack.threads" is set to 0, "git
-   repack" auto detects the number of CPUs and uses that many threads.
+ * "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.
 
- * Various "git cvsimport", "git cvsexportcommit", "git svn" and
-   "git p4" improvements.
+ * "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)
 
@@ -130,6 +179,8 @@ Updates since v1.5.4
 
  * "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.
@@ -137,6 +188,8 @@ Updates since v1.5.4
  * 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
 ------------------
@@ -144,8 +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.
 
----
-exec >/var/tmp/1
-O=v1.5.4.3-339-g7cf7f54
-echo O=`git describe refs/heads/master`
-git shortlog --no-merges $O..refs/heads/master ^refs/heads/maint
+ * "git-http-push" did not allow deletion of remote ref with the usual
+   "push <remote> :<branch>" syntax.
+
+ * "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.