this articleに記載されているように、Gitのワークフローはかなり一般的です。 ビルドサーバーでのビルドプランを,マスター、最後のリリースに作成したいと考えています。問題は、最後のリリースブランチには時間の異なる名前が付いていることです(* release - **)。Gitの最後のリリースのエイリアスブランチ
この問題を解決する方法は何ですか?ビルドサーバで使用できる永久的な名前の最後のリリースというエイリアスを作成することはできますか?他に何か?
this articleに記載されているように、Gitのワークフローはかなり一般的です。 ビルドサーバーでのビルドプランを,マスター、最後のリリースに作成したいと考えています。問題は、最後のリリースブランチには時間の異なる名前が付いていることです(* release - **)。Gitの最後のリリースのエイリアスブランチ
この問題を解決する方法は何ですか?ビルドサーバで使用できる永久的な名前の最後のリリースというエイリアスを作成することはできますか?他に何か?
git symbolic-ref
コマンドを使用して、他のリファレンスを指すリファレンスを作成することは可能です。
しかし、これは必ずしも意図した動作ではありません。What's the recommended usage of a Git symbolic reference?
あなたの他のオプションは、最新のrelease-
支店であなたのマスターのGitリポジトリポイントのHEAD
を持って、その後、ビルドサーバーのビルドHEAD
、develop
を持っているかもしれませんおよびmaster
。
3番目のオプションは、単にrelease-latest
ブランチを使用し、現在のrelease-
ブランチが更新されるたびにポスト受信フックを使用して更新することです。
リリース*タグ名に自然順序付けルールがある場合は、それらをリストして最後のものを選択できます。例えば
、これはこの方法を達成することができる。
git tag -l release-* | sort -V
Gitのタグの-lオプションは、供給されたパターンに一致するタグをリストすることです。あなたが最後のリリースを取得したい場合は
git tag -l release-* | sort -V | tail -1
:
ソート-Vは、あなたが最後のものを選択したい場合は、単に尾-1を追加
あなたのケースのために設計された特殊な数値ソートオプションですSubversion(例えば1.xリリース)はかなり簡単です:
git tag -l release-1.* | sort -V | tail -1