現在pre-commit
、mercurial プロジェクトにフックがあり、必要に応じてプロジェクトのバージョン番号を更新するオプションをユーザーに提供します (たとえば1.0
、1.0.1
または1.1
またはに2.0
)。これらのオプションのいずれかを選択すると、コミットが行われる前に、フックがプロジェクトのファイルの 1 つのバージョン番号を更新します。
を実行するhg commit
と、このフックが実行され、関連するファイルが新しいバージョン番号で更新され、コミットが実行されます。
それも呼び出すようにフックに追加したいと思いhg tag <new_verson_number>
ます。
ただし、これをpre-commit
フックに追加することはできません。コミットが呼び出される前にタグが追加され、タグが古いリビジョンになるためです。
hg tag
コマンドをcommit
フック (コミット後に実行)に追加して、一連のイベントが次のようになるようにしたいと思います。
hg commit -m "my commit message"
- ユーザーははいと言います。バージョン番号を変更したいです
- バージョン番号は関連ファイルで更新されます
- commit が発生する [ここまでは問題ありません]
- ユーザーがバージョン番号を変更した場合は、コミット フックを実行します
hg tag <new_version_number>
。
ここで、格納されているファイルから新しいバージョン番号を読み取って実行する commit フックを追加できますがhg tag <new_version_number>
、ユーザーがバージョン番号を変更しないことにした場合はどうなるでしょうか? その場合、タグを付けたくないですし、やみくもに実行すると、hg tag <new_version_number>
いらないタグが付いてしまいます。
それで、pre-commit
フックにいくつかの情報を残すようにフックに指示できる方法はありますかcommit
(タグを追加するかどうかのはい/いいえ)、commit
フックはこれを使用してタグを追加するかどうかを決定できますか?
乾杯。