2011-01-15 6 views
4

私はGit cherryを使用しており、見つかったコミットについてもっと詳しく知りたいです。最初に実行するgit cherryとgit showとの組み合わせ

git cherry 
-- read the output 
git show sha-1 

チェリーのすべての結果についてコミット/ログ/差分を表示し、それらをページする方法はありますか?私はgitチェリーの結果を様々なものに配管しようとしましたが、動作しないものを見つけることはできません。

+0

'git cherry -v'を使ってあなたのコミットのタイトルを見ることができます。これはあなたが求める解決策ではないようですが、少なくともそれはうまくいく可能性があります。 – ulidtko

答えて

5

I「完全な」答えを持っていないが、これらの迅速なハックが役に立つことがあります。

$ git cherry master 
+ c3f6a19ac55170baa33fbbfb583ff3f0d4ad2710 
+ 8b73d6cb31d0a3fed328acd31d524a671238f51a 
$ git cherry -v master 
+ c3f6a19ac55170baa33fbbfb583ff3f0d4ad2710 Add "foo" command 
+ 8b73d6cb31d0a3fed328acd31d524a671238f51a Add "--bar" argument 
$ git cherry master | awk '{ system("git show $2"); }' 
[ interactive "git show" calls happen here ] 
$ 

残された問題は、あなたが「Gitのショー」のnのものかどうかを確認していない

  1. です実際に接頭辞は+です。
  2. "git show"の中から操作全体を中止する方法はありません。
  3. 表示されているコミット が1/100、1/2、または88/100であるかどうかを知るための方法はありません。
+1

'git log --no-walk $(git cherry | cut -d" "-f2)'で2と3を指定することができます。最初は、おそらく単に+または唯一の行を選択するだけで簡単に処理できます。 '| awk '/^+/{print $ 2}'のようになります。 – Cascabel

関連する問題