8

Git でタグのリストを取得できるかどうか (コマンドの結果によく似ています) を知りたいのですgit tagが、リストは特定のブランチのみに制限する必要があります。

これが可能である場合、誰でもこれがどのように行われるか説明できますか? おそらく、パターンマッチングの魔法でしょうか?

4

2 に答える 2

6

私はこれがあなたが望むことをすると思います:

 git log --pretty='%H' <branch> |
   xargs -n1 git describe --tags --exact-match 2>/dev/null

これはgit log、ブランチ内のコミットのリストを取得するために使用し、それらを渡してgit describeタグに対応するかどうかを確認します。

于 2012-05-15T14:48:04.580 に答える
5

新しいgitタグオプションを使用すると、別のアプローチが可能になります--merged(git 2.7+、2015年第4四半期)

git tag --merged <abranchname>

コミット 5242860、... (2015 年 9 月 10 日) によるKarthik Nayak ( KarthikNayak)を参照してください。
( 2015 年 10 月 5 日にコミット 8a54523Junio C Hamanogitsterによってマージされました)

tag.c: '--merged' および '--no-merged' オプションを実装

' ' API を使用して、' ' および ' ' オプションを ' 'ref-filterに実装してください。--merged--no-mergedtag.c

  • ' --merged' オプションを使用すると、ユーザーは名前付きコミットにマージされたタグのみを一覧表示できます。
  • ' --no-merged' オプションを使用すると、ユーザーは名前付きコミットにマージされていないタグのみを一覧表示できます。

オブジェクトが指定されていない場合は、オブジェクトと見なさHEADれます。

于 2015-10-07T12:02:09.083 に答える