Что это значит, когда изменяется режим изменения w20> diff?

Я пытаюсь просмотреть изменения для одного нестационарного файла.

сначала я использую git status для просмотра всех неустановленных изменений
Затем, например:

git diff AndroidManifest.xml

Но я получаю этот вывод

diff --git a/AndroidManifest.xml b/AndroidManifest.xml  
old mode 100755  
new mode 100644

Что это значит и как я могу просматривать изменения для определенного файла

Ответ 1

Скорее всего, содержимое этого файла не изменилось, был удален только исполняемый бит. Попробуйте фактически изменить файл, скажем, добавив к нему пустую строку и узнайте, что выводит git diff.

Помимо содержимого файла, Git также записывает состояние исполняемого бита для каждого файла. Это имеет смысл в системах Linux, если вы хотите, чтобы скрипты исполнялись сразу после проверки. См. Также следующие два связанных вопроса:

Как мне изменить Git игнорировать режим файла (chmod)?

Как удалить файлы, говорящие "старый режим 100755 новый режим 100644" ? от неустановленных изменений в Git?

Ответ 2

Это означает, что режим файла изменился с 755 на 644, но содержимое не было изменено.

git diff - это именно то, что вы ищете - оно показывает изменения от неустановленных файлов до последнего фиксации. git diff --cached предназначен для поэтапных файлов.