From: Alejandro R. Sedeño Date: Mon, 04 Apr 2011 19:09:08 GMT Subject: [PATCH 2/2] git-svn: Cache results of running the executable "git config" Message-ID: <1301944148-7950-3-git-send-email-asedeno@mit.edu> In-Reply-To: <1301944148-7950-1-git-send-email-asedeno@mit.edu> From: James Y Knight Running programs is not cheap! Signed-off-by: James Y Knight Signed-off-by: Alejandro R. Sedeño --- git-svn.perl | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/git-svn.perl b/git-svn.perl index aa41896..e47e04c 100755 --- a/git-svn.perl +++ b/git-svn.perl @@ -59,6 +59,7 @@ use File::Find; use Getopt::Long qw/:config gnu_getopt no_ignore_case auto_abbrev/; use IPC::Open3; use Git; +use Memoize; # core since 5.8.0, Jul 2002 BEGIN { # import functions from Git into our packages, en masse @@ -72,6 +73,8 @@ BEGIN { *{"${package}::$_"} = \&{"Git::$_"}; } } + Memoize::memoize 'Git::config'; + Memoize::memoize 'Git::config_bool'; } my ($SVN); @@ -3199,6 +3202,8 @@ sub has_no_changes { Memoize::unmemoize 'check_cherry_pick'; Memoize::unmemoize 'has_no_changes'; } + + Memoize::memoize 'Git::SVN::repos_root'; } END { -- 1.7.4.2.1.gd6f1f