зеркало из https://github.com/microsoft/git.git
Merge branch 'maint'
* maint: Describe fixes since 1.6.2.3 doc/git-daemon: add missing arguments to max-connections option doc/git-daemon: add missing arguments to options init: Do not segfault on big GIT_TEMPLATE_DIR environment variable imap-send: use correct configuration variable in documentation
This commit is contained in:
Коммит
cef5775b9f
|
@ -0,0 +1,31 @@
|
|||
GIT v1.6.2.4 Release Notes
|
||||
==========================
|
||||
|
||||
Fixes since v1.6.2.3
|
||||
--------------------
|
||||
|
||||
* The configuration parser had a buffer overflow while parsing an overlong
|
||||
value.
|
||||
|
||||
* "git-checkout <tree-ish> <submodule>" did not update the index entry at
|
||||
the named path; it now does.
|
||||
|
||||
* "git init" segfaulted when given an overlong template location via
|
||||
the --template= option.
|
||||
|
||||
* "git-ls-tree" and "git-diff-tree" used a pathspec correctly when
|
||||
deciding to descend into a subdirectory but they did not match the
|
||||
individual paths correctly. This caused pathspecs "abc/d ab" to match
|
||||
"abc/0" ("abc/d" made them decide to descend into the directory "abc/",
|
||||
and then "ab" incorrectly matched "abc/0" when it shouldn't).
|
||||
|
||||
* "git-merge-recursive" was broken when a submodule entry was involved in
|
||||
a criss-cross merge situation.
|
||||
|
||||
Many small documentation updates are included as well.
|
||||
|
||||
---
|
||||
exec >/var/tmp/1
|
||||
echo O=$(git describe maint)
|
||||
O=v1.6.2.3-21-ga51609a
|
||||
git shortlog --no-merges $O..maint
|
|
@ -48,7 +48,7 @@ OPTIONS
|
|||
'git-daemon' will refuse to start when this option is enabled and no
|
||||
whitelist is specified.
|
||||
|
||||
--base-path::
|
||||
--base-path=path::
|
||||
Remap all the path requests as relative to the given path.
|
||||
This is sort of "GIT root" - if you run 'git-daemon' with
|
||||
'--base-path=/srv/git' on example.com, then if you later try to pull
|
||||
|
@ -81,8 +81,8 @@ OPTIONS
|
|||
Incompatible with --port, --listen, --user and --group options.
|
||||
|
||||
--listen=host_or_ipaddr::
|
||||
Listen on an a specific IP address or hostname. IP addresses can
|
||||
be either an IPv4 address or an IPV6 address if supported. If IPv6
|
||||
Listen on a specific IP address or hostname. IP addresses can
|
||||
be either an IPv4 address or an IPv6 address if supported. If IPv6
|
||||
is not supported, then --listen=hostname is also not supported and
|
||||
--listen must be given an IPv4 address.
|
||||
Incompatible with '--inetd' option.
|
||||
|
@ -90,17 +90,17 @@ OPTIONS
|
|||
--port=n::
|
||||
Listen on an alternative port. Incompatible with '--inetd' option.
|
||||
|
||||
--init-timeout::
|
||||
--init-timeout=n::
|
||||
Timeout between the moment the connection is established and the
|
||||
client request is received (typically a rather low value, since
|
||||
that should be basically immediate).
|
||||
|
||||
--timeout::
|
||||
--timeout=n::
|
||||
Timeout for specific client sub-requests. This includes the time
|
||||
it takes for the server to process the sub-request and time spent
|
||||
waiting for next client's request.
|
||||
it takes for the server to process the sub-request and the time spent
|
||||
waiting for the next client's request.
|
||||
|
||||
--max-connections::
|
||||
--max-connections=n::
|
||||
Maximum number of concurrent clients, defaults to 32. Set it to
|
||||
zero for no limit.
|
||||
|
||||
|
@ -150,7 +150,7 @@ the facility of inet daemon to achieve the same before spawning
|
|||
Enable/disable the service site-wide per default. Note
|
||||
that a service disabled site-wide can still be enabled
|
||||
per repository if it is marked overridable and the
|
||||
repository enables the service with an configuration
|
||||
repository enables the service with a configuration
|
||||
item.
|
||||
|
||||
--allow-override=service::
|
||||
|
|
|
@ -51,7 +51,7 @@ imap.host::
|
|||
imap.user::
|
||||
The username to use when logging in to the server.
|
||||
|
||||
imap.password::
|
||||
imap.pass::
|
||||
The password to use when logging in to the server.
|
||||
|
||||
imap.port::
|
||||
|
|
|
@ -122,8 +122,10 @@ static void copy_templates(const char *template_dir)
|
|||
template_dir = system_path(DEFAULT_GIT_TEMPLATE_DIR);
|
||||
if (!template_dir[0])
|
||||
return;
|
||||
template_len = strlen(template_dir);
|
||||
if (PATH_MAX <= (template_len+strlen("/config")))
|
||||
die("insanely long template path %s", template_dir);
|
||||
strcpy(template_path, template_dir);
|
||||
template_len = strlen(template_path);
|
||||
if (template_path[template_len-1] != '/') {
|
||||
template_path[template_len++] = '/';
|
||||
template_path[template_len] = 0;
|
||||
|
|
|
@ -199,4 +199,13 @@ test_expect_success 'init honors global core.sharedRepository' '
|
|||
x`git config -f shared-honor-global/.git/config core.sharedRepository`
|
||||
'
|
||||
|
||||
test_expect_success 'init rejects insanely long --template' '
|
||||
(
|
||||
insane=$(printf "x%09999dx" 1) &&
|
||||
mkdir test &&
|
||||
cd test &&
|
||||
test_must_fail git init --template=$insane
|
||||
)
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
Загрузка…
Ссылка в новой задаче