如果我有两个项目,一个输出.dll和.lib存根,另一个链接到.lib存根,并且通过扩展在运行时使用生成的.dll,如何设置我的TC构建系统和GIT存储库干净利落:
我最初的想法是在客户端应用程序中使用相应的.lib和.dll文件(如第三方二进制文件),然后在建立新的.dll时由TC检入;让TC 将推入git有点奇怪,但似乎它可能有用。或者,我可以在解决方案的预构建步骤中获得逻辑,以便获取最新的二进制文件,我更喜欢这个,因为构建用户可能没有TC的凭据,他们实际上可能不想获得最新版本。
如果第一个解决方案是可行的,那么TC是否可以轻松获得支持?或者我是否必须在构建过程中进行全面检出,更新,添加/提交,推送?我没有考虑过这些解决方案是否有任何陷阱?
答案 0 :(得分:0)
您可以拥有一个脚本,该脚本将从TeamCity构建配置中在开发人员计算机上下载库。该脚本将在本地使用。另请参阅http://confluence.jetbrains.com/display/TCD8/Patterns+For+Accessing+Build+Artifacts
在服务器上,您可以使用快照+工件依赖关系来继续构建这些项目:http://confluence.jetbrains.com/display/TCD8/Build+Dependencies+Setup
快照依赖项提供源同步,因此如果您更改库中的某些API并同时在依赖项目中使用它,您可以确保TeamCity将正确构建它。