Я создал новый файл file.txt
в моем рабочем дереве. git status
показывает это правильно:
$ git status
On branch mybranch
Untracked files:
(use "git add <file>..." to include in what will be committed)
file.txt
nothing added to commit but untracked files present (use "git add" to track)
Однако git diff
ничего не показывает.
$ git diff
Я обнаружил некоторые связанные проблемы, указывающие на то, что пейджер может быть проблемой, поэтому я попытался
git --no-pager diff file.txt
и
GITPAGER=cat git diff file.txt
с тем же пустым результатом.
Если я добавлю файл, а затем diff в HEAD, я получу правильный diff.
$ git add file.txt
$ git diff --cached
diff --git a/file.txt b/file.txt
new file mode 100644
index 0000000..f2d7933
--- /dev/null
+++ b/file.txt
@@ -0,0 +1 @@
+asds
\ No newline at end of file
Это все в Windows 10 и последней версии git.
Почему разница пуста?
Обычно мне было бы все равно, но другой инструмент, который я использую, полагается на вывод diff.