我看过很多关于Git工作流程的建议,但是它对我们来说不是非常有用。我想就我们的情况征求一些意见。
我们是一家来自俄罗斯的小型网络开发公司。我们的许多订单都是公司或活动的小型网站。它为我们的工作流程添加了一些细节。
-
“发布”或“版本”没有意义。
-
大多数更改必须很快完成:获取关于错误或增强的消息/实施/查看本地计算机/部署/测试,以防出现问题。
-
在一开始,没有一个特定的“特征”的抛光概念。开发人员得到了一个瀑布式的初始文档、模型、HTML布局和关于快速更改的电子邮件。(是的,这对于这些项目来说是可以的,它们非常小,需要以非常快的速度进行更改,以重新加载页面)。当然,我们在Redmine中使用Tickets和所有这些功能,但是对于每个附加功能使用单独的分支非常困难,甚至在一次提交中尝试不添加两到三个小页面/改进。
-
在大多数情况下,网站上只有两三个人在工作。其中一个只写html/css/js,另一个或两个写python(django)代码。他们的职责几乎不相交,我从来没有见过一个问题,即只使用一个分支进行开发。
-
没有测试服务器(除了每个开发人员的本地机器上的服务器)。我们在大型项目中使用测试服务器,但我现在不讨论它们。
-
我们并不反对测试,但是使用TDD的文化在这里非常年轻。
-
在一个单独的网站上工作是在一两个月内完成的,之后我们只做一些小的改进或修复小的bug,很少这样做。
就像这样:
-
开发人员得到一个紧急任务(或多个)或从票据系统中选择一个或两个。
-
他做了改变并测试了它们。
-
“HG拉-U”
-
“HG提交”
-
“Hg Press”
-
部署
(实际上,步骤3-6是用fabfile.py完成的。当然,它要求提交消息)
-
继续执行其他任务(可能还有其他项目,我们有很多)。
我觉得我们的过程不太顺利。但我认为这是可以改进的。我没有很好的发展经验。我的同事也不这样(更糟的是,我是开发主管,我是最有经验的)。
我们试图用“最佳实践”来实现我们的最佳作品,但是对于小型网站来说,我们发现它们太复杂了。对于小型网站,“遗留”代码的问题不是很烦人,所以我们更喜欢速度和简单。我要你在给我建议的时候考虑一下。
那么,有什么意见或评论吗?请分享你的经历。谢谢您。
我们希望改进的事项列表:
-
以某种方式做出改变的“安全性”
-
时间管理-我们想看看哪些任务需要花费更多的时间
-
增加/改变项目工作人员的容易程度
-
减少过度和不必要的沟通