87 lines
		
	
	
	
		
			3.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
	
		
			3.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| Git v2.7.1 Release Notes
 | |
| ========================
 | |
| 
 | |
| Fixes since v2.7
 | |
| ----------------
 | |
| 
 | |
|  * An earlier change in 2.5.x-era broke users' hooks and aliases by
 | |
|    exporting GIT_WORK_TREE to point at the root of the working tree,
 | |
|    interfering when they tried to use a different working tree without
 | |
|    setting GIT_WORK_TREE environment themselves.
 | |
| 
 | |
|  * The "exclude_list" structure has the usual "alloc, nr" pair of
 | |
|    fields to be used by ALLOC_GROW(), but clear_pattern_list() forgot
 | |
|    to reset 'alloc' to 0 when it cleared 'nr' to discard the managed
 | |
|    array.
 | |
| 
 | |
|  * "git send-email" was confused by escaped quotes stored in the alias
 | |
|    files saved by "mutt", which has been corrected.
 | |
| 
 | |
|  * A few unportable C construct have been spotted by clang compiler
 | |
|    and have been fixed.
 | |
| 
 | |
|  * The documentation has been updated to hint the connection between
 | |
|    the '--signoff' option and DCO.
 | |
| 
 | |
|  * "git reflog" incorrectly assumed that all objects that used to be
 | |
|    at the tip of a ref must be commits, which caused it to segfault.
 | |
| 
 | |
|  * The ignore mechanism saw a few regressions around untracked file
 | |
|    listing and sparse checkout selection areas in 2.7.0; the change
 | |
|    that is responsible for the regression has been reverted.
 | |
| 
 | |
|  * Some codepaths used fopen(3) when opening a fixed path in $GIT_DIR
 | |
|    (e.g. COMMIT_EDITMSG) that is meant to be left after the command is
 | |
|    done.  This however did not work well if the repository is set to
 | |
|    be shared with core.sharedRepository and the umask of the previous
 | |
|    user is tighter.  They have been made to work better by calling
 | |
|    unlink(2) and retrying after fopen(3) fails with EPERM.
 | |
| 
 | |
|  * Asking gitweb for a nonexistent commit left a warning in the server
 | |
|    log.
 | |
| 
 | |
|  * "git rebase", unlike all other callers of "gc --auto", did not
 | |
|    ignore the exit code from "gc --auto".
 | |
| 
 | |
|  * Many codepaths that run "gc --auto" before exiting kept packfiles
 | |
|    mapped and left the file descriptors to them open, which was not
 | |
|    friendly to systems that cannot remove files that are open.  They
 | |
|    now close the packs before doing so.
 | |
| 
 | |
|  * A recent optimization to filter-branch in v2.7.0 introduced a
 | |
|    regression when --prune-empty filter is used, which has been
 | |
|    corrected.
 | |
| 
 | |
|  * The description for SANITY prerequisite the test suite uses has
 | |
|    been clarified both in the comment and in the implementation.
 | |
| 
 | |
|  * "git tag" started listing a tag "foo" as "tags/foo" when a branch
 | |
|    named "foo" exists in the same repository; remove this unnecessary
 | |
|    disambiguation, which is a regression introduced in v2.7.0.
 | |
| 
 | |
|  * The way "git svn" uses auth parameter was broken by Subversion
 | |
|    1.9.0 and later.
 | |
| 
 | |
|  * The "split" subcommand of "git subtree" (in contrib/) incorrectly
 | |
|    skipped merges when it shouldn't, which was corrected.
 | |
| 
 | |
|  * A few options of "git diff" did not work well when the command was
 | |
|    run from a subdirectory.
 | |
| 
 | |
|  * dirname() emulation has been added, as Msys2 lacks it.
 | |
| 
 | |
|  * The underlying machinery used by "ls-files -o" and other commands
 | |
|    have been taught not to create empty submodule ref cache for a
 | |
|    directory that is not a submodule.  This removes a ton of wasted
 | |
|    CPU cycles.
 | |
| 
 | |
|  * Drop a few old "todo" items by deciding that the change one of them
 | |
|    suggests is not such a good idea, and doing the change the other
 | |
|    one suggested to do.
 | |
| 
 | |
|  * Documentation for "git fetch --depth" has been updated for clarity.
 | |
| 
 | |
|  * The command line completion learned a handful of additional options
 | |
|    and command specific syntax.
 | |
| 
 | |
| Also includes a handful of documentation and test updates.
 |