<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/Documentation/git.txt, branch v2.12.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.12.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.12.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2017-03-24T19:59:15Z</updated>
<entry>
<title>Git 2.12.2</title>
<updated>2017-03-24T19:59:15Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-03-24T19:59:15Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=8f9aeb0d36c6cbfb849946bb272fa0d3c4611547'/>
<id>urn:sha1:8f9aeb0d36c6cbfb849946bb272fa0d3c4611547</id>
<content type='text'>
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Git 2.12.1</title>
<updated>2017-03-20T20:17:08Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-03-20T20:17:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=1f6b1afea00cdbc99114b88768aa5e617ff479df'/>
<id>urn:sha1:1f6b1afea00cdbc99114b88768aa5e617ff479df</id>
<content type='text'>
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Git 2.12</title>
<updated>2017-02-24T18:49:58Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-02-24T18:49:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=e7e07d5a4fcc2a203d9873968ad3e6bd4d7419d7'/>
<id>urn:sha1:e7e07d5a4fcc2a203d9873968ad3e6bd4d7419d7</id>
<content type='text'>
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'maint'</title>
<updated>2017-01-17T23:20:16Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-01-17T23:20:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=733671b0fd2fb03edb05273f36ec70bd624e544f'/>
<id>urn:sha1:733671b0fd2fb03edb05273f36ec70bd624e544f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Almost ready for 2.11.1</title>
<updated>2017-01-17T23:19:11Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-01-17T22:48:44Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=ad36dc8b4b165bf9eb3576b42a241164e312d48c'/>
<id>urn:sha1:ad36dc8b4b165bf9eb3576b42a241164e312d48c</id>
<content type='text'>
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jk/quote-env-path-list-component' into maint</title>
<updated>2017-01-17T23:11:06Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-01-17T23:11:06Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=bcaf277b4ad5b7173a011d93a2ea1827f990f466'/>
<id>urn:sha1:bcaf277b4ad5b7173a011d93a2ea1827f990f466</id>
<content type='text'>
A recent update to receive-pack to make it easier to drop garbage
objects made it clear that GIT_ALTERNATE_OBJECT_DIRECTORIES cannot
have a pathname with a colon in it (no surprise!), and this in turn
made it impossible to push into a repository at such a path.  This
has been fixed by introducing a quoting mechanism used when
appending such a path to the colon-separated list.

* jk/quote-env-path-list-component:
  t5615-alternate-env: double-quotes in file names do not work on Windows
  t5547-push-quarantine: run the path separator test on Windows, too
  tmp-objdir: quote paths we add to alternates
  alternates: accept double-quoted paths
</content>
</entry>
<entry>
<title>Merge branch 'bw/transport-protocol-policy'</title>
<updated>2016-12-27T08:11:41Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-12-27T08:11:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=9d540e97267fa94d9701d3e1aa5cdf2926858472'/>
<id>urn:sha1:9d540e97267fa94d9701d3e1aa5cdf2926858472</id>
<content type='text'>
Finer-grained control of what protocols are allowed for transports
during clone/fetch/push have been enabled via a new configuration
mechanism.

* bw/transport-protocol-policy:
  http: respect protocol.*.allow=user for http-alternates
  transport: add from_user parameter to is_transport_allowed
  http: create function to get curl allowed protocols
  transport: add protocol policy config option
  http: always warn if libcurl version is too old
  lib-proto-disable: variable name fix
</content>
</entry>
<entry>
<title>Merge branch 'jk/quote-env-path-list-component'</title>
<updated>2016-12-21T22:55:02Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-12-21T22:55:02Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=fe050334074c5132d01e1df2c1b9a82c9b8d394c'/>
<id>urn:sha1:fe050334074c5132d01e1df2c1b9a82c9b8d394c</id>
<content type='text'>
A recent update to receive-pack to make it easier to drop garbage
objects made it clear that GIT_ALTERNATE_OBJECT_DIRECTORIES cannot
have a pathname with a colon in it (no surprise!), and this in turn
made it impossible to push into a repository at such a path.  This
has been fixed by introducing a quoting mechanism used when
appending such a path to the colon-separated list.

