4

私の質問はgit describe: inexplicable commit count and commit count Calculation in git-describeに関連していますが、どちらの質問ともまったく同じではありません。私は現在のプロジェクトの機能ブランチで開発を行っており、機能ブランチのgit describeバージョン番号を取得するために使用しており、最近のタグとコミット数を使用して、単調に増加すると思われるバージョン番号を作成しています。(たとえば、私のブランチは現在 v1.1.0 よりも 96 コミット進んでいるためv1.1.0-96-g1234567、ユーザーに報告するバージョンでは「バージョン 1.1.0.96」になっています。)

現在、マスター ブランチは最近 v1.2.0 でタグ付けされました。バージョン 1.2 で行われた変更を機能ブランチに組み込みたいと考えています。そこで、master をフィーチャー ブランチにマージしましgit describev1.2.0-1-g9876543。しかし、代わりに、私はを得v1.2.0-97-g9876543ました。

なぜこれが起こっているのか理解しています.Gitマニュアルに記載されているように、コミット数を生成するために生成git describeされgit log v1.2.0..9876543たコミットをカウントしています(97、私のブランチには96のコミットと1つのマージコミットがあったため)。しかし、私が本当に望んでいるのは、git log --ancestry-path v1.2.0..9876543代わりにの結果を使用することです。これはマージコミットのみを示しているため、v1.2.0-1-g9876543期待していた結果が得られます。

の代わりにgit describe使用するように の動作を変更する方法はありますか?git log --ancestry-path v1.2.0..9876543git log v1.2.0..9876543

そして、さらに重要なことは、現在の方法でそれを行うことの利点は何git describeですか? 期待していたバージョン番号付けスキームを生成する独自のツールを作成すると、何を失うのでしょうか?

ところで。ここに git リポジトリの履歴のスナップショットがあるので、今説明した内容を視覚的に確認できます。ブランチはfeature/cmdline私が取り組んでいるものです。(この履歴ビューは、WindowsのGit 拡張ツールからのものです。念のために説明しておきます。)

私の機能ブランチの簡単なスナップショット

4

0 に答える 0