私の質問はかなり単純ですが、答えを見つけることができませんでした。
git diff
の各行から先頭のプラス/マイナス記号を削除したいのですが。なぜこれを行いたいのかを尋ねる前に、私の理由の概要を説明しましょう。
git
の外)これを行うための設定オプションはありますか?そうでない場合、どのようにすれば、diff less
スタイルでページングできるようになりますか?
どんな洞察もいただければ幸いです。
1つのオプションは、sed
を使用して、色を保持しながら、diffから不要な文字を削除することです。
git diff --color | sed -r "s/^([^-+ ]*)[-+ ]/\\1/" | less -r
(先頭のスペースもdiffによって発行されるため、削除する必要があることに注意してください。)
私が見た単純な方法はこれです..覚えやすい(テキスト形式が変更されるため、コードの変更を知る必要があります)
git diff --color-words
これをデフォルトにする方法は次のとおりです
Linuxを使用している場合は、次のコマンドを〜/ .bashrcファイルに追加します
その後、別のコマンドとしてgitdiffspaceなしで使用できます。
alias gitdiff='git diff --color-words'
更新:
git configを介してエイリアスを直接設定するには(〜/ .bashrcの助けなしで)
https://git-scm.com/book/en/v2/Git-Basics-Git-Aliases
@ dylankbに感謝します。
例:コマンドgit config --global alias.ci commit
;を入力した場合
その後、git ci
を使用して、残りの人生をコミットできます!!
ハッピーギッティング:)
Macユーザーの場合は、次のコマンドを使用する必要があります。
git diff --color | sed -E "s/^([^-+ ]*)[-+ ]/\\1/" | less -r
caleb531 受け入れられた回答にそれを提供しましたが、小さなタイプミスがありました。
次に、これをエイリアスでスローする場合は、次の操作を実行できます。
alias gitdiff='git diff --color | sed -E "s/^([^-+ ]*)[-+ ]/\\1/" | less -r'
自分の質問に答えてもいいのであれば、最終的には diff-so-fancy というツールを使用することにしました。 +/-を差分から取り除くだけでなく、ファイルヘッダーを簡素化し、で各行内の変更を強調表示します。