我正在使用 CodeIgniter PHP 框架开发 Web 应用程序。我正在使用的服务器不支持任何类型的源代码控制(即 Subversion),除非您使用更高的价格层。
我仍然想将代码置于某种源代码控制之下。执行以下操作是否有意义:
- 在我的本地机器上安装 git 或 SVN 并在那里开发
- 将更改从我的本地机器复制到服务器上的开发目录(使用 FileZilla、WinSCP 等)并测试
- 将更改从开发目录复制到服务器上的生产目录
这听起来合理吗?有更好的选择吗?谢谢!
我正在使用 CodeIgniter PHP 框架开发 Web 应用程序。我正在使用的服务器不支持任何类型的源代码控制(即 Subversion),除非您使用更高的价格层。
我仍然想将代码置于某种源代码控制之下。执行以下操作是否有意义:
这听起来合理吗?有更好的选择吗?谢谢!
如果您在本地使用 svn,这有点危险,因为您还需要保护您的计算机 - 我认为最好的方法是使用提供完全支持的 svn/git 的商业网站 - 比如http://www.beanstalkapp.com /或http://www.github.com
您可以在本地计算机(SVN、Git 等)上使用源代码控制,并使用Capistrano等开源工具通过 SSH 将代码从本地源代码控制存储库部署到服务器。或者,如果您仅限于 FTP,这篇博文有一个潜在的解决方案。
使用 Capistrano 之类的工具而不是通过 FileZilla 或 WinSCP 直接将本地计算机上的文件镜像到服务器的一个优点是 Capistrano 将对您部署的文件进行版本控制,这样,如果您最终破坏了某些东西并需要快速回滚到以前部署的版本,它可以像更改符号链接到以前的部署目录一样简单。
这听起来合理吗?
部分,在第 1 页。但即使在这种情况下,我也会建议将您的存储库也放在一些存储库托管(BitBucket、GitHub、Assembla)上
对于第 2-3 页:您的部署必须是自动且非交互式的,因此 - 您必须选择其他工具(用于选择 SCM 的提交后挂钩)
不知何故,2-3 的更好替代方案可能是:
工作流与 SCM 无关,并且可扩展到任何合理数量的分支和开发人员