diff-so-fancy
差分を機械が読めるものではなく人間が読めるものにするよう努めています。これにより、コードの品質が向上し、欠陥をより早く発見できるようになります。
Vanilla git diff
vs git
およびdiff-so-fancy
最新リリースのdiff-so-fancy
スクリプトを$PATH
にコピーするだけで完了です。開発機能をテストする代わりに、このリポジトリのクローンを作成し、 diff-so-fancy
スクリプト (シンボリックリンクは機能します) を$PATH
に置くこともできます。 lib/
ディレクトリは、コア スクリプトに対して相対的な位置に保持する必要があります。
zgenom や oh-my-zsh などの ZSH フレームワークを使用している場合、詳細なインストール手順については、「diff-so-fancy の Zsh プラグイン サポート」を参照してください。
diff-so-fancy
NPM レジストリ brew から、Nix、Fedora のパッケージとして、Arch エクストラ リポジトリ内で、また Debian/Ubuntu Linux の ppa:aos として入手できます。
パッケージ化に関する問題 (「インストールが機能しない」、「バージョンが古い」など) は、該当する場合、それらのパッケージ独自のリポジトリ/問題トラッカーに送信する必要があります。パッケージ化に関する問題 (「インストールが機能しない」、「バージョンが古い」など) は、該当する場合、それらのパッケージのリポジトリ/問題トラッカーに送信する必要があります。
注: Windows ユーザーは、MinGW または Linux 用の Windows サブシステムをインストールする必要がある場合があります。
すべての差分出力にdiff-so-fancy
使用するように git を設定します。
git config --global core.pager " diff-so-fancy | less --tabs=4 -RF "
git config --global interactive.diffFilter " diff-so-fancy --patch "
デフォルトの Git カラーは最適ではありません。上のスクリーンショットに使用されている色は次のとおりです。
git config --global color.ui true
git config --global color.diff-highlight.oldNormal " red bold "
git config --global color.diff-highlight.oldHighlight " red bold 52 "
git config --global color.diff-highlight.newNormal " green bold "
git config --global color.diff-highlight.newHighlight " green bold 22 "
git config --global color.diff.meta " 11 "
git config --global color.diff.frag " magenta bold "
git config --global color.diff.func " 146 bold "
git config --global color.diff.commit " yellow bold "
git config --global color.diff.old " red bold "
git config --global color.diff.new " green bold "
git config --global color.diff.whitespace " red reverse "
統合出力にはdiff
とともに-u
使用し、出力をdiff-so-fancy
にパイプします。
diff -u file_a file_b | diff-so-fancy
また、最初の引数として-r
または--recursive
使用した diff の再帰モードもサポートします。
diff -r -u folder_a folder_b | diff-so-fancy
diff --recursive -u folder_a folder_b | diff-so-fancy
空行の最初のブロックに色を付ける必要があります。 (デフォルト: true)
git config --bool --global diff-so-fancy.markEmptyLines false
git ヘッダー チャンクをより人間が読みやすい形式に簡素化します。 (デフォルト: true)
git config --bool --global diff-so-fancy.changeHunkIndicators false
行頭の厄介な+
または-
削除する必要があります。 (デフォルト: true)
git config --bool --global diff-so-fancy.stripLeadingSymbols false
デフォルトでは、ファイルヘッダーの区切り文字には Unicode の線画文字が使用されます。これにより端末で出力エラーが発生する場合は、これをfalse
に設定して、代わりに ASCII 文字を使用します。 (デフォルト: true)
git config --bool --global diff-so-fancy.useUnicodeRuler false
デフォルトでは、ファイルヘッダーの区切り文字は端末の全幅に及びます。この設定を使用して、ファイル ヘッダーの幅を手動で設定します。
git config --global diff-so-fancy.rulerWidth 80
人 | 役割 |
---|---|
@scottchiefbaker | プロジェクトリーダー |
@OJFord | バグのトリアージ |
@GenieTim | Travis OSX の修正 |
@AOS | Debian パッケージャー |
@スティーブマオ/@ポール・アイリッシュ | NPMリリースチーム |
プル リクエストは大歓迎です。 next
ブランチをターゲットにする必要があります。また、 diff-so-fancy
さらに派手にする方法に関するフィードバックやアイデアも募集しています。
マサチューセッツ工科大学