我的项目是一个PHP Web应用程序。这适用于我的测试服务器(本地),而不是生产服务器!我也是这个项目的独立开发人员(但是,这可能会在很远的将来发生变化)。此外,我的所有源代码都提交到存储库,生产服务器从存储库中获取源代码。
我在Windows上进行开发,而我的测试服务器在Ubuntu上运行(也许你也可以推荐另一个易于使用的发行版,可以作为一个优秀的Web服务器)。我需要一种优雅的方式来连接两个环境。目前,我在Windows中进行编码,然后将已更改的文件FTP到测试服务器。但是,由于每次必须手动转到我的FTP客户端,这非常麻烦且繁琐。请给我一些优雅的东西!也许FTP同步?或OpenVPN(测试服务器上的根www目录就像Windows中的文件夹一样)?谢谢你的精彩时间!
答案 0 :(得分:4)
我更喜欢SFTP到FTP。
也就是说,ExpanDrive允许您将SFTP服务器映射到本地驱动器号,这意味着您可以使用任何文本编辑器直接在测试服务器上访问您的文件,或使用其他机制来保持文件同步。由于它们显示为两个本地驱动器,因此您可以使用任何产品。
如果要使用FTP,只需在Windows资源管理器中映射驱动器即可。如果您打开我的电脑,请转到工具>映射网络驱动器,您可以将FTP服务器文件夹映射到任何本地驱动器。只需输入地址作为文件夹,即。 ftp://mscharley@192.168.0.10/htdocs
这将至少为您节省一次FTP客户端...
答案 1 :(得分:4)
最简单的是在Ubuntu中,右键单击文件夹,然后单击“共享选项”,然后共享该文件夹。在Windows中,连接到共享,然后处理该副本。
如果您正在使用版本控制,那么使用像Hudson(http://hudson-ci.org/)这样的持续集成将有助于您创建一个为测试服务器构建/导出网站的任务。从长远来看,这种方法会更好,但是你最初会浪费一天时间进行设置。
答案 2 :(得分:0)
一些想法:
答案 3 :(得分:0)
您是否有任何理由不能在本地计算机上进行测试?在我的工作中,我们都在本地开发和进行开发人员测试,我们大多数人都使用Windows。我们的生产和测试服务器都是基于Linux的。在本地工作非常好,因为您不需要担心每次小的更改都会在服务器上进行更改。
另一种选择是在服务器上创建代码的签出或工作副本,然后每次更改代码时运行svn up
或svn export
(或等效使用版本控制软件)在服务器上(假设您ssh
进入服务器)。这有点慢,但很容易。另一种选择是编写一个脚本,该脚本遍历最近提交的svn日志,并仅导出或更新已更改的脚本。这要快得多,而且据我所知,已经存在这样的事情了。
最后,一些IDE允许您通过ftp \ sftp实时编辑文件。基本上,IDE会下载代码的副本,然后在保存时重新上载。
答案 4 :(得分:0)
目前我也开发了Windows(PHP),并在Linux机器上进行部署以进行测试和生产。我就是这样做的。