Meld は一度に多くのファイルを(タブで)読み込むことができます。
ただし、 と一緒に使用するとgit difftool
、Git は各ファイルを表示するかどうかを尋ねます (meld を開いたり閉じたりし続ける必要があるため、時間がかかり、煩わしい場合があります)。
タブ内のすべてのファイルを含む meld をロードする方法はありますか?
(このデフォルトが選択された理由は理解しています。差分が非常に大きくなる可能性がありますが、これを実行できる機能は非常に便利だと思います)。
答え1
現時点では meld はインストールされていないためコメントできませんが、kdiff3(*) の場合、git difftool --dir-diff
コマンドはうまく機能します。たとえば、任意の 2 つのリモート ブランチを比較できます。
git difftool --dir-diff origin/branch1..origin/branch2
kdiff3 の場合、変更されたすべてのファイルが 1 つのペインにリストされ、選択したファイルの差分が別のペインに表示されます。meld でも同様のことが行われると考えられます。変更が多数ある場合は、差分が表示されるまでに時間がかかることがあります。
(*)補足 - kdiff の設定:Windowsでは、kdiff3を以下からインストールできます。ここC:\Users\<your username>\.gitconfig
. Git は、以下を編集して設定することで kdiff3 を使用するように構成できます(以下の kdiff3 へのパスが正しいと仮定し、既存のセクションがある場合は置き換えます)。
[diff]
tool = kdiff3
[difftool]
prompt = false
[difftool "kdiff3"]
cmd = "\"C:/Program Files/KDiff3/kdiff3.exe\" \"$LOCAL\" \"$REMOTE\""
答え2
同様のことは、git diffall の(これは組み込みではないので、リンクをたどってインストールする必要があります)。構文は と同じですgit diff
が、difftool をディレクトリ比較モードで開き、変更されたすべてのファイルを 1 つの画面に表示します。それらをダブルクリックすると、タブで比較を開くことができます。