<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/t, branch v2.2.0</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.2.0</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.2.0'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2014-11-19T21:47:53Z</updated>
<entry>
<title>Merge branch 'tb/no-relative-file-url'</title>
<updated>2014-11-19T21:47:53Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-11-19T21:47:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f00e081a9a90a87988cc68a2fbfa1e52ea5b5263'/>
<id>urn:sha1:f00e081a9a90a87988cc68a2fbfa1e52ea5b5263</id>
<content type='text'>
* tb/no-relative-file-url:
  t5705: the file:// URL should be absolute
</content>
</entry>
<entry>
<title>Merge branch 'da/difftool'</title>
<updated>2014-11-18T18:16:55Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-11-18T18:16:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=3f78278beb9792368de7edbbb031c3a88e0038a1'/>
<id>urn:sha1:3f78278beb9792368de7edbbb031c3a88e0038a1</id>
<content type='text'>
Fix-up to a new feature in 'master'.

* da/difftool:
  difftool: honor --trust-exit-code for builtin tools
</content>
</entry>
<entry>
<title>difftool: honor --trust-exit-code for builtin tools</title>
<updated>2014-11-14T21:40:38Z</updated>
<author>
<name>David Aguilar</name>
<email>davvid@gmail.com</email>
</author>
<published>2014-11-14T21:33:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=99474b6340dbcbe58f6c256fdee231cbadb060f4'/>
<id>urn:sha1:99474b6340dbcbe58f6c256fdee231cbadb060f4</id>
<content type='text'>
run_merge_tool() was not setting $status, which prevented the
exit code for builtin tools from being forwarded to the caller.

Capture the exit status and add a test to guarantee the behavior.

Reported-by: Adria Farres &lt;14farresa@gmail.com&gt;
Signed-off-by: David Aguilar &lt;davvid@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>t5705: the file:// URL should be absolute</title>
<updated>2014-11-13T18:41:56Z</updated>
<author>
<name>Torsten Bögershausen</name>
<email>tboegi@web.de</email>
</author>
<published>2014-11-13T07:36:07Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f904f6603a0c34645dbb307408e0e4033b5e1113'/>
<id>urn:sha1:f904f6603a0c34645dbb307408e0e4033b5e1113</id>
<content type='text'>
The test misused a URL "file://." to mean "relative to here",
which we no longer accept.

In a file:// URL, typically there is no host, and RFC1738 says that
file:///&lt;path&gt; should be used.

Update t5705 to use a working URL.

Reported-by: Michael Blume &lt;blume.mike@gmail.com&gt;
Signed-off-by: Torsten Bögershausen &lt;tboegi@web.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jk/fetch-reflog-df-conflict'</title>
<updated>2014-11-12T19:59:58Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-11-12T19:59:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=bbebdc1dcaf4a004391c7148ac1ce32b2d4633ee'/>
<id>urn:sha1:bbebdc1dcaf4a004391c7148ac1ce32b2d4633ee</id>
<content type='text'>
Fix-up a test for portability.

* jk/fetch-reflog-df-conflict:
  t1410: fix breakage on case-insensitive filesystems
</content>
</entry>
<entry>
<title>t1410: fix breakage on case-insensitive filesystems</title>
<updated>2014-11-10T17:38:53Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2014-11-09T01:59:18Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=aae828b911e7c0285f10476d42758101825b9add'/>
<id>urn:sha1:aae828b911e7c0285f10476d42758101825b9add</id>
<content type='text'>
Two tests recently added to t1410 create branches "a" and
"a/b" to test d/f conflicts on reflogs. Earlier, unrelated
tests in that script create the path "A/B" in the working
tree.  There's no conflict on a case-sensitive filesystem,
but on a case-insensitive one, "git log" will complain that
"a/b" is both a revision and a working tree path.

