0

我正在使用 GIT 部署我的 cakephp 应用程序,几天前我开始在我的应用程序中使用迁移插件(由 cakeDC 提供)来简化数据库版本和更改。

在我的本地开发机器上安装迁移插件后,我提交了更改并将其推送到我的生产服务器,并尝试从那里运行迁移插件。在查看服务器很长一段时间后,我意识到它并没有抓住所有的迁移插件,但是以下内容发生了变化:

app/Config/bootstrap.php 附加了以下行 CakePlugin::load('Migrations');

Plugin 文件夹现在有一个 Migrations 文件夹,但它是空的。

我通过 FTP 上传插件解决了这个问题。我在上面运行了一个 git status ,它显示工作目录干净......

为什么 GIT 不跟踪我的 Migrations 插件文件夹内容?

4

1 回答 1

1

插件文件夹没有被跟踪,因为 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"

我希望这对将来的某人有所帮助。

谢谢!

于 2013-01-08T21:48:43.277 回答