概要
よく忘れるのでここにメモメモ。。
ちょっとしたアプリケーションを作っていてバージョン番号とかリビジョンをヘルプに出力したい場合って結構あります。
git を使っている場合は、一意なビルド番号とかをサクっと生成できるので便利ですね。
ビルド番号
git describe --tags
を使います。
サンプル
gitpod /workspace/try-golang $ git describe --tags v0.2.3-70-gd31eddd
出力内容ですが、v0.2.3
の部分が最新のタグ、70
の部分がそのタグから現在の最新コミットまでのコミット数、gd31eddd
となっているものが、最新コミットのSHA1ハッシュの簡略版です。
基本、これを使えばこのバージョンが一意に決まるのでよく使っています。
最新タグ
最新タグだけ欲しい場合は、git describe --tags --abbrev=0
を使います。
サンプル
gitpod /workspace/try-golang $ git describe --tags --abbrev=0 v0.2.3
最新コミット
最新コミットが欲しい場合は、 git rev-list -1 HEAD
を使うか、git rev-parse HEAD
を使います。
サンプル
gitpod /workspace/try-golang $ git rev-list -1 HEAD
d31eddd83a9e73e44972f7bebc7940ba5512bb96
gitpod /workspace/try-golang $ git rev-parse HEAD
d31eddd83a9e73e44972f7bebc7940ba5512bb96
Pro Git book はやっぱり素晴らしい
今回あげたコマンドは、Pro Git book にも載っています。これが無償で読めるって素晴らしいですね。
なんだかんだいって、最終的にはここに戻ってきてますいつもw
参考情報
過去の記事については、以下のページからご参照下さい。
- いろいろ備忘録日記まとめ
サンプルコードは、以下の場所で公開しています。
- いろいろ備忘録日記サンプルソース置き場