我有一个maven项目结构,包括以下项目
中的模块结构
<modules>
<module>server</module>
<module>node</module>
<module>help</module>
<module>client</module>
</modules>
我定义了一个在服务器机器上运行的自动jar创建机制。它检查每个模块的代码,编译,构建等。在每个模块中,我定义了maven scm blug in以检查相关模块(服务器,客户端,节点)的最新代码。
例如,这是服务器端的pom.xml。
<scm>
<connection>scm:svn:https://ip/svn/repositoryName/trunk/projectName/server/src</connection>
<developerConnection>scm:svn:https://ip/svn/repositoryName/trunk/projectName/server/src</developerConnection>
</scm>
这是用于刷新的个人资料
<profile>
<id>environment-refresh-sources</id>
<activation>
<property>
<name>refreshSources</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.8.1</version>
<configuration>
<username>maven.user</username>
<password>password</password>
<checkoutDirectory>${basedir}/src</checkoutDirectory>
</configuration>
<executions>
<execution>
<id>CheckoutFromSVN</id>
<phase>initialize</phase>
<goals>
<goal>checkout</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
我们为每个模块配置了这个配置。只是scm连接正在改变。例如:这是针对客户的。
<connection>scm:svn:https://ip/svn/repositoryName/trunk/projectName/client/src</connection>
现在我正尝试从SVN迁移到GIT。但我无法将maven插件配置为以这种方式工作。
这是我对GIT的scm配置。
<scm>
<connection>scm:git:http://maven.user@ip/scm/sig/project.git</connection>
<developerConnection>scm:git:http://maven.user@ip/scm/sig/project.git</developerConnection>
</scm>
这是我的git新插件。我添加了分支部分。现在它结帐主分支包括服务器,客户端等模块。我如何以与GIT相同的方式工作。
<artifactId>maven-scm-plugin</artifactId>
<version>1.8.1</version>
<configuration>
<connectionType>developerConnection</connectionType>
<scmVersion>master</scmVersion>
<scmVersionType>branch</scmVersionType>
<username>maven.user</username>
<password>password</password>
<checkoutDirectory>${basedir}/src</checkoutDirectory>
</configuration>
<executions>
<execution>
<id>CheckoutFromGIT</id>
<phase>initialize</phase>
<goals>
<goal>checkout</goal>
</goals>
</execution>
</executions>