コミットのすべてのファイルについては、ステータス修飾子--name-status
と、追加された行と削除された行の量(--numstat
)の両方を提供したいと思います。git logを使うと、あるコマンドで--name-statusと--numstatを得る方法はありますか?
> git log --pretty=format:"%aN %ct" --reverse --name-status --encoding=UTF-8 --no-renames
John Doe 1234567489
M foo/bar/foo.bar
A bar/hello.txt
と::
> git log --pretty=format: --reverse --numstat --encoding=UTF-8 --no-renames
9 5 foo/bar/foo.bar
21 0 bar/hello.txt
私にそれらの出力を与えるフラグの単一のコマンド/組み合わせ組み合わせがあり、私は以下の持っていると言いますか?この線に沿って何か:
John Doe 1234567489
M 9 5 foo/bar/foo.bar
A 21 0 bar/hello.txt
私はいくつかのawk
魔法でそれらを組み合わせることが可能である知っているが、私は、複数の大規模なリポジトリやパフォーマンスの問題でこれを行うだろうと見て、単一のgit logコマンドが好ましいだろう。
これは、残念ながらまだ解析中にいくつかの余分な労力を必要とするファイルごとに2本のラインを、葉私は、1行で情報を入手することで回避することを望んでいました。私はあなたが '--name-status'を他のフラグよりも優先させて、それが事実上不可能になっていると思います。 –