Git статус неправильно говорит, что файлы удалены
Я клонировал репозиторий и отредактировал в нем ровно один файл, tip.php
, а затем добавил его с помощью git add
, Но когда я в следующий раз git status
Я получаю следующее:
$ git status
On branch removeRatings
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
deleted: .htaccess
deleted: COPYRIGHT.txt
modified: tip.php
Хотя ни .htaccess
или же COPYRIGHT.txt
был удален, так как я вижу их прямо в каталоге. У кого-нибудь есть причина, почему это произошло? Я использую Git Bash на Windows 8.
1 ответ
Это сообщение означает, что файлы (или удаления файлов) были добавлены на сцену.
Запустите следующие команды.
git add --all
git status
Теперь вы должны увидеть, были ли они перемещены / переименованы или просто удалены. Я полагаю, что они были каким-то образом перемещены, возможно, вашей IDE.
git reset .htaccess
git reset COPYRIGHT.txt
git status
Теперь статус должен быть понятен и показывать только ваш tip.php
, Но если вы теперь видите .htaccess
а также COPYRIGHT.txt` в неотслеживаемых файлах, то эти файлы были изменены с момента последнего коммита.
Если вы уверены, что не изменили или не удалили их и не хотите сохранять изменения:
git reset --hard .htaccess
git reset --hard COPYRIGHT.txt
Это вернет эти файлы в состояние последнего коммита. Будь осторожен и не беги git reset --hard
без аргумента, так как это полностью удалит ваши незафиксированные изменения.