We could fix this by using a "--" to disambiguate, but we
are probably better off using names that are less confusing
to make it more clear that they are unrelated to the working
tree files.  This patch turns "a/b" into "one/two".

Reported-by: Michael Blume &lt;blume.mike@gmail.com&gt;
Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'tm/line-log-first-parent'</title>
<updated>2014-11-06T18:52:37Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-11-06T18:52:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=64b9326460e066a6ae598ed53f38bec8ab4e577d'/>
<id>urn:sha1:64b9326460e066a6ae598ed53f38bec8ab4e577d</id>
<content type='text'>
"git log --first-parent -L..." used to crash.

* tm/line-log-first-parent:
  line-log: fix crash when --first-parent is used
</content>
</entry>
<entry>
<title>Merge branch 'jk/fetch-reflog-df-conflict'</title>
<updated>2014-11-06T18:52:32Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-11-06T18:52:31Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a1671dd82b5e1c6e837a3f47509a3a33189b0884'/>
<id>urn:sha1:a1671dd82b5e1c6e837a3f47509a3a33189b0884</id>
<content type='text'>
Corner-case bugfixes for "git fetch" around reflog handling.

* jk/fetch-reflog-df-conflict:
  ignore stale directories when checking reflog existence
  fetch: load all default config at startup
</content>
</entry>
<entry>
<title>line-log: fix crash when --first-parent is used</title>
<updated>2014-11-04T20:47:35Z</updated>
<author>
<name>Tzvetan Mikov</name>
<email>tmikov@gmail.com</email>
</author>
<published>2014-11-04T20:33:37Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a8787c5c1c51f4bdb610526175442a23eea7c467'/>
<id>urn:sha1:a8787c5c1c51f4bdb610526175442a23eea7c467</id>
<content type='text'>
line-log tries to access all parents of a commit, but only the first
parent has been loaded if "--first-parent" is specified, resulting
in a crash.

Limit the number of parents to one if "--first-parent" is specified.

Reported-by: Eric N. Vander Weele &lt;ericvw@gmail.com&gt;
Signed-off-by: Tzvetan Mikov &lt;tmikov@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>ignore stale directories when checking reflog existence</title>
<updated>2014-11-04T20:18:44Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2014-11-04T13:24:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=9233887cce8eaebd8469315622b84bd26910351f'/>
<id>urn:sha1:9233887cce8eaebd8469315622b84bd26910351f</id>
<content type='text'>
When we update a ref, we have two rules for whether or not
we actually update the reflog:

  1. If the reflog already exists, we will always append to
     it.

  2. If log_all_ref_updates is set, we will create a new
     reflog file if necessary.

We do the existence check by trying to open the reflog file,
either with or without O_CREAT (depending on log_all_ref_updates).
If it fails, then we check errno to see what happened.

If we were not using O_CREAT and we got ENOENT, the file
doesn't exist, and we return success (there isn't a reflog
already, and we were not told to make a new one).

If we get EISDIR, then there is likely a stale directory
that needs to be removed (e.g., there used to be "foo/bar",
it was deleted, and the directory "foo" was left. Now we
want to create the ref "foo"). If O_CREAT is set, then we
catch this case, try to remove the directory, and retry our
open. So far so good.

But if we get EISDIR and O_CREAT is not set, then we treat
this as any other error, which is not right. Like ENOENT,
EISDIR is an indication that we do not have a reflog, and we
should silently return success (we were not told to create
it). Instead, the current code reports this as an error, and
we fail to update the ref at all.

Note that this is relatively unlikely to happen, as you
would have to have had reflogs turned on, and then later
turned them off (it could also happen due to a bug in fetch,
but that was fixed in the previous commit). However, it's
quite easy to fix: we just need to treat EISDIR like ENOENT
for the non-O_CREAT case, and silently return (note that
this early return means we can also simplify the O_CREAT
case).

Our new tests cover both cases (O_CREAT and non-O_CREAT).
The first one already worked, of course.

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