Почему Git удалить некоторые файлы при переключении ветки?
У меня это случалось со мной часто. Я работаю над главной ветвью, и мне нужно протестировать плагин, поэтому я создаю новую ветку и проверяю ее. Я загружаю плагин в каталог проекта и проверяю его. Затем я вернусь к мастер-ветке и удалю ветвь, которую я создал.
В результате все файлы плагина остаются в каталоге проекта. Мне интересно, нормально ли это. Что мне нужно сделать, чтобы иметь бесшовный переход между ветвями?
Ответы
Ответ 1
git не удалит ненужные файлы из вашей рабочей копии, поэтому, если вы не добавили файлы плагина и не создали фиксацию в новой ветке git, вы не будете делать ничего с вашими файлами плагина.
если вы хотите удалить неиспользуемый файл из своего рабочего дерева, используйте git clean
- будьте осторожны, он удалит любой необработанный файл с диска и нет способа восстановить его (без использования программного обеспечения для восстановления)
Ответ 2
попробуйте проверить -f
см. git --help checkout:
Продолжайте, даже если индекс или рабочее дерево отличаются от HEAD.
Это используется для удаления локальных изменений.
Ответ 3
Если вы переключаетесь между ветвями, где структуры каталогов различны, и вы обнаружите, что остались некоторые артефакты, вам может потребоваться запустить:
git clean -df
Это приведет к "удалению" "силы". Вы потеряете ВСЕ необработанные файлы, я думаю, что это может быть в одном шаге от:
git reset --hard