git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Linus Torvalds <torvalds@linux-foundation.org>
To: David Kastrup <dak@gnu.org>, Jeff King <peff@peff.net>
Cc: Git Mailing List <git@vger.kernel.org>
Subject: Re: What's cooking in git.git (topics)
Date: Tue, 2 Oct 2007 19:28:19 -0700 (PDT)	[thread overview]
Message-ID: <alpine.LFD.0.999.0710021916080.3579@woody.linux-foundation.org> (raw)
In-Reply-To: <86ve9p32cp.fsf@lola.quinscape.zz>


[ This is the discussed stupid approach - just sort the dang hash array, 
  so that we can use a linear scan over the src/dst ]

On Tue, 2 Oct 2007, David Kastrup wrote:
> 
> This does not actually require an actual merge _sort_ AFAICS: do the
> "sort file.hashed" step using qsort.  The comparison step does not
> actually need to produce merged output, but merely advances through
> two hash arrays and generates statistics.
> 
> This should already beat the pants off the current implementation,
> even when the hash array is sparse, simply because our inner loop then
> has perfect hash coherence.

Sadly, that's not the case. It *does* seem to beat the current 
implementation, but it's not "beat the pants off". It looks like an 
improvement of about 15%, which is nothing to sneeze at, but it's not an 
order-of-magnitude improvement either.

Here's a test-patch. I don't guarantee anything, except that when I did 
the timings I also did a "wc" on the result, and they matched..

Before:
	[torvalds@woody linux]$ time git diff -l0 --stat -C v2.6.22.. | wc
	   7104   28574  438020

	real    0m10.526s
	user    0m10.401s
	sys     0m0.136s

After:
	[torvalds@woody linux]$ time ~/git/git diff -l0 --stat -C v2.6.22.. | wc
	   7104   28574  438020
	
	real    0m8.876s
	user    0m8.761s
	sys     0m0.128s

but the diff is fairly simple, so if somebody will go over it and say 
whether it's likely to be *correct* too, that 15% may well be worth it.

[ Side note, without rename detection, that diff takes just under three 
  seconds for me, so in that sense the improvement to the rename detection 
  itself is larger than the overall 15% - it brings the cost of just 
  rename detection from 7.5s to 5.9s, which would be on the order of just 
  over a 20% performance improvement. ]

Hmm. The patch depends on half-way subtle issues like the fact that the 
hashtables are guaranteed to not be full => we're guaranteed to have zero 
counts at the end => we don't need to do any steenking iterator count in 
the loop. A few comments might in order.

		Linus

---
 diffcore-delta.c |   54 ++++++++++++++++++++++++++++++------------------------
 1 files changed, 30 insertions(+), 24 deletions(-)

diff --git a/diffcore-delta.c b/diffcore-delta.c
index d9729e5..6d65697 100644
--- a/diffcore-delta.c
+++ b/diffcore-delta.c
@@ -46,22 +46,6 @@ struct spanhash_top {
 	struct spanhash data[FLEX_ARRAY];
 };
 
-static struct spanhash *spanhash_find(struct spanhash_top *top,
-				      unsigned int hashval)
-{
-	int sz = 1 << top->alloc_log2;
-	int bucket = hashval & (sz - 1);
-	while (1) {
-		struct spanhash *h = &(top->data[bucket++]);
-		if (!h->cnt)
-			return NULL;
-		if (h->hashval == hashval)
-			return h;
-		if (sz <= bucket)
-			bucket = 0;
-	}
-}
-
 static struct spanhash_top *spanhash_rehash(struct spanhash_top *orig)
 {
 	struct spanhash_top *new;
@@ -122,6 +106,20 @@ static struct spanhash_top *add_spanhash(struct spanhash_top *top,
 	}
 }
 
+static int spanhash_cmp(const void *_a, const void *_b)
+{
+	const struct spanhash *a = _a;
+	const struct spanhash *b = _b;
+
+	/* A count of zero compares at the end.. */
+	if (!a->cnt)
+		return !b->cnt ? 0 : 1;
+	if (!b->cnt)
+		return -1;
+	return a->hashval < b->hashval ? -1 :
+		a->hashval > b->hashval ? 1 : 0;
+}
+
 static struct spanhash_top *hash_chars(struct diff_filespec *one)
 {
 	int i, n;
@@ -158,6 +156,10 @@ static struct spanhash_top *hash_chars(struct diff_filespec *one)
 		n = 0;
 		accum1 = accum2 = 0;
 	}
+	qsort(hash->data,
+		1ul << hash->alloc_log2,
+		sizeof(hash->data[0]),
+		spanhash_cmp);
 	return hash;
 }
 
