1. ホーム
  2. git

[解決済み] 「git diff" は何もしない

2022-11-04 09:26:09

質問

どこかの設定ミスだと思うのですが、どこが原因なのかがわかりません。 通常の git コマンドは問題なく動作しているように見えますが、"git diff" は何も行いません。 念のため、.gitconfig ファイルから外部の diff ツールを削除してみました。 これは MacPorts 経由でインストールしたもので、最新のバージョンです (1.7.2.2)。

私が見たのは、ワークスペースから "git diff" を実行すると、単に何もせずに終了してしまうということです。

$ git --version
git version 1.7.2.2
$ git diff
$ 

ルートワークスペースから、1つのディレクトリをバックアップすると、 "git diff" と入力すると、このようになります。

$ git diff
usage: git diff [--no-index] <path> <path>

gitリポジトリ下ではないので、予想された動作かもしれません。

このトラブルシューティングのために何ができるのか、何かアイデアはありますか?

どのように解決するのですか?

のデフォルトの出力は git diff に対するデフォルトの出力は、インデックスにコミット/追加されていない変更のリストです。もし変更がなければ、何も出力されません。

<ブロッククオート

git diff [--options] [--] [...]...

このフォームは、インデックス(次のコミットのためのステージング・エリア)に対して行った変更を表示するためのものです。言い換えると、差分はあなたが ができた git にさらにインデックスに追加するように伝えることができたが、まだ追加していないものです。

を参照してください。 のドキュメントを参照してください。 を参照してください。特に、例のところまでスクロールダウンして、このセクションを読んでください。

$ git diff            # (1)
$ git diff --cached   # (2)
$ git diff HEAD       # (3)

  1. 作業コピーにインデックスを付けて差分
  2. インデックスをHEADと差分
  3. 作業コピーをHEADで差分

ワークスペースの外では、ご想像のとおり、git は何を diff してよいのかわかりません。そのため、比較するために明示的に二つのパスを指定する必要があります。