私はgitにすべてのタグを完全な注釈またはコミットメッセージと共にリストしてもらいたいのです。このようなものは近いです:
git tag -n5
タグメッセージの最初の5行までしか表示されないことを除けば、これは私が望んでいることとまったく同じです。
私は非常に大きな数を使うことができると思います。私がここで使うことができる最も高い数は何ですか?すべてのコンピュータで同じですか?
UPDATE:これについて考える時間はずっとありましたが、今ではメッセージ全体が異常に長い場合は必ずしも表示したくないと思います。このようなものは私にとってはうまくいくようです。
git tag -n99
タグメッセージが本当に99行より長い場合は、全部見たくはありません。しかしGitは非常に複雑で柔軟性があります。どのような場合にこれが最善の解決策にならないでしょうか。投稿されたソリューションの多くが-l
オプションを使用していることに気付きましたが、検索するパターンを指定するためだけのものではありませんか?
git tag -n99
短くて甘い。注釈/コミットメッセージから最大99行まで表示されます。これがgitタグの公式ドキュメントへのリンクです。 http://git-scm.com/docs/git-tag
これを試してみましょうそれはすべてのタグのためのアノテーションと9行のメッセージと共にすべてのタグをリストします:
git tag -n9
また使用することができます
git tag -l -n9
特定のタグを一覧表示する場合
git tag -l -n9 v3.*
(例えば、上記のコマンドは "v3"で始まるタグのみを表示します。)
-l、 - list指定したパターン(またはパターンが指定されていない場合はall)に一致する名前のタグを一覧表示します。引数なしで "git tag"を実行すると、すべてのタグも一覧表示されます。パターンはシェルのワイルドカードです(つまり、fnmatch(3)を使用して照合されます)。複数のパターンを指定できます。いずれかが一致すると、タグが表示されます。
Mark Longair's answer (git show
を使用)は、質問で望まれるものに近いです。ただし、そのタグの指すコミット、およびそのコミットの完全パッチも含まれます。コミットはタグとは無関係である可能性があるため(タグがキャプチャしようとしているコミットは1つだけです)、これは望ましくない場合があります。私は以下が少し良いと思います:
for t in `git tag -l`; do git cat-file -p `git rev-parse $t`; done
きれいには程遠いですが、次のようなことをするスクリプトやエイリアスを作成することができます。
for c in $(git for-each-ref refs/tags/ --format='%(refname)'); do echo $c; git show --quiet "$c"; echo; done
最後のタグメッセージのみ
git cat-file -p $(git rev-parse $(git tag -l | tail -n1)) | tail -n +6
私はコマンドラインでこれを行うことを好みますが、Webインターフェースを気にせずGitHubを使用する場合は、https://github.com/user/repo/tags
にアクセスして各タグの横にある「...」をクリックして注釈を表示できます。