<?xml version="1.0" encoding="UTF-8"?>
<commits type="array">
  <commit>
    <parents type="array">
      <parent>
        <id>74fbd1182a8300dd0a1d788120813b6d5b9e5cb6</id>
      </parent>
      <parent>
        <id>6e8f993a5a17f71edfd26a026bbc83cbbd3c0638</id>
      </parent>
    </parents>
    <author>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </author>
    <url>http://github.com/git/git/commit/9bfff3ae5fdf1dcd0705056f7f9a42e81548797e</url>
    <id>9bfff3ae5fdf1dcd0705056f7f9a42e81548797e</id>
    <committed-date>2009-12-31T15:00:14-08:00</committed-date>
    <authored-date>2009-12-31T15:00:14-08:00</authored-date>
    <message>Merge branch 'maint-1.6.0' into maint

* maint-1.6.0:
  branch: die explicitly why when calling &quot;git branch [-a|-r] branchname&quot;.</message>
    <tree>509488d440f0f8a7228189ce94e66d5acce5757f</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>e97ca7f41f2b9bbdfc93d103c3f64337bb6dcc20</id>
      </parent>
    </parents>
    <author>
      <name>Matthieu Moy</name>
      <email>Matthieu.Moy@imag.fr</email>
    </author>
    <url>http://github.com/git/git/commit/6e8f993a5a17f71edfd26a026bbc83cbbd3c0638</url>
    <id>6e8f993a5a17f71edfd26a026bbc83cbbd3c0638</id>
    <committed-date>2009-12-31T14:52:05-08:00</committed-date>
    <authored-date>2009-12-30T06:45:31-08:00</authored-date>
    <message>branch: die explicitly why when calling &quot;git branch [-a|-r] branchname&quot;.

The -a and -r options used to be silently ignored in such a command.

Signed-off-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>538b54ada8806479fd013931a10f1774f99499d7</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>63cb8215997fa7bef4319339060869a8c9cee8aa</id>
      </parent>
    </parents>
    <author>
      <name>Shawn O. Pearce</name>
      <email>spearce@spearce.org</email>
    </author>
    <url>http://github.com/git/git/commit/74fbd1182a8300dd0a1d788120813b6d5b9e5cb6</url>
    <id>74fbd1182a8300dd0a1d788120813b6d5b9e5cb6</id>
    <committed-date>2009-12-31T14:46:08-08:00</committed-date>
    <authored-date>2009-12-30T07:03:48-08:00</authored-date>
    <message>fast-import: Document author/committer/tagger name is optional

The fast-import parser does not validate that the author, committer
or tagger name component contains both a name and an email address.
Therefore the name component has always been optional.  Correct the
documentation to match the implementation.

Signed-off-by: Shawn O. Pearce &lt;spearce@spearce.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>9dfb98d148980f6522f3e35883cf51cb5a37bcc6</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>b0b3a241e2ca1ba5b928a128b6dcafb990df6e75</id>
      </parent>
    </parents>
    <author>
      <name>Matthieu Moy</name>
      <email>Matthieu.Moy@imag.fr</email>
    </author>
    <url>http://github.com/git/git/commit/63cb8215997fa7bef4319339060869a8c9cee8aa</url>
    <id>63cb8215997fa7bef4319339060869a8c9cee8aa</id>
    <committed-date>2009-12-31T14:46:08-08:00</committed-date>
    <authored-date>2009-12-30T06:51:22-08:00</authored-date>
    <message>SubmittingPatches: hints to know the status of a submitted patch.

&quot;What happened to my patch&quot; is pretty much a FAQ on the Git mailing list,
it deserves a few paragraphs in SubmittingPatches...

Signed-off-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>906ad7f1be52e1d895b68cbc00e882e241287a4c</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>f5e025a9d5b35e24768475f6890b836ce0d5ed15</id>
      </parent>
      <parent>
        <id>70d7099916c9621e157c620f9cc7fc982f109c55</id>
      </parent>
    </parents>
    <author>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </author>
    <url>http://github.com/git/git/commit/b0b3a241e2ca1ba5b928a128b6dcafb990df6e75</url>
    <id>b0b3a241e2ca1ba5b928a128b6dcafb990df6e75</id>
    <committed-date>2009-12-30T01:24:12-08:00</committed-date>
    <authored-date>2009-12-30T01:24:12-08:00</authored-date>
    <message>Merge branch 'maint-1.6.1' into maint

