質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.33%

git logコマンドで全ブランチのHEAD位置の情報のみを一覧表示したい

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 3,493

choitarou

score 112

いつもお世話になっております。

日頃、Sorcetreeを使って、git操作をしております。
今回、作業しているブランチが100以上に増えており、
SourceTreeの画面では、どのブランチがどの状態なのか比較・一覧表示
する際などに、HEAD位置を捜すのに苦労しております。

そこでgit logコマンドを用いて、以下のような事ができないかと
と考えておりますが、期待通りになかなかいかない為、
ご質問させて下さい。

<やりたい事>
一つのリポジトリ内の全てのブランチのHEADが指している場所のみの
ブランチ名、日付、コミットIDを一覧で表示したい。

※イメージとしては以下のように各ブランチのHEADが指す場所のみを
全てのブランチについて以下のように表示したいです。
※以下の情報が分かれば、フォーマットは問いません。

ブランチ名 最終コミット日 コミットID
origin/master     2017/XX/XX      1111111111111111111
origin/test001    2017/XX/XX      2222222222222222222
origin/test002    2017/XX/XX      3333333333333333333
origin/test003    2017/XX/XX      4444444444444444444
origin/test004    2017/XX/XX      5555555555555555555
origin/test005    2017/XX/XX      6666666666666666666

<やってみたこと>
git logの仕様を見ながら、以下のコマンドでそれっぽくは
表示されるのですが、肝心のコミットIDは短縮IDでしか
表示されず、| | | | のような表示も沢山表示されてしまいます。

※試したコマンドは以下となります。

git log --graph --oneline --decorate --all | grep origin | grep -v Merge

上記コマンドでも、なんとなく欲しい情報が
取得出来てはいるのですが、非常に出力結果が見辛く、
コマンドも妥当ではないと自分でも思っています。
他に良いコマンド入力方法などがございましたら、
恐れ入りますがご教授いただけないでしょうか。

<追記>
pretty=format:なども試してみたのですが、このオプションをつけると
どうも--decorateオプションが効かなくなってしまい、肝心の
origin/情報が出力されないため、上記のようにgrepで結果を
絞ってHEAD位置を抜き出そうとした次第です。

本当は、SourceTree上で上記のような表示できれば最高なのですが、色々と調べてみましたが、さすがにそれは出来なさそうですので、ターミナルを開いて上記コマンドでHEAD一覧を表示出来ればと思っています。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

checkベストアンサー

+2

git logコマンドではありませんが、以下で各ブランチのブランチ名、日付、コミットIDの一覧取得ができます。

git for-each-ref --format='%(refname)  %(authordate:short)  %(objectname)'

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/08/03 02:14

    ご回答頂きまして大変ありがとうございます。
    欲しかったコマンドはまさにこれです。タグの履歴も見れるとは最高です!
    こんなコマンドがあるとは知りませんでした。勉強しておきます。
    今回ご教授頂き大変助かりました、ベストアンサーとさせて頂きます。
    また本件については、無事解決いたしましたので、合わせてcloseとさせて頂きます。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.33%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る