У меня есть предпочтение для псевдонима --staged
, в основном потому, что я нахожу, что --staged
на самом деле означает то, что я хочу сделать, т.е. покажу мне поэтапные различия.
git diff --staged
Принятый ответ:правильно и у меня нет никаких сомнений с этим.Просто лично подумайте, что --cached
чувствует, что git diff кеширует ответ и показывает мне предварительно рассчитанные результаты или что-то в этом роде.
Мне также нравится git diff HEAD
, потому что это более общий термин.Он объединяет две концепции, которые знакомы большинству людей, а именно:
git diff <commit>
позволяет увидеть разницу между вашей текущей позицией и предыдущим коммитом.
HEAD
(или head
, потому что удержание смены раздражает) - это ссылка на верхушку вашей ветви.(Для тех из вас, кто считает нажатия клавиш, @
является псевдонимом для HEAD
.)
В сочетании эти две обычно полезные концепции приводят к:
git diff head
git diff @