зеркало из https://github.com/microsoft/git.git
Third batch for 2.5 cycle
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
4295abc040
Коммит
6c1249c503
|
@ -29,6 +29,30 @@ UI, Workflows & Features
|
|||
* Tweak the sample "store" backend of the credential helper to honor
|
||||
XDG configuration file locations when specified.
|
||||
|
||||
* A heuristic to help the "git <cmd> <revs> <pathspec>" command line
|
||||
convention to catch mistyped paths is to make sure all the non-rev
|
||||
parameters in the later part of the command line are names of the
|
||||
files in the working tree, but that means "git grep $str -- \*.c"
|
||||
must always be disambiguated with "--", because nobody sane will
|
||||
create a file whose name literally is asterisk-dot-see. Loosen the
|
||||
heuristic to declare that with a wildcard string the user likely
|
||||
meant to give us a pathspec.
|
||||
|
||||
* "git merge FETCH_HEAD" learned that the previous "git fetch" could
|
||||
be to create an Octopus merge, i.e. recording multiple branches
|
||||
that are not marked as "not-for-merge"; this allows us to lose an
|
||||
old style invocation "git merge <msg> HEAD $commits..." in the
|
||||
implementation of "git pull" script; the old style syntax can now
|
||||
be deprecated.
|
||||
|
||||
* Help us to find broken test script that splits the body part of the
|
||||
test by mistaken use of wrong kind of quotes.
|
||||
(merge d93d5d5 jc/test-prereq-validate later to maint).
|
||||
|
||||
* Developer support to automatically detect broken &&-chain in the
|
||||
test scripts is now turned on by default.
|
||||
(merge 92b269f jk/test-chain-lint later to maint).
|
||||
|
||||
|
||||
Performance, Internal Implementation, Development Support etc.
|
||||
|
||||
|
@ -60,6 +84,13 @@ Performance, Internal Implementation, Development Support etc.
|
|||
to read packed-refs file revealed that the former is unacceptably
|
||||
inefficient.
|
||||
|
||||
* The refs API uses ref_lock struct which had its own "int fd", even
|
||||
though the same file descriptor was in the lock struct it contains.
|
||||
Clean-up the code to lose this redundant field.
|
||||
|
||||
* Add the "--allow-unknown-type" option to "cat-file" to allow
|
||||
inspecting loose objects of an experimental or a broken type.
|
||||
|
||||
* Many long-running operations show progress eye-candy, even when
|
||||
they are later backgrounded. Hide the eye-candy when the process
|
||||
is sent to the background instead.
|
||||
|
@ -156,6 +187,55 @@ notes for details).
|
|||
directory, instead of refusing to run.
|
||||
(merge 0615173 jc/diff-no-index-d-f later to maint).
|
||||
|
||||
* "git rebase -i" moved the "current" command from "todo" to "done" a
|
||||
bit too prematurely, losing a step when a "pick" did not even start.
|
||||
(merge 8cbc57c ph/rebase-i-redo later to maint).
|
||||
|
||||
* The connection initiation code for "ssh" transport tried to absorb
|
||||
differences between the stock "ssh" and Putty-supplied "plink" and
|
||||
its derivatives, but the logic to tell that we are using "plink"
|
||||
variants were too loose and falsely triggered when "plink" appeared
|
||||
anywhere in the path (e.g. "/home/me/bin/uplink/ssh").
|
||||
(merge baaf233 bc/connect-plink later to maint).
|
||||
|
||||
* "git stash pop/apply" forgot to make sure that not just the working
|
||||
tree is clean but also the index is clean. The latter is important
|
||||
as a stash application can conflict and the index will be used for
|
||||
conflict resolution.
|
||||
(merge ed178ef jk/stash-require-clean-index later to maint).
|
||||
|
||||
* We have prepended $GIT_EXEC_PATH and the path "git" is installed in
|
||||
(typically "/usr/bin") to $PATH when invoking subprograms and hooks
|
||||
for almost eternity, but the original use case the latter tried to
|
||||
support was semi-bogus (i.e. install git to /opt/foo/git and run it
|
||||
without having /opt/foo on $PATH), and more importantly it has
|
||||
become less and less relevant as Git grew more mainstream (i.e. the
|
||||
users would _want_ to have it on their $PATH). Stop prepending the
|
||||
path in which "git" is installed to users' $PATH, as that would
|
||||
interfere the command search order people depend on (e.g. they may
|
||||
not like versions of programs that are unrelated to Git in /usr/bin
|
||||
and want to override them by having different ones in /usr/local/bin
|
||||
and have the latter directory earlier in their $PATH).
|
||||
(merge a0b4507 jk/git-no-more-argv0-path-munging later to maint).
|
||||
|
||||
* core.excludesfile (defaulting to $XDG_HOME/git/ignore) is supposed
|
||||
to be overridden by repository-specific .git/info/exclude file, but
|
||||
the order was swapped from the beginning. This belatedly fixes it.
|
||||
(merge 099d2d8 jc/gitignore-precedence later to maint).
|
||||
|
||||
* After "git add -N", the path appeared in output of "git diff HEAD"
|
||||
and "git diff --cached HEAD", leading "git status" to classify it
|
||||
as "Changes to be committed". Such a path, however, is not yet to
|
||||
be scheduled to be committed. "git diff" showed the change to the
|
||||
path as modification, not as a "new file", in the header of its
|
||||
output.
|
||||
|
||||
Treat such paths as "yet to be added to the index but Git already
|
||||
know about them"; "git diff HEAD" and "git diff --cached HEAD"
|
||||
should not talk about them, and "git diff" should show them as new
|
||||
files yet to be added to the index.
|
||||
(merge d95d728 nd/diff-i-t-a later to maint).
|
||||
|
||||
* Code cleanups and documentation updates.
|
||||
(merge 0269f96 mm/usage-log-l-can-take-regex later to maint).
|
||||
(merge 64f2589 nd/t1509-chroot-test later to maint).
|
||||
|
@ -164,3 +244,4 @@ notes for details).
|
|||
(merge 846e5df pt/xdg-config-path later to maint).
|
||||
(merge 1154aa4 jc/plug-fmt-merge-msg-leak later to maint).
|
||||
(merge 319b678 jk/sha1-file-reduce-useless-warnings later to maint).
|
||||
(merge 9a35c14 fg/document-commit-message-stripping later to maint).
|
||||
|
|
Загрузка…
Ссылка в новой задаче