我已经看到很多关于Git工作流程的建议,但它对我们来说并不是非常有用。我想就我们的情况得到一些建议。
我们是来自俄罗斯的一家非常小的网络开发公司。我们的许多订单都是针对公司或活动的小型网站。它为我们的工作流程添加了一些细节。
- “发布”或“版本”毫无意义。
- 大多数更改必须非常快速地完成:获取有关错误或增强/实现的消息/再次查看本地计算机/部署/测试以防出现问题
- 在一开始,没有特定“特征”的抛光概念。开发人员获得了关于快速变化的初始文档,模型,html布局和电子邮件信件的瀑布。 (是的,这对于这些项目来说还可以,这些项目非常小,需要以重新加载页面的速度极快地更改)。当然我们在Redmine中使用票证和所有这些东西,但是对于每个附加功能使用单独的分支是非常困难的,甚至在一次提交中尽量不添加两个或三个小页面/改进。
- 在大多数情况下,网站上只有两三个人在工作。其中一个只写HTML / CSS / JS,另外一个或两个写Python(Django)代码。他们的职责几乎没有交叉,我从未见过只使用一个分支进行开发的单一问题。
- 没有测试服务器(除了每个开发人员的本地机器上的服务器)。我们将测试服务器用于大型项目,但我现在不是在谈论它们。
- 我们不反对测试,但使用TDD的文化在这里很年轻。
- 在一个网站上工作是在一两个月内完成的,之后我们只做了一些小的改进或修复小错误,我们很少这样做。
所以它是这样的:
- 开发人员获得紧急任务(或多个)或从故障单系统中选择一个或两个。
- 他做出改变并测试它们。
- “hg pull -u”
- “hg commit”
- “hg push”
- 部署
(实际上,步骤3-6是使用fabfile.py完成的。当然它要求提交消息)
- 继续执行其他任务(也许还有其他项目,我们有很多项目。)
醇>
我发现我们的流程非常破碎。但我认为可以改进。我没有很好的开发经验。我的同事也不是(更糟糕的是,我是开发者,我是最有经验的人)。
我们正努力将“最佳做法”用于我们的最佳作品,但我们发现它们对于小型网站而言过于复杂。对于小型网站,“遗留”代码的问题不是很烦人,所以我们更喜欢速度和轻松。我希望你在告诉我的时候考虑一下。
那么,有什么观察或评论吗?请分享您的经验。谢谢。
我们希望改进的一系列事项:
- 以某种方式进行更改的“安全”
- 时间管理 - 我们希望看到我们花费更多次的任务
- 添加/更改项目工作人员的轻松程度
- 减少过度和不必要的沟通