X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=lib%2FApp%2FRgit%2FRepository.pm;h=ec96328a57882cc5e8f076b2b4ee2444141df69e;hb=313864be3ae1c0d2120b434ff18150c53f8b352e;hp=43c6d5b33cf1caa7c2d867ba8c810b311f324fca;hpb=b70184fed49dd0135e68ab3491475f50521992f3;p=perl%2Fmodules%2Frgit.git diff --git a/lib/App/Rgit/Repository.pm b/lib/App/Rgit/Repository.pm index 43c6d5b..ec96328 100644 --- a/lib/App/Rgit/Repository.pm +++ b/lib/App/Rgit/Repository.pm @@ -45,7 +45,7 @@ sub new { $dir = cwd unless defined $dir; my ($repo, $bare, $name, $work); if ($args{fake}) { - $work = $dir; + $repo = $work = $dir; } else { my @tries = ($dir); my @chunks = splitdir $dir; @@ -129,10 +129,14 @@ sub run { ); s/\^([\^ngGwWbBR])/$escapes{$1}->()/eg for @args; } - system { $conf->git } $conf->git, @args; + { + local $ENV{GIT_DIR} = $self->repo if exists $ENV{GIT_DIR}; + local $ENV{GIT_EXEC_PATH} = $conf->git if exists $ENV{GIT_EXEC_PATH}; + system { $conf->git } $conf->git, @args; + } if ($? == -1) { warn "Failed to execute git: $!\n"; - return -1, -1; + return; } my $ret; $ret = WEXITSTATUS($?) if WIFEXITED($?);