1

gitを取得してgit diff、ハンクだけを表示するのではなく、ファイル全体を表示する方法を考えていました。

だから私は最初に-Wオプションを選びましたが、これは実際には賢くしようとし、変更の関数コンテキストを見つけようとしていることを読みました。gitを賢くしたくありません。gitを完全にシンプルにし、変更を加えた完全なファイルのみを表示したいと思います。

だから私はついにあなたが追加できることを理解しました、-U9999999そして今私はWTFのようです!?そして、これがどのようなクレイジーなハックであり、なぜそれがどこにも文書化されていないのだろうか?

4

3 に答える 3

2

マニュアルから:

-U<n>
--unified=<n>
Generate diffs with <n> lines of context instead of the usual three. Implies -p.

つまり、9999999行のコンテキストで差分を表示するように指示しています。これは実際にはファイル全体を意味します。

于 2012-10-02T17:13:48.307 に答える
2

git diff -U9999999「統一された差分を実行し、各ハンクに対して9,999,999行のコンテキストを表示する」という意味です。それは文書化されています。git help diffショー:

       -U <n>、-unified = <n>
           通常の代わりに<n>行のコンテキストでdiffを生成します
           三。-pを意味します。

もちろん、異なるリージョン間に9,999,999行を超えるファイルがある場合、これは実際にはファイル全体を表示しませんが、すべての実用的な目的で、常に全体を表示します。

于 2012-10-02T17:13:58.667 に答える
0

余分なコンテキスト行を使用して生成された差分をgitに指示しています。コンテキストは、各変更の周りのコード行です。

あなたが言うなら

git diff -u9999999

gitに、変更のたびに9999999行の変更されていないコードを配置するように指示しています。これは、作成するコードファイルには十分なはずです。

于 2012-10-02T17:14:11.430 に答える