maven scm插件 配置git
http://maven.apache.org/scm/maven-scm-plugin/
以下是maven scm 配置git的方法;在你pom里添加以下配置:
- <scm>
- #git项目地址可以用SSH 也可以用 HTTPS的
- <connection>scm:git:http://10.69.205.31:8886/mazhenbang/maven_scm.git</connection> #git项目地址可以用SSH 也可以用 HTTPS的
- <developerConnection>scm:git:http://10.69.205.31:8886/mazhenbang/maven_scm.git</developerConnection>
- #git项目浏览器里的地址
- <url>http://10.69.205.31:8886/mazhenbang/maven_scm/tree/master</url>
- </scm>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-release-plugin</artifactId>
- <version>2.0-beta-7</version>
- <configuration>
- <providerImplementations>
- <git>jgit</git>
- </providerImplementations>
- <username>xxxusername</username>
- <password>xxxxpasswrod</password>
- <tagBase>${project.artifactId}-${project.version}</tagBase>
- <goals>-f pom.xml deploy</goals>
- </configuration>
- <dependencies>
- <dependency>
- <groupId>org.apache.maven.scm</groupId>
- <artifactId>maven-scm-provider-jgit</artifactId>
- <version>1.9.5</version>
- </dependency>
- </dependencies>
- </plugin>
- </plugins>
- </build>
不要忘记加distributionManagement 否则发布不上去。
实战实战实战
1.mvn release:prepare
这条命令主要做的是:a.把你项目打一个release版本
b.在git的tag中打一个tag
c.自动升级SNAPSHOT 并提交更新后的pom文件到git
我项目现在version是0.0.3-SNAPSHOT
进入项目根目录,执行 mvn release:prepare (注:一定要把本地代码都提交上去,否则会提示你“Cannot prepare the release because you have local modifications”)
首先他会提示你要打的release version是什么,可手动输入,也可按他默认的(默认version是项目中SNAPSHOT的版本打成release)
然后它提示你要在git 上打成tag的名称,按他默认的来就可以,因为上面pom里配置tagBase了
最后他会把你项目里的version向上升一版本并自动提交pom修改后的代码到你的git上,原来是0.0.3-SNAPSHOT ,当你执行完这条命令,你去git仓库看一下pom里的version,已经神奇的变成0.0.3-SNAPSHOT。并且在会给你生成一个tag。
2.mvn release:perform
这条命令主要做的是:
a.去git的tag上拿代码
b.用tag上的代码,打一个release版的包
c.deploy上你的maven私服
然后去你的nexus上看一下,releases中已经有你项目的包了。