【问题标题】:Optimal workflow for Local / Staging / Production server stack + Git本地/暂存/生产服务器堆栈 + Git 的最佳工作流程
【发布时间】:2013-11-21 20:00:21
【问题描述】:

我希望整合一个允许我执行以下操作的 Web 开发工作流程:

  • 在本地开发/测试
    • 模拟生产服务器(许多子域,一些 mysql 数据库)
    • 在台式机和笔记本电脑之间保持同步,以便随时随地进行开发
  • 轻松推送本地 -> 暂存
  • 轻松推送分期 -> 生产
  • 在生产服务器上轻松实时编辑(偶尔需要进行非常小的内容更新、错字更改等。现在我花费大量时间进行小编辑,将其推送到暂存,然后推送到生产,这需要一段时间小事。)

我也是 Git 新手。我已经开始在我的个人项目中使用 Git 进行测试,但是我继承的项目(使用生产/登台环境)到目前为止还没有使用任何版本控制。

问题:

  • 如何轻松地将已建立的大型项目适应本地环境 (XAMPP)?
  • 如何在 dev-laptop 和 dev-desktop 之间同步本地环境?
  • 在这种预先建立的项目/服务器设置中,Github 是否值得?似乎它增加了更多步骤(例如:本地->推送到 git repo-> 将 repo 下载到暂存服务器-> 将暂存服务器推送到实时服务器)。我还担心维护隐私/安全。

本质上,我是一个单独的开发人员,被交给了一个相当大的项目,我只是想尝试让事情尽可能简单/直截了当。 :)

【问题讨论】:

  • 你在开发什么样的项目?对 XAMPP 的引用建议使用 PHP,但取决于项目的具体情况,细节很重要。
  • @JoshKoenig 主要是大量的 LAMP、WordPress,以及一些 Angular 和类似 Node 的库的沙盒。就是来玩玩的。希望保持一个相当灵活的环境。

标签: git workflow development-environment staging dev-to-production


【解决方案1】:

分支是促进此工作流程的一种方式。有一个great blog post 介绍了如何使用 Git 分支来管理典型的开发工作流程。

然后,您将拥有一个用于生产的分支(例如 master),一个用于实时编辑,对应于上面帖子中的 hotfix 分支,另一个用于开发。

要在笔记本电脑和台式机上同步您的本地环境,您可以将上述development 分支也用作远程分支,并让两台设备将此分支上的本地提交推送到远程存储库。

【讨论】:

  • 那篇文章很棒。不过,我想知道使用 master 进行生产的相对优点。您同样可以使用 master 进行开发(代替现有的“开发”分支),并使用 live 分支进行生产(代替现有的“master”分支)。唯一的区别是像 gitlab 这样的一些服务的拉取请求会自动指向你的主要开发分支,而不是生产分支。不知道这是否有任何缺点。
猜你喜欢
  • 1970-01-01
  • 2011-01-18
  • 1970-01-01
  • 2011-10-24
  • 2020-01-31
  • 2016-11-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多