git diff: в чем разница между --cached и --staged

Чтобы сравнить постановку с последним коммитом:

git diff --cached
git diff --staged

Обе команды дают одинаковые результаты, верно?

Ответ 1

В документации для git diff говорится: "--staged является синонимом - -cached", так что да.

Ответ 2

Из docs - --staged является синонимом --cached

Ответ 3

git-scm.com/docs/git-diff:

git diff [<options>] --cached [<commit>] [--] [<path>…​]

Эта форма предназначена для просмотра изменений, которые вы поставили для следующего коммита относительно именованного <commit>. Как правило, вы хотите сравнение с последним коммитом, поэтому, если вы не дадите, по умолчанию будет HEAD. Если HEAD не существует (например, нерожденные ветки) и не задан, он показывает все поэтапные изменения. --staged является синонимом --cached.