* maint-1.6.1:
  textconv: stop leaking file descriptors
  commit: --cleanup is a message option
  git count-objects: handle packs bigger than 4G
  t7102: make the test fail if one of its check fails

Conflicts:
	builtin-commit.c
	diff.c</message>
    <tree>f0631396a9ce6a1bdd3ef12f2c87cd47a7864cea</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>799fdb4ed0f9443122fdb85f6f73c58cb1de12ec</id>
      </parent>
    </parents>
    <author>
      <name>Jeff King</name>
      <email>peff@peff.net</email>
    </author>
    <url>http://github.com/git/git/commit/70d7099916c9621e157c620f9cc7fc982f109c55</url>
    <id>70d7099916c9621e157c620f9cc7fc982f109c55</id>
    <committed-date>2009-12-30T01:22:27-08:00</committed-date>
    <authored-date>2009-12-30T01:02:53-08:00</authored-date>
    <message>textconv: stop leaking file descriptors

We read the output from textconv helpers over a pipe, but we
never actually closed our end of the pipe after using it.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>1e3d34205b9fd9581535a563a49ba24cccc5fa24</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>c985ddf318a8c41c6e1abc8bebd058b31c7413c1</id>
      </parent>
      <parent>
        <id>e97ca7f41f2b9bbdfc93d103c3f64337bb6dcc20</id>
      </parent>
    </parents>
    <author>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </author>
    <url>http://github.com/git/git/commit/799fdb4ed0f9443122fdb85f6f73c58cb1de12ec</url>
    <id>799fdb4ed0f9443122fdb85f6f73c58cb1de12ec</id>
    <committed-date>2009-12-29T20:16:34-08:00</committed-date>
    <authored-date>2009-12-29T20:16:34-08:00</authored-date>
    <message>Merge branch 'maint-1.6.0' into maint-1.6.1

* maint-1.6.0:
  commit: --cleanup is a message option
  t7102: make the test fail if one of its check fails</message>
    <tree>451006d4be4d718d3cd33f0f947ebeea295b3481</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>153bb839aa0c36bf5c056a0b74b6d4d2fe99c157</id>
      </parent>
    </parents>
    <author>
      <name>Greg Price</name>
      <email>price@ksplice.com</email>
    </author>
    <url>http://github.com/git/git/commit/e97ca7f41f2b9bbdfc93d103c3f64337bb6dcc20</url>
    <id>e97ca7f41f2b9bbdfc93d103c3f64337bb6dcc20</id>
    <committed-date>2009-12-29T20:15:41-08:00</committed-date>
    <authored-date>2009-12-29T13:54:49-08:00</authored-date>
    <message>commit: --cleanup is a message option

In the usage message for &quot;git commit&quot;, the --cleanup option appeared
at the end, as one of the &quot;contents options&quot;:

usage: git commit [options] [--] &lt;filepattern&gt;...
...
Commit message options
...
Commit contents options
...
    --allow-empty         ok to record an empty change
    --cleanup &lt;default&gt;   how to strip spaces and #comments from message

This is confusing, in part because it makes it ambiguous whether
--allow-empty, just above, refers to an empty diff or an empty message.

Move --cleanup into the 'message options' group.  Also add a pair of
comments to prevent similar oversights in the future.

Signed-off-by: Greg Price &lt;price@ksplice.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>2a4b98c76ff900beeb3d5ac65265a99e5abc9ec6</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>66fd74ea5db13e6f095f7c414e9ea4a1aa59cdc7</id>
      </parent>
    </parents>
    <author>
      <name>Andreas Schwab</name>
      <email>schwab@linux-m68k.org</email>
    </author>
    <url>http://github.com/git/git/commit/c985ddf318a8c41c6e1abc8bebd058b31c7413c1</url>
    <id>c985ddf318a8c41c6e1abc8bebd058b31c7413c1</id>
    <committed-date>2009-12-29T19:51:37-08:00</committed-date>
    <authored-date>2009-12-29T11:09:15-08:00</authored-date>
    <message>git count-objects: handle packs bigger than 4G

Use off_t to count sizes of packs and objects to avoid overflow after
4Gb.

