From: Adam Roben Date: Wed, 23 Apr 2008 19:17:42 GMT Subject: Speed up git-svn fetch Message-ID: <1208978273-98146-1-git-send-email-aroben@apple.com> I first sent this patch series 6 months ago today [1], then resent it after some comments from Junio, Johannes, and Brian [2]. Here it is again, addressing further comments from Junio and Eric. The point of the series is to speed up git-svn fetch on Cygwin, where forking is quite slow. In my informal testing, this patch seems to speed things up by ~1.4-~1.7x. We accomplish this by having a single long-lived git-cat-file process and a single long-lived git-hash-object process for the duration of the git-svn invocation. This series is based on top of next. -Adam -- Documentation/git-cat-file.txt | 43 +++++++- Documentation/git-hash-object.txt | 5 +- builtin-cat-file.c | 153 ++++++++++++++++++++++++--- git-svn.perl | 42 ++++---- hash-object.c | 44 ++++++++- perl/Git.pm | 208 ++++++++++++++++++++++++++++++++++++- t/t1006-cat-file.sh | 181 ++++++++++++++++++++++++++++++++ t/t1007-hash-object.sh | 139 +++++++++++++++++++++++++ t/t5303-hash-object.sh | 35 ------ 9 files changed, 768 insertions(+), 82 deletions(-)