jenkinsサーバとgitリポジトリサーバがある。 git pushをhookしてant buildしたかったので、
とした。
で、antすると実行可能jarを吐く。 jenkinsの「ビルド後の処理」とやらでjarをテストマシンにftpで投げるようにしてある。 そこで、jarが自身のバージョン番号を吐けるように番号を自動で埋め込みたい。
すげえ試行錯誤したが、こうした。antのreplaceタスクがキモ。 なお、git describe --always --tags HEAD の出力をバージョン番号としている。
public class MyVersion{
public static String myVersion="VERSION";
}
public class MyGoodApp{
public static void main(String[] args){
System.out.println(MyVersion.myVersion);
...
build.xml
<target name="git.revision" description="Store git revision in ${repository.version}" >
<exec executable="git" outputproperty="git.revision" failifexecutionfails="false" errorproperty="">
<arg value="describe"/>
<arg value="--tags"/>
<arg value="--always"/>
<arg value="HEAD"/>
</exec>
<echo message="${git.revision}"/>
<replace dir="src" token="VERSION" value="${git.revision}">
<include name="**/MyVersion.java" />
</replace>
</target>
ここまでで、「pushするとバージョン埋めたjarが勝手にテストマシンに乗っかる」 が実現。今日の天気でも昼飯でも何でも埋められるな。 しかしローカルでant buildしただけでMyVersion.javaの中身が変わってしまい、gitがそれに反応する。ローカルの変更は無視、破棄したい。バージョン管理システムなのにそんなこと出来んのか?
できた。何でもあるもんやなあ。
http://qiita.com/usamik26/items/56d0d3ba7a1300625f92
git update-index --assume-unchanged [ファイル名] この設定はリポジトリには残らない(git reset --hard)で消えるらしいが、まあ設定飛んでも絶対気づく。設定方法は出てこないかもしれないww
もっと王道な方法があると思うので教えてもらいたい…
masterをぶち切って途中のコミットから再度originにmasterを作れた。もうやりたくない。 originのmasterを消すという発想はなかった。ブランチ名もただのリファレンスだな。
記事
カテゴリ
Amazon | Android | apache | Arduino | AWS | bash | bluetooth | Books | CakePHP | CakePHP3 | CakePHP4 | Chrome | Chromebook | CodeIgniter | CSS | Docker | Eclipse | Emacs | etc | Firefox | Flask | Gadget | git | Gnome | Google | Heroku | HTML | hugo | Internet | iPhone | IS01 | IS03 | Java | JavaScript | json | Kotlin | Laravel | LINE | magento | mysql | nginx | nodejs | Oops | PC | Perl | php | Python | Qt | Ruby | ruby | Shell | ssh | tdiary | twitter | ubuntu | unix | VirtualBox | Web | Windows | windows | WindowsMobile | WX5 | YAML | zsh | ここか | そば | つくる | つり | できごと | アクアリウム | ギター | セキュリティ | プリンタ | ベース | ボクシング | ポエム | マネー | メシ | ラズパイ | 仕事 | 作家 | 壮絶 | 妄想 | 忘れる | 料理 | 旅 | 暑い | 痛い | 社会 | 自転車 | 豚 | 車 | 車輪 | 酒 | 野球 | 銭湯 | 音楽 | 食
全部 : / 今日 :
近頃
profile