Signed-off-by: Andreas Schwab &lt;schwab@linux-m68k.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>ed7352463f586831950d33a1220613762d450958</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>82d97da30aba767e5c8406b595274af299858357</id>
      </parent>
    </parents>
    <author>
      <name>Nguy&#7877;n Th&#225;i Ng&#7885;c Duy</name>
      <email>pclouds@gmail.com</email>
    </author>
    <url>http://github.com/git/git/commit/153bb839aa0c36bf5c056a0b74b6d4d2fe99c157</url>
    <id>153bb839aa0c36bf5c056a0b74b6d4d2fe99c157</id>
    <committed-date>2009-12-29T19:39:27-08:00</committed-date>
    <authored-date>2009-12-29T00:13:18-08:00</authored-date>
    <message>t7102: make the test fail if one of its check fails

Signed-off-by: Nguy&#7877;n Th&#225;i Ng&#7885;c Duy &lt;pclouds@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>00eddca95522f4b4fec8c75c52f585c49821b2d3</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>0622f79d8e7e91efc5870afe0ce134e1cee9f9f0</id>
      </parent>
    </parents>
    <author>
      <name>Nguy&#7877;n Th&#225;i Ng&#7885;c Duy</name>
      <email>pclouds@gmail.com</email>
    </author>
    <url>http://github.com/git/git/commit/f5e025a9d5b35e24768475f6890b836ce0d5ed15</url>
    <id>f5e025a9d5b35e24768475f6890b836ce0d5ed15</id>
    <committed-date>2009-12-29T07:57:54-08:00</committed-date>
    <authored-date>2009-12-28T23:48:41-08:00</authored-date>
    <message>Documentation: always respect core.worktree if set

The value of core.worktree in a &quot;.git/config&quot; is honored even when it
differs from the directory that has the &quot;.git&quot; directory as its
subdirectory.  This is likely to be a misconfiguration, so warn users
about it.  Also, drop the part of the documentation that incorrectly
claimed that we ignore such a misconfigured value.

Signed-off-by: Nguy&#7877;n Th&#225;i Ng&#7885;c Duy &lt;pclouds@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>070c2c0e0ff142e5997c7316539004de87ec8e96</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>21a0d9b42d9cc9560c66fb3cfa82a2a449de8b39</id>
      </parent>
      <parent>
        <id>07cc8ecac0313c571cb9838585b376df86c80563</id>
      </parent>
    </parents>
    <author>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </author>
    <url>http://github.com/git/git/commit/0622f79d8e7e91efc5870afe0ce134e1cee9f9f0</url>
    <id>0622f79d8e7e91efc5870afe0ce134e1cee9f9f0</id>
    <committed-date>2009-12-27T10:42:00-08:00</committed-date>
    <authored-date>2009-12-27T10:42:00-08:00</authored-date>
    <message>Merge branch 'nf/maint-fix-index-ext-len-on-be64' into maint

* nf/maint-fix-index-ext-len-on-be64:
  read_index(): fix reading extension size on BE 64-bit archs</message>
    <tree>30926e9f77a1acd3fd0bd351eb0e432bc5e697fa</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>7a51ed66f653c248993b3c4a61932e47933d835e</id>
      </parent>
    </parents>
    <author>
      <name>Nathaniel W Filardo</name>
      <email>nwf@cs.jhu.edu</email>
    </author>
    <url>http://github.com/git/git/commit/07cc8ecac0313c571cb9838585b376df86c80563</url>
    <id>07cc8ecac0313c571cb9838585b376df86c80563</id>
    <committed-date>2009-12-27T10:41:48-08:00</committed-date>
    <authored-date>2009-12-26T22:11:21-08:00</authored-date>
    <message>read_index(): fix reading extension size on BE 64-bit archs

