我们有多个开发人员在同一个项目上工作。我们都在不断添加基于数据库条目引用的其他类。所以我们现在有几百个课程。我所看到的是,如果我创建CLASSA并且其他人做了Get Latest,则CLASSA不会被添加到该人的解决方案资源管理器(项目)中,但它会转移到该人的编码文件夹。他们必须手动进入并添加/存在他们的项目。
这是TFS的正确/预期功能吗?
由于
答案 0 :(得分:2)
这是TFS的正确/预期功能吗?
取决于您如何将CLASSA添加到项目中。
似乎CLASSA被添加到TFS并成为变更集的一部分,但.csproj(或.vbproj)更改不会成为变更集的一部分。如何将新文件CLASSA添加到项目中?如果您使用解决方案资源管理器添加新项目(右键单击项目|添加|(新项目...或类...),VS将自动挂起更改项目文件和新类文件。在办理登机手续时,两者都将一起承诺。
答案 1 :(得分:1)
原因是您没有签入或将项目文件的更改推送到源代码管理。它将在项目文件的ItemGroup中添加Compile部分,然后VS可以识别该类文件包含在项目中。
<ItemGroup>
<Compile Include="App_Start\BundleConfig.cs" />
<Compile Include="App_Start\FilterConfig.cs" />
<Compile Include="App_Start\IdentityConfig.cs" />
<Compile Include="App_Start\RouteConfig.cs" />
<Compile Include="App_Start\Startup.Auth.cs" />
<Compile Include="Controllers\AccountController.cs" />
<Compile Include="Controllers\HomeController.cs" />
<Compile Include="Controllers\ManageController.cs" />
<Compile Include="Global.asax.cs">
<DependentUpon>Global.asax</DependentUpon>
</Compile>
<Compile Include="Models\AccountViewModels.cs" />
<Compile Include="Models\IdentityModels.cs" />
<Compile Include="Models\ManageViewModels.cs" />
<Compile Include="Models\UserInfo.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Startup.cs" />
</ItemGroup>
对于那种情况,我建议让一个用户(例如开发人员经理)在新表添加到数据库而不是多个开发人员添加他们想要的类时向项目添加必要的类,否则他们需要在检查时处理冲突in或获取最新文件。