我正在使用带有PHPStorm的Laravel和我通过SFTP连接的自定义服务器。问题是作为SFTP,它不同步。因此,每次我通过php artisan
命令生成文件时,我都必须使用PHPStorm下载文件。我知道我可以通过使用Homestead和Shared文件夹来解决这个问题,但是这个项目需要一个自定义的VPS。
我知道没有SFTP"驱动"目前正在使用Windows。此外,服务器是远程的,而不是在同一网络上,因此Samba无法完成这项工作。
谢谢!
答案 0 :(得分:2)
这是我使用的工作流程,您可能只需要执行以下操作,假设您已经设置了默认部署服务器。
如果您正在编辑远程文件而不是本地副本,不要;代替:
git clone
/等。如果您已经在处理本地副本但只需要同步设置:
ctrl+shift+a
deployment
options
Upload changed files automatically [..]
更改为always
upload external changes
作为额外的奖励,这也会自动同步资产gulp watch
。
ctrl+shift+a
deployment
configuration
重要:如果您没有选择服务器作为默认服务器,则无法自动上传更改。
另外,请不要忘记在配置菜单中设置排除项,我通常会将bower_components
和node_modules
排除在部署到我的服务器之外,并且只发送构建资产。 (但这取决于你)
编辑:不要远程运行命令,在本地运行它们并让它们同步回服务器。
答案 1 :(得分:0)
我在双方执行artisan命令......我在linux机器上这样做
<?php
unset($argv[0]);
$params = implode(' ', $argv);
$remoteOutput = shell_exec("sshpass -p password ssh -o StrictHostKeyChecking=no user@1.1.1.1 'php /path/to/artisan $params'");
if(!empty($remoteOutput)){
shell_exec("php artisan $params");
}
保存并将其作为命令行工具添加到phpstorm ....在windows中我认为你可以使用PHP SSH库或其他东西。