@@ -169,7 +171,7 @@ int diffcore_count_changes(struct diff_filespec *src,
 			   unsigned long *src_copied,
 			   unsigned long *literal_added)
 {
-	int i, ssz;
+	struct spanhash *s, *d;
 	struct spanhash_top *src_count, *dst_count;
 	unsigned long sc, la;
 
@@ -190,22 +192,26 @@ int diffcore_count_changes(struct diff_filespec *src,
 	}
 	sc = la = 0;
 
-	ssz = 1 << src_count->alloc_log2;
-	for (i = 0; i < ssz; i++) {
-		struct spanhash *s = &(src_count->data[i]);
-		struct spanhash *d;
+	s = src_count->data;
+	d = dst_count->data;
+	for (;;) {
 		unsigned dst_cnt, src_cnt;
 		if (!s->cnt)
-			continue;
+			break;
+		while (d->cnt) {
+			if (d->hashval >= s->hashval)
+				break;
+			d++;
+		}
 		src_cnt = s->cnt;
-		d = spanhash_find(dst_count, s->hashval);
-		dst_cnt = d ? d->cnt : 0;
+		dst_cnt = d->hashval == s->hashval ? d->cnt : 0;
 		if (src_cnt < dst_cnt) {
 			la += dst_cnt - src_cnt;
 			sc += src_cnt;
 		}
 		else
 			sc += dst_cnt;
+		s++;
 	}
 
 	if (!src_count_p)

  parent reply	other threads:[~2007-10-03  2:29 UTC|newest]

Thread overview: 575+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-06  8:52 What's cooking in git.git (topics) Junio C Hamano
     [not found] ` <7v1wd1d0le.fsf@gitster.siamese.dyndns.org>
2007-09-14 18:30   ` Shawn O. Pearce
2007-09-15  7:47     ` db/fetch-pack topic (was: What's cooking in git.git (topics)) Shawn O. Pearce
2007-09-16  4:03       ` Shawn O. Pearce
2007-09-14 23:47   ` What's cooking in git.git (topics) Johannes Schindelin
2007-09-26 21:07     ` Carlos Rica
2007-09-26 20:05   ` Junio C Hamano
2007-09-26 21:44     ` Johannes Schindelin
2007-09-26 21:53       ` Tom Clarke
2007-09-27  2:36     ` Jeff King
2007-09-27  6:08       ` David Kastrup
2007-09-27  6:43         ` David Kastrup
2007-09-27 13:30         ` Jeff King
2007-09-27 13:46           ` David Kastrup
2007-10-02  4:16       ` Jeff King
2007-10-02  5:01         ` Junio C Hamano
2007-10-02  5:08           ` Jeff King
2007-10-02  5:13             ` Jeff King
2007-10-02  6:10               ` David Kastrup
2007-10-02 16:11                 ` Jeff King
2007-10-02 16:31                   ` David Kastrup
2007-10-02 17:39                     ` Jeff King
2007-10-02 18:44                       ` David Kastrup
2007-10-03  2:28                     ` Linus Torvalds [this message]
2007-10-03  6:54                       ` Jeff King
2007-10-03 16:13                         ` Linus Torvalds
2007-10-03  8:20                       ` David Kastrup
2007-10-03 16:59                         ` Jeff King
2007-10-03 17:53                           ` Linus Torvalds
2007-10-03 18:09                             ` David Kastrup
2007-10-04  7:10                       ` Junio C Hamano
2007-09-28  3:24     ` Daniel Barkalow
2007-10-02  5:53     ` Junio C Hamano
2007-10-02  6:41       ` Steven Grimm
2007-10-02  6:44       ` Steffen Prohaska
2007-10-02  7:03         ` Matthieu Moy
2007-10-02  7:21           ` Junio C Hamano
2007-10-02  8:01             ` David Kågedal
2007-10-02  8:07             ` Matthieu Moy
2007-10-02 17:44               ` Junio C Hamano
2007-10-03  5:30                 ` [PATCH] rebase: make the warning more useful when the work tree is unclean Junio C Hamano
2007-10-03  9:02                   ` Matthieu Moy
2007-10-02 12:52       ` What's cooking in git.git (topics) Johannes Schindelin
2007-10-02 17:00       ` Daniel Barkalow
  -- strict thread matches above, loose matches on Subject: below --
2008-03-09 10:46 Junio C Hamano
2008-03-12  7:50 ` Junio C Hamano
2008-03-12 12:18   ` Johannes Schindelin
2008-03-14  9:00   ` Junio C Hamano
2008-03-23 10:08     ` Junio C Hamano
2008-03-23 12:00       ` Samuel Tardieu
2008-03-23 17:15         ` Junio C Hamano
2008-03-23 22:34           ` Samuel Tardieu
2008-03-23 12:39       ` Steffen Prohaska
2008-03-23 17:37         ` Junio C Hamano
2008-03-23 21:06       ` Govind Salinas
2008-03-24  3:01         ` Junio C Hamano
2008-03-28  1:45       ` Junio C Hamano
2008-03-31  8:40         ` Junio C Hamano
2008-04-04 18:24           ` Junio C Hamano
2008-04-04 20:21             ` Kristian Høgsberg
2008-04-04 20:52               ` Junio C Hamano
2008-04-05  0:26                 ` Johannes Schindelin
2008-04-05  5:51                   ` Junio C Hamano
2008-04-09  9:43             ` Junio C Hamano
2008-04-14  7:00               ` Junio C Hamano
2008-04-15 19:23                 ` Jeff King
2008-04-19  8:19                 ` Junio C Hamano
2008-04-19 14:23                   ` Johannes Schindelin
2008-04-19 16:34                   ` Lars Hjemli
2008-04-20  4:08                     ` Junio C Hamano
2008-04-21 16:10                   ` Brandon Casey
2008-04-22 10:03                   ` Junio C Hamano
2008-04-22 13:59                     ` Ping Yin
2008-04-22 14:55                       ` Josef Weidendorfer
2008-04-22 17:13                         ` Ping Yin
2008-04-22 17:28                           ` Johannes Schindelin
2008-04-23  1:27                             ` Ping Yin
2008-04-23  2:03                               ` Ping Yin
2008-04-22 18:07                           ` Josef Weidendorfer
2008-04-23  1:59                             ` Ping Yin
2008-04-23  7:47                               ` Fedor Sergeev
2008-04-23  8:32                                 ` Ping Yin
2008-04-23  8:47                                 ` Robin Rosenberg
2008-04-23  9:16                                   ` Fedor Sergeev
2008-04-22 20:51                     ` Michele Ballabio
2008-04-23  0:22                       ` Junio C Hamano
2008-04-23  7:36                         ` Michele Ballabio
2008-04-27  6:04                     ` Junio C Hamano
2008-04-27  6:44                       ` Ping Yin
2008-05-06  6:38                       ` Junio C Hamano
2008-05-12 22:03                         ` Junio C Hamano
2008-05-13  0:02                           ` Junio C Hamano
2008-05-14 22:30                         ` Junio C Hamano
2008-05-14 22:55                           ` Daniel Barkalow
2008-05-15  4:30                             ` Junio C Hamano
2008-05-15  5:51                           ` Steffen Prohaska
2008-05-22  1:18                           ` Junio C Hamano
2008-05-22 11:35                             ` Johannes Schindelin
2008-05-22 18:17                               ` Junio C Hamano
2008-05-22 22:02                                 ` Daniel Barkalow
2008-05-25 21:29                               ` Stephan Beyer
2008-05-26  1:22                             ` Junio C Hamano
2008-05-30 20:44                               ` Junio C Hamano
2008-05-30 21:10                                 ` Jon Loeliger
2008-05-31  1:25                                   ` Stephan Beyer
2008-05-30 22:00                                 ` Steven Grimm
2008-06-02  7:58                                 ` Junio C Hamano
2008-06-02  8:10                                   ` Jakub Narebski
2008-06-02 11:56                                   ` Sebastian Bober
2008-06-02 15:17                                   ` Johannes Schindelin
2008-06-02 15:43                                     ` Shawn O. Pearce
2008-06-02 16:14                                       ` Johannes Schindelin
2008-06-02 18:13                                         ` Junio C Hamano
2008-06-02 19:17                                           ` Johannes Schindelin
2008-06-02 19:25                                             ` Johannes Schindelin
2008-06-13 10:16                                   ` Junio C Hamano
2008-06-18  7:31                                     ` Junio C Hamano
2008-06-19  8:58                                       ` Johan Herland
2008-06-21  9:44                                       ` Junio C Hamano
2008-06-21 12:14                                         ` Miklos Vajna
2008-06-24  7:59                                           ` Junio C Hamano
2008-06-24  8:12                                             ` Pieter de Bie
2008-06-24  8:16                                               ` Pieter de Bie
2008-06-24 16:02                                               ` Miklos Vajna
2008-06-24 16:25                                                 ` Johannes Schindelin
2008-06-24 18:54                                                   ` Miklos Vajna
2008-06-24 19:08                                                     ` Johannes Schindelin
2008-06-24 19:31                                                       ` Jakub Narebski
2008-06-24 19:34                                                         ` Johannes Schindelin
2008-06-24 20:06                                                           ` Jakub Narebski
2008-06-26 15:41                                                           ` Jakub Narebski
2008-06-24 20:44                                                       ` Junio C Hamano
2008-06-24 22:10                                                         ` Miklos Vajna
2008-06-24 23:16                                                           ` Junio C Hamano
2008-06-24 23:32                                                             ` Miklos Vajna
2008-06-25  2:57                                                               ` Junio C Hamano
2008-06-25  3:08                                                               ` しらいしななこ
2008-06-25  3:26                                                                 ` Shawn O. Pearce
2008-06-25  0:11                                                             ` Jakub Narebski
2008-06-25  3:32                                                               ` Shawn O. Pearce
2008-06-25  7:29                                                               ` Miklos Vajna
2008-06-23  7:15                                         ` Junio C Hamano
2008-06-23 12:15                                           ` Miklos Vajna
2008-06-25  9:31                                           ` Junio C Hamano
2008-06-29  8:55                                             ` Junio C Hamano
2008-06-29 18:35                                               ` Linus Torvalds
2008-06-29 19:08                                                 ` Junio C Hamano
2008-06-29 20:11                                                 ` Junio C Hamano
2008-06-29 20:15                                                   ` Pieter de Bie
2008-06-29 21:57                                                     ` Johannes Schindelin
2008-06-29 22:00                                                     ` Steffen Prohaska
2008-06-30  3:30                                               ` Jeff King
2008-06-30  5:31                                                 ` Junio C Hamano
2008-06-30  5:33                                                   ` Jeff King
2008-06-30  5:38                                                     ` Junio C Hamano
2008-06-30  9:08                                               ` Junio C Hamano
2008-06-30 14:09                                                 ` Kristian Høgsberg
2008-06-30 15:58                                                   ` Jakub Narebski
2008-06-30 22:15                                                     ` Junio C Hamano
2008-06-30 22:15                                                   ` Junio C Hamano
2008-06-30 22:51                                                     ` Andrew Morton
2008-06-30 23:09                                                       ` Johannes Schindelin
2008-06-30 22:53                                                     ` Petr Baudis
2008-07-01  0:57                                                     ` Stephen Rothwell
2008-07-01 15:44                                                     ` Kristian Høgsberg
2008-07-01 10:11                                                 ` Jeff King
2008-07-02  4:41                                                 ` Junio C Hamano
2008-07-06 10:04                                                   ` Junio C Hamano
2008-07-06 11:10                                                     ` Johannes Schindelin
2008-07-07  1:36                                                       ` Junio C Hamano
2008-07-08  2:46                                                     ` Junio C Hamano
2008-07-10  2:32                                                       ` Junio C Hamano
2008-07-14  5:11                                                         ` Junio C Hamano
2008-07-14  6:45                                                           ` Junio C Hamano
2008-07-14 11:53                                                           ` Johannes Schindelin
2008-07-14 23:12                                                           ` Lea Wiemann
2008-07-14 23:20                                                             ` Lea Wiemann
2008-07-15  0:03                                                               ` Junio C Hamano
2008-07-15  3:38                                                           ` Geoffrey Irving
2008-07-15  9:22                                                             ` Johannes Schindelin
2008-07-15 16:48                                                               ` Geoffrey Irving
2008-07-16  3:33                                                           ` Junio C Hamano
2008-07-17  8:08                                                             ` Junio C Hamano
2008-07-17 13:09                                                               ` Stephan Beyer
2008-07-18  8:50                                                               ` Nanako Shiraishi
2008-07-18  9:08                                                                 ` Junio C Hamano
2008-07-18  9:20                                                                 ` Nanako Shiraishi
2008-07-18  9:43                                                                   ` Junio C Hamano
2008-07-18 11:55                                                                     ` Johannes Schindelin
2008-07-19  5:32                                                                       ` Junio C Hamano
2008-07-19 11:19                                                                         ` Johannes Schindelin
2008-07-19 16:55                                                                           ` Junio C Hamano
2008-07-19 23:16                                                                             ` Johannes Schindelin
2008-07-20 13:04                                                                           ` Miklos Vajna
2008-07-20 13:16                                                                             ` Johannes Schindelin
2008-07-20 18:27                                                                             ` Junio C Hamano
2008-07-20 19:07                                                                               ` Johannes Schindelin
2008-07-20 19:58                                                                                 ` Junio C Hamano
2008-07-20 20:03                                                                                   ` Sverre Rabbelier
2008-07-20 20:33                                                                                     ` Miklos Vajna
2008-07-20 22:58                                                                                       ` Sverre Rabbelier
2008-07-21  8:47                                                                                         ` Jakub Narebski
2008-07-20 20:33                                                                                     ` Junio C Hamano
2008-07-20 22:24                                                                                   ` Johannes Schindelin
2008-07-18  9:44                                                                   ` Petr Baudis
2008-07-18  9:58                                                                     ` Junio C Hamano
2010-12-13 19:09                                                                       ` Yaroslav Halchenko
2010-12-13 20:46                                                                         ` Junio C Hamano
2010-12-13 21:46                                                                           ` Yaroslav Halchenko
2010-12-13 22:15                                                                             ` Junio C Hamano
2010-12-13 22:36                                                                               ` Yaroslav Halchenko
2010-12-14  7:23                                                                             ` Johannes Sixt
2010-12-14 14:21                                                                               ` Yaroslav Halchenko
2008-07-19  5:13                                                                     ` Nanako Shiraishi
2008-07-18 11:56                                                                 ` Johannes Schindelin
2008-07-20 10:20                                                                 ` Nanako Shiraishi
2008-07-20  1:58                                                               ` Junio C Hamano
2008-07-20 22:40                                                                 ` Petr Baudis
2008-07-20 23:04                                                                   ` Junio C Hamano
2008-06-30 14:59                                               ` Brandon Casey
2008-02-03 10:59 Junio C Hamano
2008-02-03 21:43 ` Johannes Schindelin
2008-02-05  9:37 ` Junio C Hamano
2008-02-05 10:24   ` Jakub Narebski
2008-02-06  9:31     ` Junio C Hamano
2008-02-07  2:03   ` Junio C Hamano
2008-02-07  5:05     ` Jeff King
2008-02-07  9:43       ` Lars Hjemli
2008-02-07 10:32     ` Jakub Narebski
2008-02-10 10:48     ` Junio C Hamano
2008-02-10 16:29       ` Jakub Narebski
2008-02-10 16:48         ` Johannes Schindelin
2008-02-10 22:09         ` Junio C Hamano
2008-02-10 22:09         ` Junio C Hamano
2008-02-12  7:24       ` Junio C Hamano
2008-02-17  3:59         ` Junio C Hamano
2008-02-17 12:41           ` Jeff King
2008-02-17 13:52           ` Jakub Narebski
2008-02-17 18:59             ` Junio C Hamano
2008-02-17 22:01               ` Jakub Narebski
2008-02-18  0:37                 ` Junio C Hamano
2008-02-18  1:05                   ` Jakub Narebski
2008-02-17 15:48           ` Matthias Kestenholz
2008-02-17 18:10             ` Junio C Hamano
2008-02-17 18:22               ` Jeff King
2008-02-21  4:16           ` Junio C Hamano
2008-02-21 10:40             ` Johannes Schindelin
2008-02-21 16:47               ` Junio C Hamano
2008-02-22 18:47               ` Brandon Casey
2008-02-22 22:26                 ` Junio C Hamano
2008-02-23  0:19                   ` Brandon Casey
2008-02-23  0:29                     ` Junio C Hamano
2008-02-23  0:51                     ` Junio C Hamano
2008-02-23  2:43                       ` Brandon Casey
2008-02-25  8:40             ` Junio C Hamano
2008-02-28  0:45               ` Junio C Hamano
2008-03-01 20:15                 ` Junio C Hamano
2008-03-02 14:02                   ` Shawn O. Pearce
2008-03-03  2:06                   ` Junio C Hamano
2008-03-06  5:49                     ` Junio C Hamano
2008-03-06 17:01                       ` Johannes Schindelin
2008-03-08  9:38                       ` Junio C Hamano
     [not found] <200711270622.lAR6MFXR010010@mi0.bluebottle.com>
2007-11-27  8:52 ` Jakub Narebski
2007-11-27  6:21 しらいしななこ
2007-11-27 11:12 ` Johannes Schindelin
2007-11-27 13:45   ` Andreas Ericsson
2007-11-27 13:54     ` Johannes Schindelin
2007-11-27 15:18       ` Andreas Ericsson
2007-11-27 14:29   ` Nicolas Pitre
2007-11-27 15:08     ` J. Bruce Fields
2007-11-27 15:19       ` Nicolas Pitre
2007-11-27 15:34         ` J. Bruce Fields
2007-11-27 16:14           ` Nicolas Pitre
2007-11-27 16:42             ` J. Bruce Fields
2007-11-27 16:54               ` Johannes Schindelin
2007-11-27 17:07                 ` J. Bruce Fields
2007-11-28  8:12                   ` Andreas Ericsson
2007-11-27 17:23               ` Nicolas Pitre
2007-11-29  1:00                 ` Junio C Hamano
2007-11-29  1:06                   ` J. Bruce Fields
2007-11-29  1:26                     ` Junio C Hamano
2007-11-29  8:24                   ` Johan Herland
2007-11-29 17:47                   ` Nicolas Pitre
2007-11-27 17:22   ` Junio C Hamano
2007-11-27 17:29     ` Johannes Schindelin
2007-10-22  6:32 What's cooking in git/spearce.git (topics) Shawn O. Pearce
2007-10-24 12:51 ` What's cooking in git.git (topics) Junio C Hamano
2007-10-24 13:09   ` David Symonds
2007-10-24 16:08   ` Scott Parish
2007-10-24 18:27     ` Andreas Ericsson
2007-10-25  0:35       ` Scott Parish
2007-11-01  5:41   ` Junio C Hamano
2007-11-01 11:02     ` Jakub Narebski
2007-11-01 20:57       ` Junio C Hamano
2007-11-01 18:33     ` Linus Torvalds
2007-11-01 19:19       ` Geert Bosch
2007-11-01 20:27         ` Junio C Hamano
2007-11-01 20:47           ` Mike Hommey
2007-11-01 21:20             ` Junio C Hamano
2007-11-02  0:32               ` Junio C Hamano
2007-11-01 21:44             ` Pierre Habouzit
2007-11-01 21:17           ` Geert Bosch
2007-11-02  0:00             ` Jonas Fonseca
2007-11-01 21:18           ` Theodore Tso
2007-11-01 21:26             ` Melchior FRANZ
2007-11-01 21:32           ` Johan Herland
2007-11-01 21:51             ` Junio C Hamano
2007-11-01 22:05               ` Linus Torvalds
2007-11-01 22:26                 ` Bill Lear
2007-11-01 22:50                 ` Junio C Hamano
2007-11-02  2:19                 ` Petr Baudis
2007-11-01 21:42           ` Pierre Habouzit
2007-11-02  9:39             ` Andreas Ericsson
2007-11-01 21:57       ` Pierre Habouzit
2007-11-02  0:04       ` Jakub Narebski
2007-11-02  2:23         ` Petr Baudis
2007-11-02  7:25           ` Jakub Narebski
2007-11-02  7:28             ` Jakub Narebski
2007-11-02  8:42               ` Pierre Habouzit
2007-11-02  6:06       ` Miles Bader
2007-11-02 15:13         ` Miles Bader
2007-11-02  9:38       ` Andreas Ericsson
2007-11-02 11:03         ` Johannes Schindelin
2007-11-01 21:41     ` Brian Downing
2007-11-01 21:46       ` Pierre Habouzit
2007-11-02 10:26       ` Wincent Colaiuta
2007-11-04  4:14     ` Junio C Hamano
2007-11-04  9:43       ` Jakub Narebski
2007-11-04 11:38       ` Pierre Habouzit
2007-11-08  8:08       ` Junio C Hamano
2007-11-08 20:44         ` Steffen Prohaska
2007-11-12  7:09         ` Junio C Hamano
2007-11-12 12:21           ` Johannes Schindelin
2007-11-12 12:26             ` Pierre Habouzit
2007-11-12 12:33               ` Johannes Schindelin
2007-11-12 14:53                 ` Pierre Habouzit
2007-11-12 14:27             ` Steffen Prohaska
2007-11-12 15:02               ` Johannes Schindelin
2007-11-15  0:18           ` Junio C Hamano
2007-11-15  0:49             ` Johannes Schindelin
2007-11-17 12:40             ` Jeff King
2007-11-17 20:51             ` Junio C Hamano
2007-11-17 23:42               ` Alex Riesen
2007-11-18  1:29                 ` Junio C Hamano
2007-11-21  9:23               ` Junio C Hamano
2007-11-23  8:48                 ` Junio C Hamano
2007-11-23 10:30                   ` Jeff King
2007-11-23 13:23                     ` Johannes Schindelin
2007-11-24 11:38                       ` Jeff King
2007-11-24 15:47                         ` Nicolas Pitre
2007-11-24 19:09                           ` Junio C Hamano
2007-11-25 21:51                             ` J. Bruce Fields
2007-11-25 22:42                               ` Junio C Hamano
2007-11-25 23:08                                 ` J. Bruce Fields
2007-11-26  4:02                               ` Nicolas Pitre
2007-11-26  4:15                                 ` J. Bruce Fields
2007-11-26  4:29                                   ` Nicolas Pitre
2007-11-26  4:45                                     ` J. Bruce Fields
2007-11-26  9:03                                     ` Jakub Narebski
2007-11-26  9:09                                       ` Andreas Ericsson
2007-11-26 19:11                                       ` Nicolas Pitre
2007-11-26 19:24                                         ` David Kastrup
2007-11-26 20:25                                           ` Nicolas Pitre
2007-11-26 20:40                                             ` Junio C Hamano
2007-11-26 20:45                                             ` David Kastrup
2007-11-26 21:09                                               ` Nicolas Pitre
2007-11-26 21:22                                                 ` David Kastrup
2007-11-26 22:02                                                   ` Nicolas Pitre
2007-11-26 23:05                                                     ` David Kastrup
2007-11-26 23:28                                                       ` Nicolas Pitre
2007-11-26 23:52                                                         ` David Kastrup
2007-11-27  4:05                                                           ` Nicolas Pitre
2007-12-05 21:58                                                 ` Miles Bader
2007-11-26 21:14                                             ` Jakub Narebski
2007-11-26 21:36                                               ` Johannes Schindelin
2007-11-26 21:47                                                 ` Nicolas Pitre
2007-11-26  6:15                                   ` Jan Hudec
2007-11-25 20:27                   ` Junio C Hamano
2007-11-25 20:36                     ` Jakub Narebski
2007-11-25 20:53                       ` J. Bruce Fields
2007-12-01  2:37                     ` Junio C Hamano
2007-12-01  8:55                       ` Eric Wong
2007-12-02 14:40                       ` Johannes Schindelin
2007-12-04  8:43                       ` Junio C Hamano
2007-12-04  9:40                         ` Johannes Sixt
2007-12-04 20:03                           ` Steffen Prohaska
2007-12-05 10:59                         ` Junio C Hamano
2007-12-05 11:08                           ` Jakub Narebski
2007-12-05 11:10                           ` Jakub Narebski
2007-12-06  4:43                             ` Jeff King
2007-12-06  4:32                           ` Jeff King
2007-12-07  9:51                           ` Junio C Hamano
2007-12-07 11:11                             ` Jakub Narebski
2007-12-07 19:29                               ` Junio C Hamano
2007-12-07 21:36                             ` Miklos Vajna
2007-12-09 10:27                             ` Junio C Hamano
2007-12-13  2:48                               ` Junio C Hamano
2007-12-13  3:22                                 ` Nicolas Pitre
2007-12-17  8:40                                 ` Junio C Hamano
2007-12-23  9:20                                   ` Junio C Hamano
2008-01-05 11:01                                     ` Junio C Hamano
2008-01-05 16:04                                       ` Johannes Schindelin
2007-12-04 16:18                       ` Brian Downing
2007-08-11  9:43 Junio C Hamano
2007-08-11 13:49 ` Jakub Narebski
2007-05-13 22:29 Junio C Hamano
2007-05-13 22:58 ` Julian Phillips
2007-05-13 23:33   ` Junio C Hamano
2007-05-14  0:38     ` Julian Phillips
2007-05-14  3:21       ` Daniel Barkalow
2007-05-17  0:21 ` Junio C Hamano
2007-05-17  2:07   ` Daniel Barkalow
2007-05-17  4:13     ` Junio C Hamano
2007-05-17  4:31       ` Daniel Barkalow
2007-05-19  5:48   ` Junio C Hamano
2007-05-23 21:46     ` Junio C Hamano
2007-05-24  6:15       ` Shawn O. Pearce
2007-05-29 10:11       ` Junio C Hamano
2007-06-02 21:09         ` Junio C Hamano
2007-06-03  0:20           ` Johannes Schindelin
2007-06-03  1:10           ` Shawn O. Pearce
2007-06-03 21:06           ` Nicolas Pitre
2007-06-03 21:20             ` Dana How
2007-06-07  2:07           ` Junio C Hamano
2007-06-13 20:29             ` Junio C Hamano
2007-06-13 22:44               ` Johannes Schindelin
2007-06-14  3:18                 ` Linus Torvalds
2007-06-18 17:20               ` Matthias Lederhofer
2007-06-21  7:20               ` Junio C Hamano
2007-06-21 17:16                 ` Linus Torvalds
2007-06-21 17:44                   ` Linus Torvalds
2007-06-25  9:43                 ` Junio C Hamano
2007-06-25 15:47                   ` Jeffrey C. Ollie
2007-06-26 13:35                   ` Matthias Lederhofer
2007-06-27  2:14                     ` Junio C Hamano
2007-06-28 20:23                       ` Matthias Lederhofer
2007-06-29  0:02                         ` Junio C Hamano
2007-07-02  0:16                   ` Junio C Hamano
2007-07-28  8:47                     ` Junio C Hamano
2007-05-09  8:47 Junio C Hamano
2007-04-09  8:17 Junio C Hamano
2007-04-16  1:53 ` Junio C Hamano
2007-04-19  0:04   ` Junio C Hamano
2007-04-19  0:23     ` Alex Riesen
2007-04-19  2:39     ` Nicolas Pitre
2007-04-19 10:07     ` Martin Waitz
2007-04-20 11:14       ` Junio C Hamano
2007-04-20 11:58         ` Alex Riesen
2007-04-20 19:31         ` Sam Ravnborg
2007-04-21  6:09           ` Martin Waitz
2007-04-21  7:11             ` Linus Torvalds
2007-04-22  6:24     ` Junio C Hamano
2007-04-23  7:04       ` Junio C Hamano
2007-04-23 16:16         ` Nicolas Pitre
2007-04-23 17:07         ` Alex Riesen
2007-04-23 17:15           ` Junio C Hamano
2007-04-23 21:16             ` Alex Riesen
2007-04-23 21:51               ` Junio C Hamano
2007-04-24 15:58                 ` Alex Riesen
2007-04-24 16:04                   ` Johannes Schindelin
2007-04-24 16:14                     ` Alex Riesen
2007-04-24 16:44                       ` Johannes Schindelin
2007-04-24 21:41                   ` Junio C Hamano
2007-04-25  8:11                     ` Alex Riesen
2007-04-23 17:25           ` Johannes Schindelin
2007-04-27  8:24         ` Junio C Hamano
2007-04-29 18:33           ` Junio C Hamano
2007-04-29 18:45             ` Linus Torvalds
2007-04-30 23:20               ` Junio C Hamano
2007-05-06  8:53             ` Junio C Hamano
2007-04-03  5:41 Junio C Hamano
2007-04-05  7:03 ` Junio C Hamano
2007-03-29  1:12 Junio C Hamano
2007-02-20  7:42 Junio C Hamano
2007-02-20  8:20 ` Eric Wong
2007-02-20  8:35   ` Junio C Hamano
2007-02-20  8:30 ` Alexander Litvinov
2007-02-23  8:51 ` Junio C Hamano
2007-02-23 14:48   ` Johannes Schindelin
2007-02-23 18:12     ` Junio C Hamano
2007-03-04 10:32   ` Junio C Hamano
2007-03-04 12:32     ` Johannes Schindelin
2007-03-04 22:26       ` Linus Torvalds
2007-03-04 23:07         ` Junio C Hamano
2007-03-04 12:40     ` Marco Costalba
2007-03-13  8:49     ` Junio C Hamano
2007-03-13 17:43       ` Matthias Lederhofer
2007-03-13 19:48         ` Junio C Hamano
2007-03-13 20:30           ` Matthias Lederhofer
2007-03-13 18:49       ` Julian Phillips
2007-03-13 19:43       ` Junio C Hamano
2007-03-13 23:14         ` Santi Béjar
2007-03-14 11:27           ` Junio C Hamano
2007-03-14 11:47             ` Santi Béjar
2007-03-25  8:46       ` Junio C Hamano
2007-03-25  9:59         ` Johannes Schindelin
2007-03-25 22:20           ` Junio C Hamano
2007-03-25 22:25             ` Johannes Schindelin
2007-03-26  6:40         ` Florian Weimer
2007-03-26  8:11           ` Junio C Hamano
2007-02-14 23:59 Junio C Hamano
2007-02-04  9:35 Junio C Hamano
2007-01-27  8:29 Junio C Hamano
2007-01-27 19:23 ` Nicolas Pitre
2007-01-27 22:00   ` Junio C Hamano
2007-01-28  2:51     ` Nicolas Pitre
2007-01-28  8:29       ` Junio C Hamano
2007-01-29  4:41       ` Nicolas Pitre
2007-01-12  2:43 Junio C Hamano
2007-01-10  8:23 Junio C Hamano
2007-01-11  0:48 ` Junio C Hamano
2007-01-11  3:50   ` Nicolas Pitre
2007-01-11  8:00     ` Shawn O. Pearce
2007-01-11  9:20       ` Andreas Ericsson
2007-01-11 14:59         ` Nicolas Pitre
2007-01-11 16:00           ` Andreas Ericsson
2007-01-12  0:49             ` Shawn O. Pearce
2007-01-12  6:15               ` Junio C Hamano
2007-01-12  6:26                 ` Shawn O. Pearce
2007-01-11  9:38       ` Junio C Hamano
2007-01-11 10:08         ` Shawn O. Pearce
2007-01-11 23:55           ` Junio C Hamano
2007-01-12  1:01             ` Shawn O. Pearce
2007-01-12 18:16           ` Jakub Narebski
2007-01-11  8:53   ` Johannes Schindelin
2007-01-11  9:47     ` Junio C Hamano
2007-01-11 10:04       ` Johannes Schindelin
2007-01-02  0:07 Junio C Hamano
2007-01-02 20:29 ` Johannes Schindelin
2007-01-04 18:22 ` Alex Riesen
2007-01-05  2:59   ` Shawn O. Pearce
2007-01-05  9:37     ` Alex Riesen
2007-01-07  7:44 ` Junio C Hamano
2006-12-31  8:07 Junio C Hamano
2006-12-31 13:38 ` Juergen Ruehle
2006-12-31 15:04 ` Johannes Schindelin
2007-01-01 21:18 ` Shawn O. Pearce
2006-12-29  5:44 Junio C Hamano
2006-12-29 17:55 ` Johannes Schindelin
2006-12-29 18:06   ` Jakub Narebski
2006-12-29 18:25   ` Junio C Hamano
2006-12-30  3:21   ` Nicolas Pitre
2006-12-30 11:22     ` Johannes Schindelin
2006-12-30 12:24       ` Raimund Bauer
2006-12-30 12:54         ` Johannes Schindelin
2006-12-26  3:25 Junio C Hamano
2006-12-26  4:21 ` Shawn Pearce
2006-12-26  4:59   ` Shawn Pearce
2006-12-26 11:20 ` Jakub Narebski
2006-12-26 19:52   ` Junio C Hamano
2006-12-22  9:37 Junio C Hamano
2006-12-22 11:11 ` Andy Parkins
2006-12-22 23:40   ` Junio C Hamano
2006-12-22 23:53     ` Johannes Schindelin
2006-12-23  0:12     ` Josef Weidendorfer
2006-12-23 16:38       ` Andy Parkins
2006-12-20 21:21 Junio C Hamano
2006-12-20 23:51 ` Eric Wong
2006-12-18  7:28 Junio C Hamano
2006-12-16 23:10 Junio C Hamano
2006-12-16 23:29 ` Jakub Narebski
2006-12-17  0:19   ` Junio C Hamano
2006-12-17 17:35   ` Yann Dirson
2006-12-17 23:38     ` Josef Weidendorfer
2006-12-17  4:35 ` Brian Gernhardt
2006-12-17  4:42   ` Shawn Pearce
2006-12-17 23:41 ` Andy Parkins
2006-12-18  8:09   ` Junio C Hamano
2006-12-18  9:17     ` Andy Parkins
2006-12-18  9:33       ` Shawn Pearce
2006-12-06 21:19 Junio C Hamano
2006-12-06 21:51 ` Jakub Narebski
2006-12-06 22:14   ` Junio C Hamano
2006-12-06 23:42 ` Johannes Schindelin
2006-12-07  9:03   ` Alexandre Julliard
2006-12-07 17:49   ` Andy Parkins

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LFD.0.999.0710021916080.3579@woody.linux-foundation.org \
    --to=torvalds@linux-foundation.org \
    --cc=dak@gnu.org \
    --cc=git@vger.kernel.org \
    --cc=peff@peff.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).