Git、Laravel、PHPStorm 和 VPS 的复杂设置
Complicated setup with Git, Laravel, PHPStorm and VPS
我目前拥有的:
- 两台 VirtualBox LAMP 机器(不同的位置),我通过 SFTP 连接我的两台 Windows 开发机器,使用 PHPStorm 编写代码。
- 一台 VPS 机器,我在其中部署我为 Laravel 中的项目编写的代码。
我想要达到的目标:
快速简单的代码部署,如:通过PHPStorm在Windows中编写代码,在LAMP机器上测试,部署到VPS如果必要的。
问题是我需要在 LAMP 台机器上使用一些 php artisan
命令来生成一些代码。这意味着我总是必须将 PHPStorm 与 LAMP 文件树同步才能看到更改。然后,我还需要在 Windows 机器编号 2 上同步另一台开发 (LAMP) 机器和另一台 PHPStorm 运行。我知道这可以通过Git。
所以我每次用命令行生成代码,都需要同步4台机器(不包括部署服务器)。
稍后,如果我添加另一对 Windows/LAMP 开发机器,复杂性会增加。
回到 Dreamweaver 时代,我可以直接在部署服务器上编写代码。这不是最好的主意,但它更简单、更快捷,这就是我现在需要的。
关于如何简化这个的任何想法?
切换到 WAMP 以便我可以让文件与 PHPStorm 同步(因为所有内容都在本地)是不行的,因为... Windows 和 PHP 库问题 :)
另外,切换到Dreamweaver也不行。
我还有哪些其他选择?
谢谢!
LE:另一方面,我也在想NAS是否可以帮助解决这类问题。
LLE:Linux Desktop + PHPStorm 是唯一直接的解决方案吗?
无论协议如何
您可以将您的代码放在来宾机器之外,并配置来宾机器来装载代码(从来宾内部的主机装载文件夹)。
Apache 将 运行 变慢,因为它将使用安装的远程文件夹,但 PHPStorm 将 运行 以其最大速度。
考虑协议
尝试使用 SSHFS on windows。
我使用 SSHFS 进行远程开发,从我的 Linux 主机到无头流浪盒(and/or 到远程开发服务器/临时服务器)。
它比 SAMBA(windows SMB 协议)快得多,而且奇怪地比 NFS 快,尽管 SSH 使用加密。
使用 Windows+SMB 的同事经常在 PHPStorm 编制索引时离开他们的计算机 30 分钟,并且 git 开发机器上的分支更改一次被忽视几分钟。
在 Symfony2 项目上通过 SSHFS 建立索引通常需要不到 5 分钟。在不到 15 秒内检测到分支更改。
使用Linux(无耻外挂)
Linux 很好,它是免费的,开箱即用 (Ubuntu) -- 包括讨厌的 USB 调制解调器,通常需要在 windows 上安装.
您已经知道如何处理 Linux CLI,学习曲线已经过了一半。
自动更新不会主宰您的生活,它们不是您的主宰!
您需要的所有应用程序都是软件存储库的一部分,您不需要寻找任何东西,下载 40 多个可执行文件并尝试安装它们只是为了迎接错误 "invalid architecture","windows version not supported", ".NET 框架版本太旧", "DirectX version too new (wtf?)", "your cousin is a software pirate".
依赖管理是一个概念 Linux 从未完全解决——但至少经过了血腥的尝试,并且在 90% 的消费者用例中它符合要求。 Windows还在class后面吃胶。
我是如何解决问题的:
我有一个额外的 Mac,我在上面安装了我的 PHP 生态系统的所有东西,包括 IDE,所以一切都是本地的。那是开发机器。然后我在需要时手动将代码复制到 VPS 。另一个解决方案是使用 Windows 在双启动时安装 Ubuntu 桌面(或类似的)并将其用作本地开发环境。
更快的开发/部署:)
我目前拥有的:
- 两台 VirtualBox LAMP 机器(不同的位置),我通过 SFTP 连接我的两台 Windows 开发机器,使用 PHPStorm 编写代码。
- 一台 VPS 机器,我在其中部署我为 Laravel 中的项目编写的代码。
我想要达到的目标:
快速简单的代码部署,如:通过PHPStorm在Windows中编写代码,在LAMP机器上测试,部署到VPS如果必要的。
问题是我需要在 LAMP 台机器上使用一些 php artisan
命令来生成一些代码。这意味着我总是必须将 PHPStorm 与 LAMP 文件树同步才能看到更改。然后,我还需要在 Windows 机器编号 2 上同步另一台开发 (LAMP) 机器和另一台 PHPStorm 运行。我知道这可以通过Git。
所以我每次用命令行生成代码,都需要同步4台机器(不包括部署服务器)。
稍后,如果我添加另一对 Windows/LAMP 开发机器,复杂性会增加。
回到 Dreamweaver 时代,我可以直接在部署服务器上编写代码。这不是最好的主意,但它更简单、更快捷,这就是我现在需要的。
关于如何简化这个的任何想法?
切换到 WAMP 以便我可以让文件与 PHPStorm 同步(因为所有内容都在本地)是不行的,因为... Windows 和 PHP 库问题 :)
另外,切换到Dreamweaver也不行。
我还有哪些其他选择?
谢谢!
LE:另一方面,我也在想NAS是否可以帮助解决这类问题。
LLE:Linux Desktop + PHPStorm 是唯一直接的解决方案吗?
无论协议如何
您可以将您的代码放在来宾机器之外,并配置来宾机器来装载代码(从来宾内部的主机装载文件夹)。
Apache 将 运行 变慢,因为它将使用安装的远程文件夹,但 PHPStorm 将 运行 以其最大速度。
考虑协议
尝试使用 SSHFS on windows。
我使用 SSHFS 进行远程开发,从我的 Linux 主机到无头流浪盒(and/or 到远程开发服务器/临时服务器)。
它比 SAMBA(windows SMB 协议)快得多,而且奇怪地比 NFS 快,尽管 SSH 使用加密。
使用 Windows+SMB 的同事经常在 PHPStorm 编制索引时离开他们的计算机 30 分钟,并且 git 开发机器上的分支更改一次被忽视几分钟。
在 Symfony2 项目上通过 SSHFS 建立索引通常需要不到 5 分钟。在不到 15 秒内检测到分支更改。
使用Linux(无耻外挂)
Linux 很好,它是免费的,开箱即用 (Ubuntu) -- 包括讨厌的 USB 调制解调器,通常需要在 windows 上安装.
您已经知道如何处理 Linux CLI,学习曲线已经过了一半。
自动更新不会主宰您的生活,它们不是您的主宰!
您需要的所有应用程序都是软件存储库的一部分,您不需要寻找任何东西,下载 40 多个可执行文件并尝试安装它们只是为了迎接错误 "invalid architecture","windows version not supported", ".NET 框架版本太旧", "DirectX version too new (wtf?)", "your cousin is a software pirate".
依赖管理是一个概念 Linux 从未完全解决——但至少经过了血腥的尝试,并且在 90% 的消费者用例中它符合要求。 Windows还在class后面吃胶。
我是如何解决问题的:
我有一个额外的 Mac,我在上面安装了我的 PHP 生态系统的所有东西,包括 IDE,所以一切都是本地的。那是开发机器。然后我在需要时手动将代码复制到 VPS 。另一个解决方案是使用 Windows 在双启动时安装 Ubuntu 桌面(或类似的)并将其用作本地开发环境。
更快的开发/部署:)