我见过很多关于Git工作流程的建议,但它对我们来说并不是非常有用。我想就我们的情况得到一些建议。适用于小型,快速变化和快速完成项目的工作流程
我们是一家来自俄罗斯的小型网络开发公司。我们的很多订单都是针对公司或活动的小型网站。它为我们的工作流程添加了一些细节。
- “释放”或“版本”是没有意义的。
- 大部分更改必须快速完成:获取有关错误或增强/实施/在本地机器/部署/测试时再次查看的信息以防万一出错
- 在一开始没有抛光特定“特征”的概念。开发人员可以获得初始文档,模型,html布局和关于快速变化的电子邮件。 (是的,这对于这些项目来说是可以的,这些项目非常小,并且需要在重新加载页面的速度上进行非常快的改变)。当然,我们使用Redmine中的门票和所有这些东西,但对于每个附加功能都使用单独的分支是非常困难的,甚至在一次提交中尝试不添加两个或三个小页面/改进。
- 在大多数情况下,网站上只有两三个人在工作。其中一个只写HTML/CSS/JS,另外一个或两个写Python(Django)代码。他们的职责几乎没有交集,我从来没有看到只使用一个分支进行开发的单一问题。
- 有没有这样的事情作为测试服务器(每个开发人员的本地机器除外)。我们在大项目中使用测试服务器,但我现在不讨论它们。
- 我们不反对测试,但使用TDD的文化在这里非常年轻。
- 在一个网站上工作是在一两个月内完成的,之后我们只做小改进或修复小错误,而且我们很少这样做。
所以是这样的:
- 开发者获得的一项紧迫任务(或几个)或选择从售票系统中的一个或两个。
- 他进行更改并测试它们。
- “汞拉-u”
- “汞承诺”
- “汞推”
- 部署 (实际上,步骤3-6与fabfile.py完成。当然,它要求提交信息)
- 继续执行其他任务(也可能是其他项目,我们有很多)。
我不觉得我们的过程很破。但我认为可以改进。我没有很好的开发经验。我的同事也没有(更糟糕的是,我是开发主管,我是最有经验的)。
我们正在尝试使用“最佳实践”为我们最好的作品,但我们发现他们过于复杂的小网站。对于小型网站,“遗留”代码的问题不是很烦人,所以我们更喜欢速度和易用性。我希望你在给我一些建议时考虑到它。
那么,有没有意见或评论?请分享你的经验。谢谢。
我们想要的东西的清单,以改善:
- “安全”更改莫名其妙 的
- 时间管理 - 我们想看到哪些任务我们花更多次
- 添加/更改人在一个项目
- 减少过度和不必要的通信工作的容易程度
当你说你正在使用mercurial时,你为什么要问关于git工作流程的建议? – jamessan 2010-10-27 20:21:41
我并没有要求只有git工作流的建议。我刚才说我已经读过很多关于git的内容--hg周围没有那么多噪音。我几乎没有任何问题将git翻译成hg。 – 2010-10-27 20:23:53
这看起来非常像我的工作流程;) – Rook 2011-02-27 22:16:50