* jk/quote-env-path-list-component:
  t5615-alternate-env: double-quotes in file names do not work on Windows
  t5547-push-quarantine: run the path separator test on Windows, too
  tmp-objdir: quote paths we add to alternates
  alternates: accept double-quoted paths
</content>
</entry>
<entry>
<title>transport: add protocol policy config option</title>
<updated>2016-12-15T17:29:13Z</updated>
<author>
<name>Brandon Williams</name>
<email>bmwill@google.com</email>
</author>
<published>2016-12-14T22:39:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f1762d772e9b415a3163abf5f217fc3b71a3b40e'/>
<id>urn:sha1:f1762d772e9b415a3163abf5f217fc3b71a3b40e</id>
<content type='text'>
Previously the `GIT_ALLOW_PROTOCOL` environment variable was used to
specify a whitelist of protocols to be used in clone/fetch/push
commands.  This patch introduces new configuration options for more
fine-grained control for allowing/disallowing protocols.  This also has
the added benefit of allowing easier construction of a protocol
whitelist on systems where setting an environment variable is
non-trivial.

Now users can specify a policy to be used for each type of protocol via
the 'protocol.&lt;name&gt;.allow' config option.  A default policy for all
unconfigured protocols can be set with the 'protocol.allow' config
option.  If no user configured default is made git will allow known-safe
protocols (http, https, git, ssh, file), disallow known-dangerous
protocols (ext), and have a default policy of `user` for all other
protocols.

The supported policies are `always`, `never`, and `user`.  The `user`
policy can be used to configure a protocol to be usable when explicitly
used by a user, while disallowing it for commands which run
clone/fetch/push commands without direct user intervention (e.g.
recursive initialization of submodules).  Commands which can potentially
clone/fetch/push from untrusted repositories without user intervention
can export `GIT_PROTOCOL_FROM_USER` with a value of '0' to prevent
protocols configured to the `user` policy from being used.

Fix remote-ext tests to use the new config to allow the ext
protocol to be tested.

Based on a patch by Jeff King &lt;peff@peff.net&gt;

Signed-off-by: Brandon Williams &lt;bmwill@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>alternates: accept double-quoted paths</title>
<updated>2016-12-12T23:10:43Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2016-12-12T19:52:22Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=cf3c6352100a0d302276e46e3f9a7f0804e224d8'/>
<id>urn:sha1:cf3c6352100a0d302276e46e3f9a7f0804e224d8</id>
<content type='text'>
We read lists of alternates from objects/info/alternates
files (delimited by newline), as well as from the
GIT_ALTERNATE_OBJECT_DIRECTORIES environment variable
(delimited by colon or semi-colon, depending on the
platform).

There's no mechanism for quoting the delimiters, so it's
impossible to specify an alternate path that contains a
colon in the environment, or one that contains a newline in
a file. We've lived with that restriction for ages because
both alternates and filenames with colons are relatively
rare, and it's only a problem when the two meet. But since
722ff7f87 (receive-pack: quarantine objects until
pre-receive accepts, 2016-10-03), which builds on the
alternates system, every push causes the receiver to set
GIT_ALTERNATE_OBJECT_DIRECTORIES internally.

It would be convenient to have some way to quote the
delimiter so that we can represent arbitrary paths.

The simplest thing would be an escape character before a
quoted delimiter (e.g., "\:" as a literal colon). But that
creates a backwards compatibility problem: any path which
uses that escape character is now broken, and we've just
shifted the problem. We could choose an unlikely escape
character (e.g., something from the non-printable ASCII
range), but that's awkward to use.

Instead, let's treat names as unquoted unless they begin
with a double-quote, in which case they are interpreted via
our usual C-stylke quoting rules. This also breaks
backwards-compatibility, but in a smaller way: it only
matters if your file has a double-quote as the very _first_
character in the path (whereas an escape character is a
problem anywhere in the path).  It's also consistent with
many other parts of git, which accept either a bare pathname
or a double-quoted one, and the sender can choose to quote
or not as required.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
