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.
136 lines
5.4 KiB
136 lines
5.4 KiB
Git v1.7.6 Release Notes |
|
======================== |
|
|
|
Updates since v1.7.5 |
|
-------------------- |
|
|
|
* Various git-svn updates. |
|
|
|
* Updates the way content tags are handled in gitweb. Also adds |
|
a UI to choose common timezone for displaying the dates. |
|
|
|
* Similar to branch names, tagnames that begin with "-" are now |
|
disallowed. |
|
|
|
* Clean-up of the C part of i18n (but not l10n---please wait) |
|
continues. |
|
|
|
* The scripting part of the codebase is getting prepared for i18n/l10n. |
|
|
|
* Pushing and pulling from a repository with large number of refs that |
|
point to identical commits are optimized by not listing the same commit |
|
during the common ancestor negotiation exchange with the other side. |
|
|
|
* Adding a file larger than core.bigfilethreshold (defaults to 1/2 Gig) |
|
using "git add" will send the contents straight to a packfile without |
|
having to hold it and its compressed representation both at the same |
|
time in memory. |
|
|
|
* Processes spawned by "[alias] <name> = !process" in the configuration |
|
can inspect GIT_PREFIX environment variable to learn where in the |
|
working tree the original command was invoked. |
|
|
|
* A magic pathspec ":/" tells a command that limits its operation to |
|
the current directory when ran from a subdirectory to work on the |
|
entire working tree. In general, ":/path/to/file" would be relative |
|
to the root of the working tree hierarchy. |
|
|
|
After "git reset --hard; edit Makefile; cd t/", "git add -u" would |
|
be a no-op, but "git add -u :/" would add the updated contents of |
|
the Makefile at the top level. If you want to name a path in the |
|
current subdirectory whose unusual name begins with ":/", you can |
|
name it by "./:/that/path" or by "\:/that/path". |
|
|
|
* "git blame" learned "--abbrev[=<n>]" option to control the minimum |
|
number of hexdigits shown for commit object names. |
|
|
|
* "git blame" learned "--line-porcelain" that is less efficient but is |
|
easier to parse. |
|
|
|
* Aborting "git commit --interactive" discards updates to the index |
|
made during the interactive session. |
|
|
|
* "git commit" learned a "--patch" option to directly jump to the |
|
per-hunk selection UI of the interactive mode. |
|
|
|
* "git diff" and its family of commands learned --dirstat=0 to show |
|
directories that contribute less than 0.1% of changes. |
|
|
|
* "git diff" and its family of commands learned --dirstat=lines mode to |
|
assess damage to the directory based on number of lines in the patch |
|
output, not based on the similarity numbers. |
|
|
|
* "git format-patch" learned "--quiet" option to suppress the output of |
|
the names of generated files. |
|
|
|
* "git format-patch" quotes people's names when it has RFC822 special |
|
characters in it, e.g. "Junio C. Hamano" <jch@example.com>. Earlier |
|
it was up to the user to do this when using its output. |
|
|
|
* "git format-patch" can take an empty --subject-prefix now. |
|
|
|
* "git grep" learned the "-P" option to take pcre regular expressions. |
|
|
|
* "git log" and friends learned a new "--notes" option to replace the |
|
"--show-notes" option. Unlike "--show-notes", "--notes=<ref>" does |
|
not imply showing the default notes. |
|
|
|
* They also learned a log.abbrevCommit configuration variable to augment |
|
the --abbrev-commit command line option. |
|
|
|
* "git ls-remote" learned "--exit-code" option to consider it a |
|
different kind of error when no remote ref to be shown. |
|
|
|
* "git merge" learned "-" as a short-hand for "the previous branch", just |
|
like the way "git checkout -" works. |
|
|
|
* "git merge" uses "merge.ff" configuration variable to decide to always |
|
create a merge commit (i.e. --no-ff, aka merge.ff=no), refuse to create |
|
a merge commit (i.e. --ff-only, aka merge.ff=only). Setting merge.ff=yes |
|
(or not setting it at all) restores the default behaviour of allowing |
|
fast-forward to happen when possible. |
|
|
|
* p4-import (from contrib) learned a new option --preserve-user. |
|
|
|
* "git read-tree -m" learned "--dry-run" option that reports if a merge |
|
would fail without touching the index nor the working tree. |
|
|
|
* "git rebase" that does not specify on top of which branch to rebase |
|
the current branch now uses @{upstream} of the current branch. |
|
|
|
* "git rebase" finished either normally or with --abort did not |
|
update the reflog for HEAD to record the event to come back to |
|
where it started from. |
|
|
|
* "git remote add -t only-this-branch --mirror=fetch" is now allowed. Earlier |
|
a fetch-mode mirror meant mirror everything, but now it only means refs are |
|
not renamed. |
|
|
|
* "git rev-list --count" used with "--cherry-mark" counts the cherry-picked |
|
commits separately, producing more a useful output. |
|
|
|
* "git submodule update" learned "--force" option to get rid of local |
|
changes in submodules and replace them with the up-to-date version. |
|
|
|
* "git status" and friends ignore .gitmodules file while the file is |
|
still in a conflicted state during a merge, to avoid using information |
|
that is not final and possibly corrupt with conflict markers. |
|
|
|
Also contains various documentation updates and minor miscellaneous |
|
changes. |
|
|
|
|
|
Fixes since v1.7.5 |
|
------------------ |
|
|
|
Unless otherwise noted, all the fixes in 1.7.5.X maintenance track are |
|
included in this release. |
|
|
|
* "git config" used to choke with an insanely long line. |
|
(merge ef/maint-strbuf-init later) |
|
|
|
* "git diff --quiet" did not work well with --diff-filter. |
|
(merge jk/diff-not-so-quick later) |
|
|
|
* "git status -z" did not default to --porcelain output format. |
|
(merge bc/maint-status-z-to-use-porcelain later)
|
|
|