DDEV拉取命令从远程开发环境导入文件时出错
解决Drush Rsync无法解析@mysite.dev %files路径的问题
直接修复方法
编辑~/.drush目录下对应的站点别名文件(比如mysite.dev.aliases.drush.php),在别名配置数组里添加files路径字段:
$aliases['mysite.dev'] = [ 'remote-host' => '你的Acquia开发服务器地址', 'remote-user' => '你的Acquia SSH用户名', 'root' => '/var/www/html/mysite.dev/docroot', // 替换为Acquia上的Drupal根目录 'files' => '/var/www/html/mysite.dev/docroot/sites/default/files', // 新增这行,对应Acquia上的文件目录 ];
保存后重新执行drush rsync @mysite.dev:%files @self:%files即可正常拉取文件。
为什么项目内的别名文件没生效?
Drush加载别名的优先级是:全局~/.drush目录 > 项目内drush/sites目录。当全局目录存在同名别名配置时,会优先使用全局的,所以你在项目里添加的别名被覆盖了。
替代方案:强制使用项目内的别名
如果不想修改全局配置,可以在执行rsync命令时通过--alias-path参数指定项目内的别名文件路径:
drush rsync --alias-path=./drush/sites @mysite.dev:%files @self:%files
内容的提问来源于stack exchange,提问作者Alex_Dms
相关产品推荐
相关产品推荐

