Hmm.. Try harder to find the common commits in git protocol?

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Linus Torvalds
Date: Monday, April 28, 2008 - 9:41 am

So we've had a huge number of merges in this last kernel merge window, and 
as a result it seems that a number of the pulls I do get way too many 
objects, because the git protocol doesn't try hard enough to find the 
minimal set of common commits. 

Example from today:

	remote: Counting objects: 50084, done.
	remote: Compressing objects: 100% (6489/6489), done.
	remote: Total 43343 (delta 37381), reused 42777 (delta 36836)
	Receiving objects: 100% (43343/43343), 8.85 MiB | 144 KiB/s, done.
	Resolving deltas: 100% (37381/37381), completed with 5097 local objects.
	Merge made by recursive.
	 kernel/hrtimer.c |   15 +++++++++++++--
	 1 files changed, 13 insertions(+), 2 deletions(-)

	git rev-list --objects ORIG_HEAD.. | wc -l
	7

ie it downloaded 43343 objects totalling almost 9MB of data, even though 
it actually only needed seven objects. In fact, I guess three of the seven 
new objects were due to the merge (commit, top-level tree, and 'kernel' 
tree), so only four objects actually came from the source repository.

I haven't thought about the why's so much (because I'm busy merging), but 
I thought I'd mention this in case somebody else has already looked at it.

		Linus
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Hmm.. Try harder to find the common commits in git protocol?, Linus Torvalds, (Mon Apr 28, 9:41 am)