Bra*_*rad 0 version-control serena pvcs
我的任务是为我们的Web开发人员设置版本控制.由于我们已经有其他非网络开发人员使用它而为我选择的软件是Serena PVCS.
我很难决定如何设置它,所以我将描述我们的系统中如何进行开发,并希望它会产生一些关于如何最好地进行讨论的讨论.
我们有3台服务器,开发,UAT /暂存和生产.Web开发人员只能访问在开发服务器上编写和测试其代码.一旦他们编写代码,他们必须通过认证过程才能将代码移动到UAT/Staging,然后在那里彻底测试代码之后,它就会转移到Production.
似乎让开发人员对他们的开发代码使用版本控制,他们不断变化,测试将是一个烦恼.通常,一次只有一个开发人员在一个模块上工作,因此没有太多(如果有的话)覆盖其他人工作的风险.
我的想法是让他们只有在准备好去UAT/Staging时才使用版本控制.这使他们无需不断检查代码即可开发和测试.
然后,认证组可以使用版本控制来帮助看看有什么变化了的模块制作,并确保他们总是得到从开发商的最新修订,竖起就UAT /舞台(现在我们依靠开发商拉链"更改他们更改的文件并通过Web请求系统上传它们.
这将处理开发的文件方面,但使整个数据库方面不受版本控制.这是我需要考虑的其他事情......
任何想法或想法将不胜感激.谢谢.
我不会将源代码控制视为烦恼.请参阅尼克斯答案的原因.
如果我是你,我不会自己决定,因为这不是在某些服务器上设置版本控制软件而是改变和改进开发过程的问题.
在您的情况下,可能值得向 您的开发人员和质量保证解释和讨论发布分支.这意味着您的开发人员决定将哪个功能包含到发行版中,并且当临时工作人员忙于测试源的"临时"分支时,您的开发人员已经可以在不干扰分段团队的情况下处理下一个版本.
您还可以考虑功能分支,这意味着网站的每个特定新功能都有一个新分支.如果实现该功能,则将这些分支合并回来.
但同样:确保您的团队同意新的开发过程.否则,您通过设置版本控制系统浪费您的时间.
该过程至少应包括:
我使用过Serena,这确实令人烦恼.除了工作流开销的不愉快之外,Serena还会在签入检查流程之上,除了最简单的任务之外,做任何事情都是一件非常痛苦的事.
在Serena ChangeMan中,本地计算机上的所有代码都通过中央服务器进行管理.这是一个非常糟糕的设计.这意味着通常由开发人员完成的大量日常分支维护工作必须经历具有管理员权限的任何人,使得该人1)成为瓶颈并且2)因为他们有一个吸吮灵魂的工作而感到愤怒.
集中管理还严格限制开发人员可以在自己的计算机上使用代码.例如,如果要在盒子上本地创建代码的第二个副本,只是为了进行快速测试或其他任何操作,您必须让管理员在您的盒子上设置第二个存储库.当您限制此类开发人员时,会限制团队的工作效率和创造力.
此外,工具很糟糕,用户界面很糟糕.你永远无法找到已经接受过培训的开发人员,因为它太模糊了.
所以,如果另一个团队说你必须使用Serena,那就回去吧.那个产品很糟糕.