代码之家  ›  专栏  ›  技术社区  ›  danswain

TFS Changeset problem, files missing but present if viewed via “view history” open changeset

  •  0
  • danswain  · 技术社区  · 16 年前

    having a weird problem with TFS (TFS2008). We've done a merge into our Main trunk. We've resolved the conflicts and we've checked in associating it with a single work item.

    So we have our WorkItem with a single changeset in it.

    我们的生成失败,因为正在从tfs获取csproj文件的早期版本。如果我打开工作项和“转到”链接并打开变更集,则csproj文件不会列出。实际上,没有列出“合并/编辑”的文件…还有一些人失踪了,CSproj是第一个。

    如果我在所说的csproj文件上查看历史记录,我会看到它所在的最后一个变更集。如果我打开该变更集(与工作项关联的编号相同),那么csproj文件以及所有其他“合并/编辑”文件都存在且正确。

    If anyone has any ideas why this might happen and how to resolve it, it'd be much apreciated.

    谢谢

    1 回复  |  直到 16 年前
        1
  •  2
  •   Robaticus    16 年前

    If you do a view history on the MAIN trunk, and look at the changeset that you merged from your development branch, does the CSPROJ show there? It sounds like it may have not been picked up in the merge.

    如果它确实显示在该变更集中,那么在合并时是否有可能发生冲突?如果是这样,我们就遇到了这样一个问题:进行合并的人无意中选择了保留目标版本。在这种情况下,冲突得到解决,就TFS而言,不再需要合并该文件。

    如果您有一个似乎丢失的文件列表,并且尝试进行其他合并时没有发现任何问题,则可以从命令行强制进行合并(如下所示):

    TF.EXE merge /force /version:T "$/Project/Dev/Src/FileThatWasMissed.csproj" "$/Project/Main/Src/FileThatWasMIssed.csproj"

    当然,请记住更改文件名,并确保在执行此命令时位于映射目录中。