Gitで行が削除されたコミット番号を知る方法


Gitであるファイルから1行削除されていることは認識できたのですが、該当行がどのコミットで消えたのか知るコマンドはありますか？
コミットをバイナリーサーチで目Grepしていけばいづれたどりつけるのですが....




`git log`の`-S<string>`オプションでいかがでしょうか。

> -S<string>  
>  Look for differences that change the number of occurrences of the specified
> string (i.e.  
>  addition/deletion) in a file. Intended for the scripter's use.  
>  It is useful when you're looking for an exact block of code (like a
> struct), and want to know  
>  the history of that block since it first came into being: use the feature
> iteratively to feed  
>  the interesting block in the preimage back into -S, and keep going until
> you get the very  
>  first version of the block.

`git log -p -S'削除された文字列' ファイルパス` というようなコマンドで所望の動作となるかと思います。




`git log`の`-S<string>`オプションでいかがでしょうか。

> -S<string>  
>  Look for differences that change the number of occurrences of the specified
> string (i.e.  
>  addition/deletion) in a file. Intended for the scripter's use.  
>  It is useful when you're looking for an exact block of code (like a
> struct), and want to know  
>  the history of that block since it first came into being: use the feature
> iteratively to feed  
>  the interesting block in the preimage back into -S, and keep going until
> you get the very  
>  first version of the block.

`git log -p -S'削除された文字列' ファイルパス` というようなコマンドで所望の動作となるかと思います。

