2011-09-10 3 views
2
$ git tag hello 

$ git describe --tags 
hello 

... work work ... 
$ git commit -m "work stuff" 

$ git describe --tags 
hello-1-48281 

余分なものは何ですか? SHA1のようには見えません...ちょうど "こんにちは"を得ることは可能ですか?ローカルのgitタグが「hello」から「hello-1-48281」に移動した理由

+0

現在のHEADは「hello」というタグではありません。どうしてあなたに嘘をついて、それがあなたに伝えたいのですか? –

答えて

8

余分なものは何ですか? SHA1のようには見えません...ちょうど "こんにちは"を得ることは可能ですか?

おそらくあなたはそれがないと思う何をしません "gitのは説明":

DESCRIPTION 
    The command finds the most recent tag that is reachable from a commit. 
    If the tag points to the commit, then only the tag is shown. Otherwise, 
    it suffixes the tag name with the number of additional commits on top 
    of the tagged object and the abbreviated object name of the most recent 
    commit. 

ので、 "ハロー-1から48281" のあなたの例では、Gitは、言っていますhelloタグは、現在のオブジェクトから1コミットで区切られています。これは48281です。

代わりにタグのリストが必要な場合は、git tag -lとしてください。

+0

これは完璧な意味を持っています。私はもちろん、私を別の状態に置くことを理解していないため、私の睡眠不足を責めています。しかし、私は現在のタグをbashプロンプトに入れたいと思っています。私がタグから分かれば、そこにタグの先行ラベルを付けたくありません。あなたがどんなタグにも正確にいれば、返るgitコマンドはありますか? –

+0

man 'を持っているはずです、 'git describe --tags --exact'は私が望むものです。 –

1

git describeのマニュアルページを参照してください。

最初の数字は、(現在の例では)現在のコミットとタグの間のコミット数です。

2番目の値は、gと現在のコミットの短縮形SH1である必要があります。 gなしでその番号をどうやって取得したかわからない、私はここでそれを再現することはできません。

関連する問題