作成者のすべてのブランチからログを一度にgitするにはどうすればよいですか?


213

著者が行ったすべてのコミットのレポートを取得する必要があります。これまでのところ、次のコマンドをラップするスクリプトがあります。

git log --pretty=format:"%ad:%an:%d:%B" --date=short --reverse --all --since=2.months.ago --author=Petr

正常に動作します。ただし、現在のブランチのアクションのみを報告します。現在のブランチだけでなく、すべてのブランチからの作成者のコミットメッセージをログに記録するオプションはありますか?

言い換えれば、gitはリポジトリ内のすべてのコミットの(日時によって)逆ソートされたシーケンスを作成し、そのシーケンスからログ情報を抽出できますか?

解決済み:(以下のコメントからコピーされ、それ以外の場合は非表示)

問題は、2つのブランチで同時に動作する1つのリポジトリと2つのクローンがあることです。元のリポジトリに変更をプッシュしましたが、クローンされたリポジトリに変更をフェッチするのを忘れていました。このよう--allにして、クローンされたリポジトリに使用すると機能しないように見えました。


あなたはそのためのシェルスクリプトを書くことができると思います:最初の引数としてgit log受け入れcommittishます:(git log mybranchそしてあなたがブランチするすべてをリストしますgit branch)。
アレクサンダーパブロフ2012

@AlexanderPavlov:多分わからない。とはcommittish?1つのgitコマンドで情報を取得することは可能ですか?
2012

1
現在のブランチだけでなく、すべてのブランチからコミットを取得していますか?あなたが提供するので、これは予想されます--all。あなたのコマンドは正しいです
CharlesB '27 / 04/27

1
@AlexanderPavlov:git rev-list解析を気にしないでくださいgit log --all
CharlesB 2012

1
@CharlesB:それは私がについて考え--allたことでしたが、どうやら私にとってこのようには機能しません。ヘルプの説明がわかりません。refs/コマンドラインにのすべての参照がと表示されているかのように見せかけます<commit>
pepr 2012

回答:


186

--allすべてのブランチからのすべてのコミットを提供するスイッチを使用しているため、コマンドは正しいです。コメントの質問に答えるために、それは裸のリポジトリでも機能します。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.