При использовании мерзавец, я проверил конкретную ревизию в своей основной отрасли:Выдана старая ревизия в git, а затем вернулась к последней версии, но удаленные файлы из старой версии все еще находятся в локальном каталоге?
checkout <branch hash> .
Я только сделал это, чтобы взглянуть на некоторые предыдущие файлы, я не сделал никаких изменений. Затем я попытался сбросить текущее состояние до последней версии. К сожалению, я попытался выполнить несколько команд, потому что не был уверен, изначально ли он работал; команды включены:
checkout master .
checkout HEAD .
reset HEAD --hard
Я не был уверен, что, если он работал сначала из-за определенное поведение, указанной в предыдущий файл старой ревизии присутствовала.
Тогда я понял, что мои измененные и новые файлы действительно были восстановлены до текущей версии, однако файлы, которые я удалил между старой ревизией и текущей версией, все еще находятся в моем локальном каталоге. Это должно произойти? Я полагаю, что никто не хотел бы, чтобы старые, удаленные файлы присутствовали после возвращения к текущей ревизии, и все же это выглядит так.
Мне было интересно, если я сделал что-то неправильно для этого, или если есть другая команда, которую я могу использовать для удаления этих нежелательных файлов из временно проверенной версии?
Ваша проблема была '.' путь в конце вашей проверки: вы сказали ей, чтобы проверить, что путь,' .', т.е. рекурсивно весь текущий каталог, из этой фиксации, без коммутация. Таким образом, он добавил всю команду «master» в вашу рабочую строку и индекс. – jthill