小型,快速变化和快速完成项目的工作流程

时间:2010-10-27 20:07:23

标签: git mercurial project-management workflow

我已经看到很多关于Git工作流程的建议,但它对我们来说并不是非常有用。我想就我们的情况得到一些建议。

我们是来自俄罗斯的一家非常小的网络开发公司。我们的许多订单都是针对公司或活动的小型网站。它为我们的工作流程添加了一些细节。

  • “发布”或“版本”毫无意义。
  • 大多数更改必须非常快速地完成:获取有关错误或增强/实现的消息/再次查看本地计算机/部署/测试以防出现问题
  • 在一开始,没有特定“特征”的抛光概念。开发人员获得了关于快速变化的初始文档,模型,html布局和电子邮件信件的瀑布。 (是的,这对于这些项目来说还可以,这些项目非常小,需要以重新加载页面的速度极快地更改)。当然我们在Redmine中使用票证和所有这些东西,但是对于每个附加功能使用单独的分支是非常困难的,甚至在一次提交中尽量不添加两个或三个小页面/改进。
  • 在大多数情况下,网站上只有两三个人在工作。其中一个只写HTML / CSS / JS,另外一个或两个写Python(Django)代码。他们的职责几乎没有交叉,我从未见过只使用一个分支进行开发的单一问题。
  • 没有测试服务器(除了每个开发人员的本地机器上的服务器)。我们将测试服务器用于大型项目,但我现在不是在谈论它们。
  • 我们不反对测试,但使用TDD的文化在这里很年轻。
  • 在一个网站上工作是在一两个月内完成的,之后我们只做了一些小的改进或修复小错误,我们很少这样做。

所以它是这样的:

  1. 开发人员获得紧急任务(或多个)或从故障单系统中选择一个或两个。
  2. 他做出改变并测试它们。
  3. “hg pull -u”
  4. “hg commit”
  5. “hg push”
  6. 部署 (实际上,步骤3-6是使用fabfile.py完成的。当然它要求提交消息)
  7. 继续执行其他任务(也许还有其他项目,我们有很多项目。)
  8. 我发现我们的流程非常破碎。但我认为可以改进。我没有很好的开发经验。我的同事也不是(更糟糕的是,我是开发者,我是最有经验的人)。

    我们正努力将“最佳做法”用于我们的最佳作品,但我们发现它们对于小型网站而言过于复杂。对于小型网站,“遗留”代码的问题不是很烦人,所以我们更喜欢速度和轻松。我希望你在告诉我的时候考虑一​​下。

    那么,有什么观察或评论吗?请分享您的经验。谢谢。


    我们希望改进的一系列事项:

    • 以某种方式进行更改的“安全”
    • 时间管理 - 我们希望看到我们花费更多次的任务
    • 添加/更改项目工作人员的轻松程度
    • 减少过度和不必要的沟通

2 个答案:

答案 0 :(得分:3)

如果您的流程适合您,请继续使用。

答案 1 :(得分:3)

根据你所写的内容 - 我唯一要为你的过程改变的是每次提交只做一个功能。这将使未来追踪事物变得更加容易。