MVC Web应用程序功能开发开发/生产策略



有一个web应用程序。假设我想添加一个功能。我可以写一些代码,在本地测试它,确保它能工作,然后发布它,以便公众可以使用。不过,有些功能非常复杂,不太容易以同样的方式编写、测试和交付。

我想让它成为我目前正在开发的特定功能,即使我发布了该应用程序,也不能向公众开放。

假设我想在应用程序中添加一个自定义的面包屑功能(只针对一个页面以保持简单)。我可以写一段代码,代码周围有一些IsProductionReady变量,这些变量保存在Config文件中的某个位置,然后一旦完成,我就可以将IsProduction就绪设置为True,所以现在它就出现了。

我还希望能够切换到任何其他功能/更改并发布它们,而不会影响任何代码,也不会显示出Breadcrumb功能开发的任何迹象。当我完成了这个功能后,我希望能够让它向公众开放。

保持功能某个状态的最佳实践或策略是什么?构建它的最佳方式是什么?

如果你使用Git,最好为每个新功能都有一个单独的分支,然后在测试和批准分支后,你可以将它们合并到你的主开发分支中,运行另一个回归测试(因为不同的功能可能会干扰其他功能),然后将其移到生产分支。

看看这些网址,我想你可以在其中找到你想要的场景:

http://nvie.com/posts/a-successful-git-branching-model/

http://martinfowler.com/bliki/FeatureBranch.html

https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow

我会在Github上在两者之间有单独的分支,并保持结构不变。当您的功能准备就绪时,请合并到生产分支。

最新更新