Sitecore的最佳Git工作流

Sitecore的最佳Git工作流,git,sitecore,bitbucket,atlassian-sourcetree,git-flow,Git,Sitecore,Bitbucket,Atlassian Sourcetree,Git Flow,Sitecore是我公司使用的一个内容管理系统。我们有三个环境:Dev、Stage和prod 我们在应用Sitecore的相同流程时遇到了问题,因为有两种不同类型的人对站点进行更改 一种是开发人员,他们创建一个特性分支来处理一些特性,并在开发分支中进行集成。 其他人是在创建动态内容的临时站点上工作的超级用户。动态内容无处不在,因此无法将其隔离 因此,在部署期间,我们必须经历一个痛苦的过程,将开发人员所做的更改与阶段中的更改合并起来,以便为部署做好准备。是否有任何git工作流可以用于此类场景?谢谢

Sitecore是我公司使用的一个内容管理系统。我们有三个环境:Dev、Stage和prod

我们在应用Sitecore的相同流程时遇到了问题,因为有两种不同类型的人对站点进行更改

一种是开发人员,他们创建一个特性分支来处理一些特性,并在开发分支中进行集成。 其他人是在创建动态内容的临时站点上工作的超级用户。动态内容无处不在,因此无法将其隔离


因此,在部署期间,我们必须经历一个痛苦的过程,将开发人员所做的更改与阶段中的更改合并起来,以便为部署做好准备。是否有任何git工作流可以用于此类场景?谢谢

这不是一个git,而是一个组织问题。您不能让开发人员进行生产(即使用动态实时数据),也不能在开发站点上进行生产。您必须在解决合并冲突时浪费大量时间

为了解决这个问题,将这两个字段分开——这可以通过在gitflow之上应用时间约束来实现(对于git模式来说,这似乎是一个不错的选择)。然后,您的保守发布方式将如下所示:

1) 经理抓取日历并定义日期:功能冻结、开发冻结、内容冻结、发布

2) 开发人员在特性冻结之前添加特性,然后进行集成测试并完成版本工作,直到开发人员冻结为止。在这之后,您可以确保版本不会再因开发而改变

3) 然后是内容人,发挥他们的魔力,直到内容冻结。通常,这不应干扰正确开发和测试的cms的功能

4) 进行测试和编辑

5) 释放

但更好的是: 对于像cms这样具有敏捷潜力的东西来说,这是一个相当漫长的过程。如果你想进行更持续的集成,不要使用gitflow,不要使用离散版本:从生产中分支,开发单个功能,测试,合并,修复错误;内容也一样。时间框架:最多几个小时到几天,越短越好。合并冲突的可能性将是最小的,因为主版本的变更时间很紧,而两个独立版本之间的差异很大(谷歌敏捷开发、持续集成)


关于内容分离的一句话:当您说您很难将功能合并到内容时,这里还有另一个问题:内容不应干扰编程功能,尤其是在内容管理系统中。如果是这样的话,你要么需要更多地分离开发者和用户,要么——更好的方式——让他们更多地相互交谈。定义整合双方的流程,并使其在组织上不可能通过合作创造冲突。如果可能的话,让他们坐在一起。根据谁在处理密切相关的主题,更换座位。至少定期(每天)召开团队会议,并在这些会议之间进行对话。把你的时间安排得很紧(在里程碑之间谈论一些非常小的工作,而不是整个事情的更多压力…)

谢谢!我将尝试采纳你们的一些建议。