2017-11-09 5 views
1

タグが子供か親かどうかを調べる方法はありますか?gitタグが親子かどうか確認してください

は以下のGitの歴史を想像してみて:

a467066 - (tag: child-2, master) feature 4 
2028351 - (tag: child-1) feature 3 
a7a6364 - (HEAD) feature 2 
3772445 - (tag: parent-1) feature 1 
5a01bfa - (tag: parent-2) initial commit 

HEADは真ん中のチェンジ(「機能2」)であると私はタグが現在のチェンジセットに任意の子であるかどうかを知りたいです。だからchild-1child-2の場合を入力し、parent-1parent-2、またはのいずれかをチェックすると、falseが返されます。

+0

これはHEADが含まれているすべてのタグの一覧が表示されます、gitのタグがHEAD'を--contains '試していますコミット。 –

答えて

1
  1. git tag --contains HEAD

    それはHEAD

  2. git merge-base <tag> <HEAD>

    の子孫であるすべてのタグを一覧表示し、それはHEADのコミットを返す場合、tagHEADの子孫です。

  3. git merge-base --is-ancestor <tag> <HEAD>

    tagHEADの祖先である場合は、コマンドの終了ステータスは0

関連する問題