いい感じにgit flowを使ってリリース時にタグを打つ
Contents
tl; dr
https://github.com/kotamat/dotfiles/commit/4c5f8e045752af3e61bbe63ada311a92d30fd161
使う機能
git flow
git describe
version_up.sh
- git config
git flow
http://danielkummer.github.io/git-flow-cheatsheet/index.ja_JP.html
↑これ見てね
って感じですが、GitLabとかでMergeRequestを作成していると、使わない機能もちらほら。。
その中でもgit flow release
に関しては、とても使い勝手がいいので、これだけのために使ってます。
release
git flowでやるreleaseのフローは
start [version]
でreleaseブランチを作成。- リリース用のゴニョゴニョする
finish [version]
でdevelopとかmasterにマージ、タグも付けちゃう
なのですが、finishのときに -p
オプションをつけると、3.で作成したものを全部pushしてくれます。(1. でもしリモートブランチ作成していたらそれも消してくれます)
tagせっかく作ったのにpushしわすれてたーとか発生しません。
しかしながらコード長いのでエイリアスを貼っときます。
|
|
git describe
最新のタグを表示するものです。
もし現状のコミットが最新のタグから乖離しているばあいは、[tag]-[tagから現在までにコミットした回数]-[ハッシュ値]
となってしまい、辛い感じになってしまいます。
基本的に上記のフローでリリースをしているとmasterブランチは最新のタグの状態になっているはずなので
git describe master
とやってあげれば直近のタグのみを取得することができます。
version_up.sh
http://sinsoku.hatenablog.com/entry/2014/06/01/195735 こちら参考にさせていただきました。
echo 1.1.0 | version_up.sh [上げたいバージョン]
ってやればバージョンアップしたバージョンを返してくれます。
バージョン番号はこのスクリプトだと[0-9\.]+
しか対応しないので、それ以外の文字列を削除するスクリプトを挟んであげます。
|
|
gitconfig
言わずとしれた、gitコマンドのエイリアス設定ファイル。(まぁほかもあるけどね)}
下記を登録しています。 ( https://github.com/yuroyoro/dotfiles を参考にさせていただいております)
|
|
全部まとめる
developブランチで
|
|
でリリースブランチ作成
リリースブランチで
|
|
でリリース終了
Author kotamat
LastMod 2016-11-01