web-dev-qa-db-ja.com

Gitでコミットされていない変更を表示する方法

Gitでコミットされていない変更を表示する方法を教えてください。

私はSFTWしたが、それらのコマンドは機能しない。

teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git status
On branch teyan/psservice
Your branch is up-to-date with 'Origin/teyan/psservice'.
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

        modified:   psservice.c
        modified:   psservice.vcxproj.filters


teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git diff

teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git diff master
fatal: ambiguous argument 'master': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
120
TD_Yan

Gitでコミットされていない変更を表示する方法

探しているコマンドは git diff です。

git diff - コミット間の変更、コミットと作業ツリーなどを表示


これはあなたが使用できる公開されているオプションのいくつかです。

git diff(パラメータなし)
作業ディレクトリとインデックスの違いを表示してください。

git diff --cached
index とHEAD(現在のコミット)の違いを表示します。

git diff HEAD
あなたの 作業ディレクトリ とHEADの違いを表示してください。

git diff --name-only
変更されたファイルの名前だけを表示します。

git diff --name-status
変更されたファイルの 名前とステータス のみを表示します。

git diff --color-words
1行ずつではなく、Wordごとの差分。

これがgit diff --color-wordsの出力例です。

enter image description here


enter image description here

206
CodeWizard

あなたはすでに(おそらくgit addを実行することによって)変更を段階的に行っているので、それらの差分を取得するためには、実行する必要があります。

git diff --cached

(プレーンなgit diffはステージングされていない変更のみを表示します。)

30