On big endian platforms with 8-byte unsigned long, the code reads the
size of the index extension section (which is a 4-byte network byte
order integer) incorrectly.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>a76397a13d474ba21541ee11cfc3351887f77286</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>685c568a7ac73794bcc367fddae129c8fcaf1d2e</id>
      </parent>
    </parents>
    <author>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </author>
    <url>http://github.com/git/git/commit/21a0d9b42d9cc9560c66fb3cfa82a2a449de8b39</url>
    <id>21a0d9b42d9cc9560c66fb3cfa82a2a449de8b39</id>
    <committed-date>2009-12-26T14:32:36-08:00</committed-date>
    <authored-date>2009-12-26T14:32:36-08:00</authored-date>
    <message>Makefile: FreeBSD (both 7 and 8) needs OLD_ICONV

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>bd1171c18e67cacdc452c9fc00d3ffd0d586de41</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>d828fdb8d79b1d06b3015d9a45da24ac3f887484</id>
      </parent>
    </parents>
    <author>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </author>
    <url>http://github.com/git/git/commit/685c568a7ac73794bcc367fddae129c8fcaf1d2e</url>
    <id>685c568a7ac73794bcc367fddae129c8fcaf1d2e</id>
    <committed-date>2009-12-26T14:20:09-08:00</committed-date>
    <authored-date>2009-12-26T14:20:09-08:00</authored-date>
    <message>Start 1.6.6.X maintenance track

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>709064254c096683e40cd69c79860ba622f43cc6</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>5717b47c59b0d01d9820dd6d4073d7428d9d4c6e</id>
      </parent>
      <parent>
        <id>eca4460eeb18b895cb6ca590490073f75fd010a6</id>
      </parent>
    </parents>
    <author>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </author>
    <url>http://github.com/git/git/commit/d828fdb8d79b1d06b3015d9a45da24ac3f887484</url>
    <id>d828fdb8d79b1d06b3015d9a45da24ac3f887484</id>
    <committed-date>2009-12-26T14:15:55-08:00</committed-date>
    <authored-date>2009-12-26T14:15:55-08:00</authored-date>
    <message>Merge branch 'jc/maint-obsd46' into maint

* jc/maint-obsd46:
  t4019 &quot;grep&quot; portability fix
  t1200: work around a bug in some implementations of &quot;find&quot;</message>
    <tree>929110458a6ea604f3fefafe432e067993959402</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>902f235378cb2b2f6dd5dd664b9630c95321f0ae</id>
      </parent>
    </parents>
    <author>
      <name>Tarmigan Casebolt</name>
      <email>tarmigan+git@gmail.com</email>
    </author>
    <url>http://github.com/git/git/commit/5717b47c59b0d01d9820dd6d4073d7428d9d4c6e</url>
    <id>5717b47c59b0d01d9820dd6d4073d7428d9d4c6e</id>
    <committed-date>2009-12-26T14:12:34-08:00</committed-date>
    <authored-date>2009-12-26T09:01:07-08:00</authored-date>
    <message>Add git-http-backend to command-list.

Signed-off-by: Tarmigan Casebolt &lt;tarmigan+git@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>2eba782e3b47f87345e10aed612875c2efde8790</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>15caa41053c465aeabb1a0d2d3d3c12d701bc62d</id>
      </parent>
    </parents>
    <author>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </author>
    <url>http://github.com/git/git/commit/eca4460eeb18b895cb6ca590490073f75fd010a6</url>
    <id>eca4460eeb18b895cb6ca590490073f75fd010a6</id>
    <committed-date>2009-12-26T13:59:34-08:00</committed-date>
    <authored-date>2009-12-26T13:53:17-08:00</authored-date>
    <message>t4019 &quot;grep&quot; portability fix

Input to &quot;grep&quot; is supposed to be &quot;text&quot;, but we deliberately feed output
from &quot;git diff --color&quot; to sift it into two sets of lines (ones with
errors, the other without).  Some implementations of &quot;grep&quot; only report
matches with the exit status, without showing the matched lines in their
output (e.g. OpenBSD 4.6, which says &quot;Binary file .. matches&quot;).

Fortunately, &quot;grep -a&quot; is often a way to force the command to treat its
input as text.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>355b127ca87f13e96d2e3355cbe66b17a889e989</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>902f235378cb2b2f6dd5dd664b9630c95321f0ae</id>
      </parent>
    </parents>
    <author>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </author>
    <url>http://github.com/git/git/commit/15caa41053c465aeabb1a0d2d3d3c12d701bc62d</url>
    <id>15caa41053c465aeabb1a0d2d3d3c12d701bc62d</id>
    <committed-date>2009-12-26T13:59:31-08:00</committed-date>
    <authored-date>2009-12-26T13:53:45-08:00</authored-date>
    <message>t1200: work around a bug in some implementations of &quot;find&quot;

