[SCM-809] Make git executable name a config option
Patch contributed by Thomas Meyer, reviewed and slightly adjusted by Robert Scholte
pushed version for mdo to 1.1.0
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/pom.xml b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/pom.xml
index d1b4357..c428fcd 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/pom.xml
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/pom.xml
@@ -49,7 +49,7 @@
</execution>
</executions>
<configuration>
- <version>1.0.0</version>
+ <version>1.1.0</version>
<useJava5>true</useJava5>
<models>
<model>src/main/mdo/git-settings.mdo</model>
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/GitCommandUtils.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/GitCommandUtils.java
index c56f32e..8c0db89 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/GitCommandUtils.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/GitCommandUtils.java
@@ -50,7 +50,7 @@
Commandline cl = new Commandline();
- cl.setExecutable( "git" );
+ cl.setExecutable( settings.getGitCommand() );
cl.setWorkingDirectory( fileSet.getBasedir().getAbsolutePath() );
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/mdo/git-settings.mdo b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/mdo/git-settings.mdo
index 13150a8..2ce0252 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/mdo/git-settings.mdo
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/mdo/git-settings.mdo
@@ -58,6 +58,15 @@
]]></description>
</field>
<field>
+ <name>gitCommand</name>
+ <version>1.1.0+</version>
+ <type>String</type>
+ <defaultValue>git</defaultValue>
+ <description><![CDATA[
+ The actual name of the git executable
+ ]]></description>
+ </field>
+ <field>
<name>commitNoVerify</name>
<version>1.0.0+</version>
<type>boolean</type>
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/GitCommandLineUtils.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/GitCommandLineUtils.java
index 2599273..4f23195 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/GitCommandLineUtils.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/GitCommandLineUtils.java
@@ -21,6 +21,8 @@
import org.apache.maven.scm.ScmException;
import org.apache.maven.scm.log.ScmLogger;
+import org.apache.maven.scm.provider.git.util.GitUtil;
+import org.apache.maven.scm.providers.gitlib.settings.Settings;
import org.codehaus.plexus.util.cli.CommandLineException;
import org.codehaus.plexus.util.cli.CommandLineUtils;
import org.codehaus.plexus.util.cli.Commandline;
@@ -116,7 +118,9 @@
private static void composeCommand( File workingDirectory, String command, Commandline cl )
{
- cl.setExecutable( "git" );
+ Settings settings = GitUtil.getSettings();
+
+ cl.setExecutable( settings.getGitCommand() );
cl.createArg().setValue( command );
diff --git a/pom.xml b/pom.xml
index cbe6109..93a031d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -476,6 +476,9 @@
<contributor>
<name>Richard DiCroce</name>
</contributor>
+ <contributor>
+ <name>Thomas Meyer</name>
+ </contributor>
</contributors>
<profiles>