使用TFS进行项目团队协同开发的人应该都经历过,在一台新机子上面,新建工作区,下载项目程序文件,一编译,一大堆的错误,咋一看都傻眼了,但仔细看看才发现,原来都是项目的引用丢失了。最后便重新装组件,重新引用组件,完事。但此过程即耗时间,又造成文件的不一致,有可能部门引用组件锁定签出。如果团队的人员工作站和工作区都不固定,开发工作很难协调好。
出现上述错误的原因是TFS不允许签入dll的,所以当在本地引用了一个组件之后,编译时,组件dll文件自动被拷贝到项目的bin\Debug文件夹中,本地可以通过该组件,使用了新的命名空间、新的类,但在新的工作区没有下载到组件的dll文件,所以编译便产生了错误。
最终我们团队使用了一个办法,就是定时将解决方案中的每个项目的bin\Debug文件夹进行打包,并公布出来,新建工作区的成员如果需要,便可以下载覆盖,这样就避免了编译错误。
组件的引用的实际步骤是:在我们引用组件时,VS便将组件dll文件相关信息(包括了地址和版本)记录在项目文件中,当我们进行编译的时候,便将文件拷贝到bin\Debug文件夹,并更新版本。所以如果你引用的是同个解决方案的项目,那就不用理会,VS会自动更新dll文件的。