&quot;find path ...&quot; command should exit with zero status only when all path
operands were traversed successfully.  When a non-existent path is given,
however, some implementations of &quot;find&quot; (e.g. OpenBSD 4.6) exit with zero
status and break the last test in t1200.

Rewrite the test to check that there is no regular files in the objects
fan-out directories to work around this bug; it is closer to what we are
testing anyway.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>5d09c52cdf751eff786ba3f77bc5b4ef2d0eb759</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>b7f44fdf27c1f5dfee099c504a55b62674e7567b</id>
      </parent>
    </parents>
    <author>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </author>
    <url>http://github.com/git/git/commit/902f235378cb2b2f6dd5dd664b9630c95321f0ae</url>
    <id>902f235378cb2b2f6dd5dd664b9630c95321f0ae</id>
    <committed-date>2009-12-23T12:23:11-08:00</committed-date>
    <authored-date>2009-12-23T11:58:52-08:00</authored-date>
    <message>Git 1.6.6

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>17373b26303377abfca4417bc8aef28b6fc812dd</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>150d38c4f3733b38c2c212469afa162a55e0e99d</id>
      </parent>
    </parents>
    <author>
      <name>Robert Zeh</name>
      <email>robert.a.zeh@gmail.com</email>
    </author>
    <url>http://github.com/git/git/commit/b7f44fdf27c1f5dfee099c504a55b62674e7567b</url>
    <id>b7f44fdf27c1f5dfee099c504a55b62674e7567b</id>
    <committed-date>2009-12-23T11:58:05-08:00</committed-date>
    <authored-date>2009-12-23T09:54:11-08:00</authored-date>
    <message>git svn: add test for a git svn gc followed by a git svn mkdirs

git svn gc will compress the unhandled.log files that git svn mkdirs reads,
causing git svn mkdirs to skip directory creation.

[ew: trivial whitespace cleanups]
Acked-by: Eric Wong &lt;normalperson@yhbt.net&gt;
Signed-off-by: Robert Zeh &lt;robert.a.zeh@gmail.com&gt;</message>
    <tree>2af7ea2c78f2a4a3fa46a702e5f63c90c4618171</tree>
    <committer>
      <name>Eric Wong</name>
      <email>normalperson@yhbt.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>129a5a6deacfe6ffb32291fcd96e0d1567f780b2</id>
      </parent>
    </parents>
    <author>
      <name>Eric Wong</name>
      <email>normalperson@yhbt.net</email>
    </author>
    <url>http://github.com/git/git/commit/150d38c4f3733b38c2c212469afa162a55e0e99d</url>
    <id>150d38c4f3733b38c2c212469afa162a55e0e99d</id>
    <committed-date>2009-12-23T11:58:05-08:00</committed-date>
    <authored-date>2009-12-22T22:40:18-08:00</authored-date>
    <message>git svn: branch/tag commands detect username in URLs

svn+ssh:// repositories often have userinfo embedded in the URL
which were stripped out of the &quot;git-svn-id:&quot; trailers.  Since
the SVN::Client::copy function takes userinfo into account when
matching URLs for SVN repositories, we need to retrieve the full
URL with embedded userinfo in it to avoid mismatched URLs.

Tested-by: Florian K&#246;berle &lt;florian@fkoeberle.de&gt;
Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;</message>
    <tree>010d784cdf08c9d3b35cb8e62e66f842b35ea4c3</tree>
    <committer>
      <name>Eric Wong</name>
      <email>normalperson@yhbt.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>0fe19753f26e2747f48d1ec6a1761006d75c2d71</id>
      </parent>
      <parent>
        <id>c8cba79181abc139d7cba364bf868875426fc2c1</id>
      </parent>
    </parents>
    <author>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </author>
    <url>http://github.com/git/git/commit/129a5a6deacfe6ffb32291fcd96e0d1567f780b2</url>
    <id>129a5a6deacfe6ffb32291fcd96e0d1567f780b2</id>
    <committed-date>2009-12-22T12:32:39-08:00</committed-date>
    <authored-date>2009-12-22T12:32:39-08:00</authored-date>
    <message>Merge branch 'maint'

