【问题标题】:Version and deploy cakephp in shared hosting [closed]在共享主机中版本和部署 cakephp [关闭]
【发布时间】:2014-02-05 22:54:50
【问题描述】:

我的 cakephp 项目部署在共享主机中,但它没有版本控制。我想使用 git 或 mercurial 对其进行版本控制,并轻松部署更改。我必须采取哪些步骤?我应该先在我的共享主机中安装 git,然后在我的本地环境中进行克隆吗?我是否应该在我的共享主机中有一个包含 repos 的单独文件夹,然后使用一些实用程序部署更改?

谢谢

【问题讨论】:

    标签: git cakephp deployment mercurial shared-hosting


    【解决方案1】:
    1. 颠覆服务器应该不同于生产服务器。您可以在 github 上创建一个帐户并将其作为私有项目托管。

    2. 在生产服务器上,您只需在想要进行更新时提取最新更改(或使用持续集成服务器 - jenkins、teamcity、bamboo 等)

    3. 在您的本地,您将推送/拉取更改到同一个 subversion 服务器。

    【讨论】:

      【解决方案2】:

      许多共享主机站点不允许您在他们的服务器上拥有 shell 访问权限,有些还没有安装 git。如果您依赖于将更改直接拉取到生产服务器,那么当您被要求在不支持 shell/git 的服务器上安装时,您必须做一些不同的事情……这很痛苦。

      这是一个适合我的解决方案:

      • 继续阅读git-flow
      • 有一个项目文件夹直接反映您的开发文件。这是在开发分支中。
      • 有一个项目文件夹可以直接反映您的生产文件。这是主分支。

      当您对自己的开发站点感到满意时,提交并推送您的更改。然后将您的项目(在您的 IDE 中)更改为生产版本。拉取并合并您的更改(但暂时不要提交)。然后我的 IDE 允许我只上传更改的文件,然后我提交。

      我意识到这不是很多人采用的解决方案,正如cornelb 所说,持续集成服务器可能会稍微简化这个过程。但它对我来说效果很好,只需要通过 FTP 访问您部署代码的共享服务器。

      【讨论】:

        【解决方案3】:

        您能否在共享主机中安装 Git?在大多数情况下,他们不会允许这样做。

        如果是,您可以使用post-receive 挂钩来检查您项目所在目录的文件:

        GIT_WORK_TREE=/var/www/example.org git checkout -f
        

        或者您可以使用其中一种工具通过 FTP 从您的本地 git 存储库进行部署。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-06-05
          • 1970-01-01
          • 2017-12-24
          • 2020-09-30
          相关资源
          最近更新 更多