亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Maven插件之git-commit-id-plugin

系統(tǒng) 2659 0

SCM使用GIT而非SVN時(shí),使用Maven發(fā)布,總是會(huì)出一些莫名其妙的問題,google查找原因,無意中看到了這個(gè)插件;

對(duì)于該插件,到目前為止,文檔比較少,尤其是中文的文檔;全部的信息都包含在項(xiàng)目說明文件中了;項(xiàng)目地址:

https://github.com/ktoso/maven-git-commit-id-plugin

對(duì)于英語不好的我來說,看英語很痛苦,為了不讓自己在同一個(gè)地方痛苦兩次,嘗試在此記錄下該插件的使用及其配置, 方便自己,也方便其他英語不好的同仁們;如有歧義,請(qǐng)以原版文檔為主.

?

    <plugin>

	<groupId>pl.project13.maven</groupId>

	<artifactId>git-commit-id-plugin</artifactId>

	<version>2.1.5</version>

	<executions>

		<execution>

			<goals>

				<goal>revision</goal>

			</goals>

		</execution>

	</executions>

	<configuration>

		<!--日期格式;默認(rèn)值:dd.MM.yyyy '@' HH:mm:ss z;-->

		<dateFormat>yyyyMMddHHmmss</dateFormat>

		<!--,構(gòu)建過程中,是否打印詳細(xì)信息;默認(rèn)值:false;-->

		<verbose>true</verbose>

		<!-- ".git"文件路徑;默認(rèn)值:${project.basedir}/.git; -->

		<dotGitDirectory>${project.basedir}/.git</dotGitDirectory>

		<!--若項(xiàng)目打包類型為pom,是否取消構(gòu)建;默認(rèn)值:true;-->

		<skipPoms>false</skipPoms>

		<!--是否生成"git.properties"文件;默認(rèn)值:false;-->

		<generateGitPropertiesFile>true</generateGitPropertiesFile>

		<!--指定"git.properties"文件的存放路徑(相對(duì)于${project.basedir}的一個(gè)路徑);-->

		<generateGitPropertiesFilename>git.properties</generateGitPropertiesFilename>

		<!--".git"文件夾未找到時(shí),構(gòu)建是否失敗;若設(shè)置true,則構(gòu)建失敗;若設(shè)置false,則跳過執(zhí)行該目標(biāo);默認(rèn)值:true;-->

		<failOnNoGitDirectory>true</failOnNoGitDirectory>



		<!--git描述配置,可選;由JGit提供實(shí)現(xiàn);-->

		<gitDescribe>

			<!--是否生成描述屬性-->

			<skip>false</skip>

			<!--提交操作未發(fā)現(xiàn)tag時(shí),僅打印提交操作ID,-->

			<always>false</always>

			<!--提交操作ID顯式字符長度,最大值為:40;默認(rèn)值:7;

				0代表特殊意義;后面有解釋; 

			-->

			<abbrev>7</abbrev>

			<!--構(gòu)建觸發(fā)時(shí),代碼有修改時(shí)(即"dirty state"),添加指定后綴;默認(rèn)值:"";-->

			<dirty>-dirty</dirty>

			<!--always print using the "tag-commits_from_tag-g_commit_id-maybe_dirty" format, even if "on" a tag.

				The distance will always be 0 if you're "on" the tag.

			-->

			<forceLongFormat>false</forceLongFormat>

		</gitDescribe>

	</configuration>

</plugin>
  

以上代碼給出了插件的使用及屬性使用,中文內(nèi)容則是根據(jù)自己的理解翻譯; 以下是從項(xiàng)目文檔中翻譯過來的屬性解釋:

?

configuration options depth

dotGitDirectory -(默認(rèn)值:${project.basedir}/.git)".git"文件夾路徑;在多模塊項(xiàng)目中,可以使用以下寫法得到上一級(jí)目錄中的".git"文件夾:${project.basedir}/../.git;

prefix -(默認(rèn)值:git)公開屬性的命名空間,保持默認(rèn),無須指定;
dateFormat -(默認(rèn)值:dd.MM.yyyy '@' HH:mm:ss z)是SimpleDateFormat類使用的 格式化 標(biāo)準(zhǔn);用于格式化" git.build.time "和" git.commit.time ";
verbose -(默認(rèn)值:false)如果設(shè)置為true,則會(huì)打印出獲取的所有屬性信息;
generateGitPropertiesFile -(默認(rèn)值:false)強(qiáng)制生成" git.properties "文件;

