我有一些问题,下面是这样的场景:
我有一个大型的features/fixes.
1. Recompile Proj B, C, & D
2. Robocopy release files from each project to the Proj A bin folder
3. Recompile/build Proj A and deploy to Integration server.
问题:
注意:我已经研究过Rep中的Rep以及子模块,但不确定我是否需要两者的混合。
如有任何建议,将不胜感激。谢谢,祝您愉快。伏曲祖鲁
发布于 2011-03-01 07:14:59
对于依赖于其他项目的ASP.NET网络应用程序,我们也有类似的情况。
我们的解决方案是将Web应用程序和每个依赖项作为单独的VS解决方案在单独的存储库中创建,然后将B、C、D的存储库定义为A的存储库中的子模块。
A的VS解决方案包括子模块提供的项目B、C和D的副本,这些项目是A项目中的项目参考。
这解决了1和2,因为您可以正常地构建项目A,而B、C和D将自动从源构建,并将DLL复制到A的构建目录中。
发布于 2011-03-01 03:46:28
这绝不是一个完整的提议,但也许是对你问题的部分回答。
发布于 2011-03-11 09:54:05
不知道这是否对任何人有帮助,只是想跟进我自己的问题:
问题:
你能在Proj A的目录结构中包括Proj B,C,&D吗?如果是这样的话,在编译每个项目时,您会将每个项目的发布目录设置为Proj目录吗?
我们决定将proj (Sitecore )作为一个单独的存储库保存在一个rCS文件夹中。此文件夹包含存储库和DLLs文件夹: dlls dev1_PUBLIC dev2_PUBLIC dev3_PUBLIC INTEGRATION_STAGING PRODUCTION_STAGING。
启动一个特性/修复所有开发人员都要安装一个普通的
我们决定让proj、C和D (C#组件)在dotNetProjects文件夹中每个项目都有自己的存储库。每个项目文件夹包含许多存储库: dev1_PUBLIC dev2_PUBLIC dev3_PUBLIC INTEGRATION_STAGING PRODUCTION_STAGING。
启动一个特性/修复所有开发人员将一个ticket/project.
Integration manager,以便他/她可以从公共到INTEGRATION_STAGING.
您将如何/何时将包含Proj、C &D的"dlls“自动化到Proj bin目录中?每个项目的输出文件夹设置为dotNetProjects/releasedlls文件夹,它不是一个存储库,而是一个用于存放与SItecore相关的dll的文件夹。添加特性/修复的开发人员必须在本地运行updateDll.bat才能获得dll的最新版本。下面是简单的脚本:
xcopy /E /Y "\\servername\dotNetProjects\ReleaseDlls\*.dll" C:\development\sitecore\WebSite\bin
注意:
上面的redundancy.
https://stackoverflow.com/questions/5148384
复制