2013-02-28 21 views
5

Mavenを使用してGitリポジトリをチェックアウトしたいと思います。 私たちの特定のユースケースでは、このGitリポジトリには、ビルドプロセスにインクルードする必要のあるファイルが含まれているため、これは意味があります。Gitリポジトリをチェックアウトし、Maven SCMを使用して特定のブランチに切り替える

プロジェクトの性質上、Gitリポジトリには異なるブランチがある可能性があります。だから、シンプル: SCM:gitの:[email protected]:これはマスターをチェックアウトしますようでmyproject/project.git

は動作しません。私はブランチ "3.0V3"のようにしたいと思います

どのブランチMavenがチェックアウトするかを指定する方法はありますか?

答えて

7

<scmVersion><scmVersionType>プロパティをmaven scm pluginとすると、これを実現できます。 、私はパラメータの完全なリストを右推測される

<scm> 
    <developerConnection>scm:git:url</developerConnection> 
    </scm> 
... 

<build> 
    <plugins> 
     ... 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-scm-plugin</artifactId> 
      <version>1.8.1</version> 
      <configuration> 
       <connectionType>developerConnection</connectionType> 
       <scmVersion>branch-name</scmVersion> 
       <scmVersionType>branch</scmVersionType> 
      </configuration> 
     </plugin> 
    </plugins> 
    ... 
    </build> 
    ... 
</project> 
+0

はここにある:私はちょうど変更する方法だろうhttp://maven.apache.org/scm/maven-scm-plugin/checkout-mojo.htmlチェックアウトディレクトリ名。 Mavenは常にローカル名としてtarget/checkoutを使用します。私はむしろ、ディレクトリとしてtarget/branch-nameが好きです。 "workingDirectory"パラメータは何の効果もないようです(まったく)。 –

+0

Ahhは心配しています:) "checkoutDirectory"はそのためのパラメータです。 http://maven.apache.org/scm/maven-scm-plugin/checkout-mojo.html#checkoutDirectory –

+0

pom.xmlに変更を加えるだけで、どのブランチがビルドされるかを変更する必要があるので、私はこの答えが気に入らない。 @SteveCohen。 –

関連する問題