如何将PHP程序增量部署到服务器上?

PHP项目每次修改完BUG或者增加新功能以后,如何部署到服务器上?

目前使用的办法是SVN,团队开发也是使用的SVN,给线上服务器分配一个专用SVN账号。需要更新的时候直接用SVN就可以了。但是SVN的权限控制不够灵活,如果想设置某个账号只对某个文件夹有读操作,其他文件夹不给访问,需要将其他所有文件夹的该账号权限都去除。

不知道有没有其他更好的方案可以实现类似功能,可以一键增量部署到线上?

翻阅古今
浏览 1044回答 4
4回答

小唯快跑啊

在下菜鸟一枚,不过这个问题我可以回答你一下。推荐你使用git。使用git自带的hook机制,可以在给代码打上标签或者提交代码的时候自动将代码部署到线上。 但是SVN的权限控制不够灵活,如果想设置某个账号只对某个文件夹有读操作,其他文件夹不给访问,需要将其他所有文件夹的该账号权限都去除。 不知道你说的意思是不是:不对某个文件夹提交。例如说数据库配置文件。git自带的.gitignore文件,在里面填写规则就可以对某些文件忽略。在提交代码的时候会忽略掉.gitignore里的指定的文件。 补充一点:如果是PHP项目,推荐你使用phpstorm IDE。然后服务器上面git的管理面板可以使用gitlab。之前待的公司,就是每天更新的代码git提交。然后每天下午打上标签之后,代码就自动部署到线上了。非常方便。而且git可以通过标签对代码版本进行回滚。很方便。 希望对你有帮助。

守着一只汪

首推git,如果为简单的话,使用rsync也行

开满天机

svn 有hooks post-commit 可以检测到代码提交。并执行相关脚本。你可以在post-commit 中配置执行拉取代码到服务器环境。

紫衣仙女

可以了解一下 CI/CD 工具。比如:Jenkins 可以使用 Jenkins 配合 Git 使用。
打开App,查看更多内容
随时随地看视频慕课网APP