Почему GIT не отслеживает мой плагин переноса тортов?

Я использую GIT для развертывания своих приложений CakePHP, несколько дней назад я начал использовать в своем приложении плагин миграций (от CakeDC) для упрощения версий и изменений базы данных.

Установив плагин Migrations на мою локальную машину разработки, я зафиксировал изменения и перенес его на свой рабочий сервер и попытался запустить плагин миграции оттуда. Посмотрев на сервер в течение некоторого времени, я понял, что он не захватил весь плагин миграций, однако были изменены следующие параметры:

К app/Config/bootstrap.php добавлена ​​следующая строка: CakePlugin::load('Migrations');

Папка Plugin теперь имела папку Migrations, но она была пуста.

Я решил это, загрузив плагин через FTP. Я запустил git-статус, и он показывает, что рабочий каталог чистый...

Почему GIT не отслеживает содержимое папки плагина Migrations?

1 ответ

Решение

Папка Plugin не отслеживается, потому что GIT считает, что это был субмодуль.

Я столкнулся с этой проблемой, потому что я использовал GIT, чтобы клонировать этот плагин в каталог плагинов. и git не добавил его, так как он сам по себе был хранилищем. Когда GIT не добавил его в мои отслеживаемые файлы, я сделал это вручную: git add app/Plugin/Migrations/это создало gitlink и по существу действовало как подмодуль, как видно в этой теме:

Git - как отследить неотслеживаемый контент?

Поскольку в то время я не хотел использовать плагин в качестве подмодуля, я исправил эту проблему с помощью следующих команд:

git rm --cached app/Plugin/Migrations

с git status Я мог видеть, что GIT теперь распознает мой плагин

Затем я мог бы продолжить с git add . а также git commit -m "finally adding the plugin"

Я надеюсь, что это поможет кому-то в будущем.

Спасибо!

Другие вопросы по тегам