* maint:
  Prevent git blame from segfaulting on a missing author name</message>
    <tree>dd00f5a0afb3ef544a530109f5c66311cffe93e9</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>063681d72e60e80cd14576037728b395ed42e330</id>
      </parent>
    </parents>
    <author>
      <name>Eric Wong</name>
      <email>normalperson@yhbt.net</email>
    </author>
    <url>http://github.com/git/git/commit/0fe19753f26e2747f48d1ec6a1761006d75c2d71</url>
    <id>0fe19753f26e2747f48d1ec6a1761006d75c2d71</id>
    <committed-date>2009-12-22T12:15:40-08:00</committed-date>
    <authored-date>2009-12-22T12:15:40-08:00</authored-date>
    <message>git svn: lookup new parents correctly from svn:mergeinfo

This appears to be a trivial case where array indices were being
passed to git rev-list, instead of the contents stored in the
array itself.

Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;</message>
    <tree>6386cdd8ddd4aff52e65032a48c23d479e9b322b</tree>
    <committer>
      <name>Eric Wong</name>
      <email>normalperson@yhbt.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>e49ca974d6ff2dda1ff4ee39e7cc33af33d1eb2a</id>
      </parent>
    </parents>
    <author>
      <name>David Reiss</name>
      <email>dreiss@facebook.com</email>
    </author>
    <url>http://github.com/git/git/commit/c8cba79181abc139d7cba364bf868875426fc2c1</url>
    <id>c8cba79181abc139d7cba364bf868875426fc2c1</id>
    <committed-date>2009-12-22T11:51:17-08:00</committed-date>
    <authored-date>2009-12-22T10:51:41-08:00</authored-date>
    <message>Prevent git blame from segfaulting on a missing author name

The human-readable author and committer name can be missing from
commits imported from foreign SCM interfaces.  Make sure we parse
the &quot;author&quot; and &quot;committer&quot; line a bit more leniently and avoid
segfaulting by assuming the name always exists.

Signed-off-by: David Reiss &lt;dreiss@facebook.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;</message>
    <tree>fbe48748ccb1778d9173bf2816ef8a0812e222b2</tree>
    <committer>
      <name>Junio C Hamano</name>
      <email>gitster@pobox.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>7a955a5365d9ebd5e12c12ed926b2b51b61c02ee</id>
      </parent>
    </parents>
    <author>
      <name>Andrew Myrick</name>
      <email>amyrick@apple.com</email>
    </author>
    <url>http://github.com/git/git/commit/063681d72e60e80cd14576037728b395ed42e330</url>
    <id>063681d72e60e80cd14576037728b395ed42e330</id>
    <committed-date>2009-12-21T14:33:50-08:00</committed-date>
    <authored-date>2009-12-21T14:22:54-08:00</authored-date>
    <message>git-svn: Remove obsolete MAXPARENT check

Change git-svn not to impose a limit of 16 parents on a merge.

This limit in git-svn artificially prevents cloning svn repositories
that contain commits with more than 16 merge parents.

The limit was removed from builtin-commit-tree.c for git v1.6.0 in commit
ef98c5cafb3e799b1568bb843fcd45920dc62f16, so there is no need to check for it
it in git-svn.

Signed-off-by: Andrew Myrick &lt;amyrick@apple.com&gt;
Acked-by: Eric Wong &lt;normalperson@yhbt.net&gt;</message>
    <tree>4b58f35c371d64a9c24e3fba2ed565b0b34f76a4</tree>
    <committer>
      <name>Eric Wong</name>
      <email>normalperson@yhbt.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>ea020cbd6aeb769d95e5c2dbffee4c81d6f92796</id>
      </parent>
    </parents>
    <author>
      <name>Sam Vilain</name>
      <email>sam@vilain.net</email>
    </author>
    <url>http://github.com/git/git/commit/7a955a5365d9ebd5e12c12ed926b2b51b61c02ee</url>
    <id>7a955a5365d9ebd5e12c12ed926b2b51b61c02ee</id>
    <committed-date>2009-12-21T02:32:53-08:00</committed-date>
    <authored-date>2009-12-19T08:26:26-08:00</authored-date>
    <message>git-svn: detect cherry-picks correctly.

The old function was incorrect; in some instances it marks a cherry picked
range as a merged branch (because of an incorrect assumption that
'rev-list COMMIT --not RANGE' would work).  This is replaced with a
function which should detect them correctly, memoized to limit the expense
of dealing with branches with many cherry picks to one 'merge-base' call
per merge, per branch which used cherry picking.