generateGitPropertiesFilename -(默認(rèn)值:src/main/resources/git.properties)指定生成的屬性文件的路徑,相對(duì)于${project.basedir}來說;
skipPoms -(默認(rèn)值:true)如果是pom類型項(xiàng)目,是否跳過執(zhí)行;
failOnNoGitDirectory -(默認(rèn)值:true) ".git"文件夾未找到時(shí),構(gòu)建是否失敗;若設(shè)置true,則構(gòu)建失敗;若設(shè)置false,則跳過執(zhí)行該目標(biāo);

gitDescribe :Worth pointing out is, that git-commit-id tries to be 1-to-1 compatible with git's plain output, even though the describe functionality has been reimplemented manually using JGit (you don't have to have a git executable to use the plugin). So if you're familiar with git-describe, you probably can skip this section, as it just explains the same options that git provides.

abbrev -(默認(rèn)值:7)打印的object id的長度;

典型輸出的例子:v2.1.0-1-gf5cd254,where -1- means the number of commits away from the mentioned tag;" -gf5cd254 "部分表示此次提交操作的ID的前7位字符( f5cd254 ),請(qǐng)注意,包含前綴"g"是為了說明它是一個(gè)commit id,它不是object id的一部分,這是git的一個(gè)默認(rèn)行為;

abbrev=0 是一個(gè)特殊情況.其隱藏了從"tag"到"object id"的部分,具體請(qǐng)參考項(xiàng)目文檔;
dirty -(默認(rèn)值:"")當(dāng)有代碼未提交時(shí),執(zhí)行此次操作,信息輸出時(shí)添加后綴;"-"符號(hào)不會(huì)自動(dòng)添加,建議設(shè)定該屬性時(shí)添加"-"前綴,和commit ID區(qū)分開來;
tags -(默認(rèn)值:false);
long -(默認(rèn)值:false)如果當(dāng)前提交是tag,git-describe默認(rèn)只會(huì)輸出tag名稱;使用該屬性可以強(qiáng)制格式化為指定格式.例如:tagname-0-gc0ffebabe,注意此處 -0-,如果不使用 forceLongFormat 模式,則輸出為:tagname;
always -(默認(rèn)值:true)如果不能發(fā)現(xiàn)tag,則此次提交會(huì)打印object id;

skip -(默認(rèn)值:false)若沒有在構(gòu)建中使用"git-describe"信息,you can opt to be calculate it;


本文只是簡(jiǎn)單的介紹了插件的基本配置,更多深入的用法,請(qǐng)查看項(xiàng)目代碼及使用文檔;

?

Maven插件之git-commit-id-plugin


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!?。?/p>

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 久草手机视频在线 | 免费一级大毛片a一观看不卡 | 亚洲精品免费视频 | 亚洲成年| 黄色片网站视频 | 久久国产欧美日韩精品 | 99色视频在线观看 | 免费精品视频 | 欧美视频 亚洲视频 | 亚洲欧洲精品视频 | 在线观看 一区二区 麻豆 | 色视频亚洲| 国产精品久久久久久久久 | 久草中文视频 | 福利在线免费视频 | 国产成人精品永久免费视频 | 99久久精品费精品国产一区二区 | 男女拍拍视频黄的全免费 | 亚洲色欧美 | 未成人做爰视频www 我爱52avαv永久网站 | 日本我不卡 | 久久久精品视频在线观看 | 国产精品免费一区二区三区 | 国产午夜精品一区二区三区嫩草 | 一级特级欧美a毛片免费 | 91精品久久久久久久久久小网站 | 国产 在线 | 日韩 | 天天干天天操 | 欧美一二区视频 | 久久久久国产免费 | 欧洲老妇bbbbbxxxxx | 日日摸天天摸狠狠摸摸 | 伊人手机在线视频 | 日本一级一片免在线观看 | 99久久国产综合精麻豆 | 久久99国产乱子伦精品免费 | 四虎永久免费地址在线网站 | 国产成人福利在线 | 久久精品只有这里有 | 欧美午夜在线播放 | 奇米影视77 |