Subject: [PATCH] git-svn: Initialize SVN::Client with svn config instead of, auth for "git svn branch".

From: Monard Vong <[email-masked]>
Date: Fri, 18 Jul 2014 16:58:25 +0200

If a client certificate is required to connect to svn, "git svn branch"
always prompt the user for the certificate location and password,
even though those parameters are stored in svn file "server"
located in svn config dir (generally ~/.subversion).
On the opposite, "git svn info/init/dcommit" read the config dir
and do not prompt if the parameters are set.

This commit initializes for "git svn branch", the SVN::Client with the 
'config'
option instead of 'auth'. As decribed in the SVN documentation,
http://search.cpan.org/~mschwern/Alien-SVN-v1.7.17.1/src/subversion/subversion/bindings/swig/perl/native/Client.pm#METHODS
the SVN::Client will then read cached authentication options.

Signed-off-by: Monard Vong <[email-masked]>
---
  git-svn.perl | 4 +++-
  1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/git-svn.perl b/git-svn.perl
index 0a32372..1f41ee1 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -1161,7 +1161,9 @@ sub cmd_branch {
      ::_req_svn();

      my $ctx = SVN::Client->new(
-        auth    => Git::SVN::Ra::_auth_providers(),
+        config => SVN::Core::config_get_config(
+            $Git::SVN::Ra::config_dir
+        ),
          log_msg => sub {
              ${ $_[0] } = defined $_message
                  ? $_message
-- 
1.9.3