首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >小型团队的开发流程

小型团队的开发流程
EN

Stack Overflow用户
提问于 2016-04-12 15:08:32
回答 2查看 1K关注 0票数 1

因此,我在一家小型事件/娱乐公司工作,最近接管了开发团队的职责(大部分时间都是PHP应用程序)。当前的工作流看起来有点像这样:

  • 每个项目都有一个开发和一个生产服务器。没有本地开发环境,这意味着每个开发人员都有SSH访问权,并直接在dev服务器上进行更改。
  • 没有源头控制或者任何东西。
  • 大多数情况下,团队的每一位成员都在自己的项目上工作。在同一个项目中工作的多个开发人员是罕见的。
  • 更新生产服务器意味着使用SFTP将源从dev转移到生产服务器。

我觉得这很可怕,所以我想出了一个主意:

  • 将有一个中央开发服务器托管所有可用的项目,此服务器将使用Mercurial进行源代码管理。
  • 开发人员必须设置一个本地开发环境,并为每个项目使用一个本地存储库。可以将更改从/推送到dev服务器上的中央存储库。
  • 如果项目的新版本必须推出,开发人员只需将存储库复制到生产服务器即可。

这种工作流有什么问题吗?我在我自己的项目中使用过变化无常,但我以前从未在团队中使用过它,而且我也是所有团队管理人员中的新手。请给我一些建议。

谢谢,克里斯

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-12 15:16:34

让您的开发人员在本地工作非常有意义。PHP最大的优点是反馈周期短,如果它们必须将可能损坏的内容推送到共享的开发框中,那么这就打破了短反馈周期。您可能可以使用类似Vagrant的东西来使开发人员在其开发机器上的环境设置更容易。

至于其馀部分:我会将您的开发/测试服务器从您的中央存储库中分离出来。原因是当您在项目中工作时,您可能会开始在不同的版本中使用分支。很可能会有一个“稳定的”/Currently发布的项目分支和一个“特性”分支(您正在处理的新内容)。直接发布到开发服务器对于我所建议的基本分支工作流来说都是没有意义的。

我在这里看到的另一个大问题是,您的所有开发人员都可以向生产服务器发布。通常,即使在较小的组织中,在向生产服务器发布之前也有指定的人员和指定的标准。我建议你这么做。此外,在发布之前,你们应该始终标记您要发布的版本。这应该是您发布工作流程的一部分。

你没有提到的另一件事是问题跟踪。在我看来,JIRA是问题跟踪软件的黄金标准。我们喜欢使用JIRA和Fisheye来管理我们的代码,并与特定问题协调提交。

票数 0
EN

Stack Overflow用户

发布于 2016-04-12 15:15:30

这是我工作了几年的工作流程.

多个生产服务器、1个项目(测试)服务器、Git (Bitbucket)、Jenkins、JIRA (问题跟踪)、HipChat (Team )、1个主Git分支、1个项目Git分支

  • 新票(在JRIA上)
  • 从主分支签出一个新的本地分支。
  • 做这项工作
  • 为拉请求提交分支(在团队聊天中发布到拉请求的链接,以便其他开发人员知道是否有PR) &进行任何必要的更改
  • 一旦获得批准,将我的本地分支机构合并到项目分支机构中。
  • 使用Jenkins克隆项目git repo,运行测试&部署到项目服务器
  • 应用程序测试器测试所有的东西
  • 票通过了
  • 把我当地的分支合并到主支部里
  • 再次,使用Jenkins克隆主分支并运行测试。
  • 手动要求Jenkins将主分支转移到生产服务器。

我在上面提到了Jenkins,对于一个开发团队来说,这可能太超前了,因为现在我建议一些更基本的方法,比如FTPloy,这里有一个很好的指南来设置它:https://daveismyname.com/website-deployment-with-bitbucket-and-ftploy-bp

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36577262

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档