为什么在Drupal 8中进行配置同步后git pull停止工作?

时间:2019-04-15 03:23:55

标签: git github drupal-8

我必须从我的Drupal 8本地主机中导出配置同步,以便将其导入到我的生产服务器(cpanel)版本中。我是在localhost的CLI中这样做的:

drush cim sync

为此,我必须将config / sync目录的文件添加到我的git repo中。 我这样做了,然后git通过SSH / CLI将其拖到我的cpanel中。 这可行,Drupal站点在我的面板上固定/加载良好。

但是从那以后,进一步的git pull在生产服务器上失败了:

error: The following untracked working tree files would be overwritten by merge:

(列出所有配置/同步文件)

错误中位于lsite的文件已经添加到git repo中并且是最新的,因此我不确定为什么cpanel的git pull将它们标记为未跟踪。

如何阻止它们被标记并允许git pull成功运行?

编辑:我从cpanel中删除了配置/同步文件,然后再次运行git pull。

这一次它也给出了相同的错误:

error: The following untracked working tree files would be overwritten by merge:

除了这次列表完全不同之外,很多行,但是这里有一些示例:

    vendor/symfony/translation/Resources/bin/translation-status.php
web/core/modules/serialization/src/Normalizer/SerializedColumnNormalizerTrait.php
web/libraries/bootstrap/css/bootstrap-grid.css
web/libraries/bootstrap/css/bootstrap-grid.css.map
web/libraries/bootstrap/css/bootstrap-grid.min.css
web/libraries/bootstrap/css/bootstrap-grid.min.css.map
web/libraries/bootstrap/css/bootstrap-reboot.css
web/libraries/bootstrap/css/bootstrap-reboot.css.map
web/libraries/bootstrap/css/bootstrap-reboot.min.css
web/libraries/bootstrap/css/bootstrap-reboot.min.css.map
web/libraries/bootstrap/css/bootstrap.css
web/libraries/bootstrap/css/bootstrap.css.map
web/libraries/bootstrap/css/bootstrap.min.css

我真的不知道这件事了吗?

1 个答案:

答案 0 :(得分:1)

对我来说,解决方法是浏览git pull错误列表,并从实时服务器的目录中删除所有未跟踪的文件。

从cpanel /文件管理器中删除的列出未跟踪文件的一些快速示例:

web/modules/contrib/extra_field/LICENSE.txt
web/modules/contrib/extra_field/README.txt
web/libraries/bootstrap/css/bootstrap-grid.min.css
web/libraries/bootstrap/css/bootstrap-grid.min.css.map
vendor/symfony/translation/Resources/bin/translation-status.php
web/core/modules/serialization/src/Normalizer/SerializedColumnNormalizerTrait.php

一旦我删除了所有这些文件,我便可以通过SSH成功​​地在面板上进行git pull:

git pull origin master

此git pull之后,我的生产(cPanel)网站正在以正确的外观加载,更新了CSS等。

我仍然不能100%地确定为什么这次需要导出配置,因为3周前几乎完全相同的部署不需要这样做。

但是,在这种情况下,这是必需的,并且根据此答案解决了导致的git pull问题。