この質問には「行番号」が必要です。出力の行番号を気にしない場合は、この質問と回答を参照してください。
基本的に、変更されたコンテンツは表示せず、ファイル名と行番号だけを表示します。
使用する:
git diff --name-only
行って差分をとってください!
変更された行の数としての行番号または変更を含む実際の行番号? 変更された行数が必要な場合は、 を使用しますgit diff --stat
。これにより、次のような表示が得られます。
[me@somehost:~/newsite:master]> git diff --stat
whatever/views/gallery.py | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
変更自体の行番号を取得するオプションはありません。
注:変更されたファイルの名前 (変更された行の行番号なし)を探しているだけの場合は、こちらの別の回答を参照してください。
これには組み込みのオプションはありません (また、それほど便利だとも思いません) が、「外部差分」スクリプトを使用して、Git でこれを行うことができます。
これはかなりくだらないものです。出力を好きなように修正するのはあなた次第です。
#! /bin/sh
#
# run this with:
# GIT_EXTERNAL_DIFF=<name of script> git diff ...
#
case $# in
1) "unmerged file $@, can't show you line numbers"; exit 1;;
7) ;;
*) echo "I don't know what to do, help!"; exit 1;;
esac
path=$1
old_file=$2
old_hex=$3
old_mode=$4
new_file=$5
new_hex=$6
new_mode=$7
printf '%s: ' $path
diff $old_file $new_file | grep -v '^[<>-]'
「external diff」の詳細についてはGIT_EXTERNAL_DIFF
、Git のマニュアル ページの の説明を参照してください(700 行目あたり、かなり最後に近い)。