From: Karthik R Date: Tue, 18 Aug 2009 23:54:40 +0000 (-0500) Subject: git-svn: Use GIT_SSH setting if SVN_SSH is not set X-Git-Tag: v1.6.5-rc0~60 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=f3a87d922a0333a56b5a912440aa324883019d81;p=git-core%2Fgit.git git-svn: Use GIT_SSH setting if SVN_SSH is not set If SVN_SSH is defined, it will be used. Else value in GIT_SSH is copied to SVN_SSH & then, only on Windows, the \s are escaped. On Windows, the shell-variables must be set as follows GIT_SSH="C:\Program Files\PuTTY\plink.exe" SVN_SSH="C:\\Program Files\\PuTTY\\plink.exe" See http://code.google.com/p/msysgit/issues/detail?id=305 [ew: fixed indentation to use tabs] Acked-by: Eric Wong Signed-off-by: Karthik Rajagopalan --- diff --git a/git-svn.perl b/git-svn.perl index 5515e3ea5..ce4fef9d3 100755 --- a/git-svn.perl +++ b/git-svn.perl @@ -21,6 +21,15 @@ $Git::SVN::default_ref_id = $ENV{GIT_SVN_ID} || 'git-svn'; $Git::SVN::Ra::_log_window_size = 100; $Git::SVN::_minimize_url = 'unset'; +if (! exists $ENV{SVN_SSH}) { + if (exists $ENV{GIT_SSH}) { + $ENV{SVN_SSH} = $ENV{GIT_SSH}; + if ($^O eq 'msys') { + $ENV{SVN_SSH} =~ s/\\/\\\\/g; + } + } +} + $Git::SVN::Log::TZ = $ENV{TZ}; $ENV{TZ} = 'UTC'; $| = 1; # unbuffer STDOUT