Signed-off-by: Sam Vilain &lt;sam@vilain.net&gt;
Acked-by: Eric Wong &lt;normalperson@yhbt.net&gt;</message>
    <tree>f9fab812076328fab4546339b54e32bb88da87e6</tree>
    <committer>
      <name>Eric Wong</name>
      <email>normalperson@yhbt.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>33973a5b179278c563624fcb45c223f03031b242</id>
      </parent>
    </parents>
    <author>
      <name>Sam Vilain</name>
      <email>sam@vilain.net</email>
    </author>
    <url>http://github.com/git/git/commit/ea020cbd6aeb769d95e5c2dbffee4c81d6f92796</url>
    <id>ea020cbd6aeb769d95e5c2dbffee4c81d6f92796</id>
    <committed-date>2009-12-21T02:32:52-08:00</committed-date>
    <authored-date>2009-12-19T08:25:31-08:00</authored-date>
    <message>git-svn: exclude already merged tips using one rev-list call

The old function would have to check all mentioned merge tips, every time
that the mergeinfo ticket changed.  This involved 1-2 rev-list operation
for each listed mergeinfo line.  If there are a lot of feature branches
being merged into a trunk, this makes for a very expensive operation for
detecting the new parents on every merge.

This new version first uses a single 'rev-list' to figure out which commit
ranges are already reachable from the parents.  This is used to eliminate
the already merged branches from the list.

Signed-off-by: Sam Vilain &lt;sam@vilain.net&gt;
Acked-by: Eric Wong &lt;normalperson@yhbt.net&gt;</message>
    <tree>43ace88e0ce5ed8e259de4aed1022787640e50e5</tree>
    <committer>
      <name>Eric Wong</name>
      <email>normalperson@yhbt.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>7d944c3399c4145293d599e1ddc76d1ac0c1e118</id>
      </parent>
    </parents>
    <author>
      <name>Sam Vilain</name>
      <email>sam@vilain.net</email>
    </author>
    <url>http://github.com/git/git/commit/33973a5b179278c563624fcb45c223f03031b242</url>
    <id>33973a5b179278c563624fcb45c223f03031b242</id>
    <committed-date>2009-12-21T02:32:50-08:00</committed-date>
    <authored-date>2009-12-19T08:22:42-08:00</authored-date>
    <message>git-svn: fix some mistakes with interpreting SVN mergeinfo commit ranges

SVN's list of commit ranges in mergeinfo tickets is inclusive, whereas
git commit ranges are exclusive on the left hand side.  Also, the end
points of the commit ranges may not exist; they simply delineate
ranges of commits which may or may not exist.  Fix these two mistakes.

Signed-off-by: Sam Vilain &lt;sam@vilain.net&gt;
Acked-by: Eric Wong &lt;normalperson@yhbt.net&gt;</message>
    <tree>5359e45455d6b0a943c22114e85facaba9792999</tree>
    <committer>
      <name>Eric Wong</name>
      <email>normalperson@yhbt.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>1d144aa25edbb4dcda88abbaef8f336108b8d788</id>
      </parent>
    </parents>
    <author>
      <name>Sam Vilain</name>
      <email>sam@vilain.net</email>
    </author>
    <url>http://github.com/git/git/commit/7d944c3399c4145293d599e1ddc76d1ac0c1e118</url>
    <id>7d944c3399c4145293d599e1ddc76d1ac0c1e118</id>
    <committed-date>2009-12-21T02:32:48-08:00</committed-date>
    <authored-date>2009-12-19T03:55:13-08:00</authored-date>
    <message>git-svn: memoize conversion of SVN merge ticket info to git commit ranges

Each time the svn mergeinfo ticket changes, we look it up in the rev_map;
when there are a lot of merged branches, this will result in many repeated
lookups of the same information for subsequent commits.  Arrange the slow
part of the function so that it may be memoized, and memoize it.  The more
expensive revision walking operation can be memoized separately.

[ew: changed &quot;next&quot; to &quot;return&quot; for function exit]

Signed-off-by: Sam Vilain &lt;sam@vilain.net&gt;
Acked-by: Eric Wong &lt;normalperson@yhbt.net&gt;</message>
    <tree>4850db3279150a4225b6d93c423c3f726aedee7d</tree>
    <committer>
      <name>Eric Wong</name>
      <email>normalperson@yhbt.net</email>
    </committer>
  </commit>
</commits>
