我有一个由大约 20 名开发人员组成的团队,他们一起在一个项目上工作。这个项目有几个组件,涉及硬件、固件、软件,甚至网络功能。我们想使用 TFS 2013 跟踪整个项目的进度。但是,我们无法弄清楚如何使用 GIT 存储库管理事物的源代码控制方面。硬件团队将需要能够锁定他们的代码来处理它,因为他们正在处理用于布局电路和所有其他硬件的二进制文件。我们目前正在考虑将事物的硬件部分作为自己的项目,而将事物的固件/软件方面作为自己的项目,使用 GIT 存储库。
我们担心的是,TFS 2013 似乎要求任何工作项仅与来自同一项目的签入相关联。所以为了克服这个问题,我们将在同一个项目中拥有所有固件和软件,但分为几个不同的区域。我们担心如果它们都在同一个项目中,并且使用同一个 GIT 源代码存储库,当不同的软件区域在不同的时间发布,并且每个区域有几个分支时,我们可能会遇到问题。结合起来,我们最终可能会得到大量的分支。管理这些有问题吗?
是否可以将 TFS 2013 配置为允许工作项跨项目?是否可以将 GIT 设置为对不同的代码区域使用单独的存储库,即使它们都在同一个 TFS 项目中?
关于如何管理这个有什么建议,或者这在 TFS 2013 中是否无法管理?
感谢您提供任何帮助、评论或建议。
后来添加了这个:
在阅读了这篇文章的答案并与我的一些同事交谈后,在上述情况下,我们遵循的最佳途径似乎是拥有 2 个项目。1 用于硬件,另一个用于软件/固件。硬件将拥有自己的非 GIT 存储库,软件/固件将共享一个 GIT 存储库。我们将在 GIT 存储库中定义主分支。每个软件程序一个。每个程序将被分配一个不同的区域。这样,对于软件和固件,我们可以保持程序隔离,并且在 TFS 中的同一个项目中都可以看到它们,以进行项目管理和协作。它还将允许我们将所有签入与 TFS 项目相关联,并允许 QA 将错误与任务和区域相关联,所有这些都在一个项目中。