执行git tfs rcheckin时出现TF26198错误

时间:2014-01-31 15:22:06

标签: git tfs tfs2010 git-tfs

我们在工作中使用TFS 2010,并且我使用git-tfs,因此我可以在本地使用git。我最近升级了我的机器,并将所有本地存储库文件夹复制过来。

我似乎能够从TFS中提取并在本地提交。但是当我git tfs rcheckin时,我现在收到错误:

TF26198: The work item does not exist, or you do not have permission to access it.

使用git tfs checkintool时会有效。

我认为我收到此错误是因为原始的git tfs clone是在另一台计算机上完成的。阅读git-tfs文档,听起来我应该从我的旧机器(而不是复制)进行git clone,然后是git tfs bootstrap。但是,在尝试此操作时,我仍会遇到同样的错误。

任何可能导致这种情况的想法?我能想到的另一个不同之处是我的旧机器安装了VS2010和VS2012,而我的新机器只安装了VS2012。

2 个答案:

答案 0 :(得分:9)

git-tfs parses your commit comments提供与您的变更集的工作项关联。默认情况下,如果您输入#1234,则git-tfs checkinrcheckin命令会尝试将工作项1234与签入相关联。

如果您在提交消息中使用#1234以将这些与不同的错误跟踪系统相关联,那么这显然是冲突的。在这种特殊情况下,git-tfs无法找到TFS工作项,并且正在为您提供此消息。

recently开始,您可以提供配置值:

git-tfs.work-item-regex

以覆盖#1234行为。虽然无法禁用此功能,但您可以将其设置为不太可能与之冲突的内容。例如:

git-tfs.work-item-regex=TFS WORK ITEM:(?<item_id>\d+)

答案 1 :(得分:-2)

  

我认为我收到此错误是因为原始的git tfs克隆是在另一台计算机上完成的。阅读git-tfs文档,听起来我应该从我的旧机器(而不是复制)进行git克隆,然后是git tfs bootstrap。但是,在尝试此操作时,我仍会遇到同样的错误。

它会改变什么,因为当git-tfs与TFS交互时会出现问题......

  

任何可能导致这种情况的想法?我能想到的另一个不同之处是我的旧机器安装了VS2010和VS2012,而我的新机器只安装了VS2012。

更新:请参阅@ethomson的其他答案,这确实是一个很好的答案......