申し訳ありませんが、この質問が存在する場合、私は驚くことにそれを見つけることができませんでした:/
git diff
同じブランチと同じコミット内の2つのファイル間でaを実行するにはどうすればよいですか?
すなわち git diff fileA.php fileB.php
(理想的には、git
提供する読みやすいカラーコーディングで...またはBeyondCompareプログラムが行うものと同様です!)
申し訳ありませんが、この質問が存在する場合、私は驚くことにそれを見つけることができませんでした:/
git diff
同じブランチと同じコミット内の2つのファイル間でaを実行するにはどうすればよいですか?
すなわち git diff fileA.php fileB.php
(理想的には、git
提供する読みやすいカラーコーディングで...またはBeyondCompareプログラムが行うものと同様です!)
回答:
そのためにgitは必要ありません。使用するdiff fileA.php fileB.php
か、並べて比較したい場合はvimdiffを使用してください。
vimdiff
勝利のために!ありがとう!
git diff
なく、単に読みやすい差分を探していることを示しています。また、彼が探していたものとして彼が私の答えを受け入れたという事実は、それが実際に答えていることも示しています。
diff fileA fileB
そうではありませんgit diff fileA fileB
あなたが使用したい場合はgit diff
、あなたが使用できる2つの任意のファイルにgit diff --no-index <file_a> <file_b>
。git
これが機能するために、2つのファイルを追跡する必要はありません。
--word-diff
行だけでなく単語ごとの変更を強調表示
diff
hasがあり--color
、役立つ場合があります(unix.stackexchange.com/a/338960を参照)。しかし、それでも、を使用diff-so-fancy
する場合、の特定の出力形式が必要なようですgit diff
。 diff -u
(stackoverflow.com/a/4857407/10095231を参照)が機能しません。
比較するファイルが作業コピーにある場合はdiff
、他のファイルから指摘されたとおりに使用できますが、ファイルが一部のリビジョンにある場合は、各ファイルのリビジョンを指定できます
git diff <revision_1>:<file_1> <revision_2>:<file_2>
ここで述べたように:https : //stackoverflow.com/a/3343506/1815446
あなたの場合(両方のファイルに同じリビジョンを指定する):
git diff <revisionX>:fileA.php <revisionX>:fileB.php
git diff --name-only HEAD:dir1 HEAD:dir1_backup
後に動作しgit add
ます。
通常のgnu diffをgit diffのようにするには、次のパラメーターをお勧めします。
diff -burN file_or_dir1 file_or_dir2
(-b
スペースを無視する、-u
統一されたdiff、-r
再帰的、-N
欠落ファイルをとして扱う/dev/null
)。
うまく機能しますが、まだ色はなく、gitスタイルの自動ページングは事実上ありません。両方を修正したい場合は(私は行います)、次のようにインストールcolordiff
して使用します。
colordiff -burN file_or_dir1 file_or_dir2 | less -R
これにより、実際のに非常に近い出力とインターフェイスが提供されますgit diff
。
通常の差分を使用してください。
diff -Nua fileA.php fileB.php