Ошибка TF26198 при выполнении git tfs rcheckin

Мы используем 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 ответа

Решение

git-tfs анализирует ваши комментарии коммитов, чтобы предоставить ассоциации рабочих элементов с вашими наборами изменений. По умолчанию, если вы вводите #1234тогда git-tfs checkin а также rcheckin Команды попытаются связать рабочий элемент 1234 с регистрацией.

Если вы используете #1234 в ваших сообщениях о фиксации, чтобы связать их с другой системой отслеживания ошибок, это явно конфликтует. В этом конкретном случае git-tfs не может найти рабочий элемент TFS и предоставляет вам это сообщение.

В последнее время вы можете указать значение конфигурации:

git-tfs.work-item-regex

чтобы переопределить #1234 поведение. Хотя отключить эту функцию невозможно, вы можете установить для нее то, с чем вы вряд ли будете конфликтовать. Например:

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

Я предположил, что получаю эту ошибку, потому что оригинальный клон git tfs был сделан на другом компьютере. Читая документы git-tfs, звучит так, как будто я должен делать клон git со своей старой машины (а не копировать), а затем загрузиться с git tfs. Однако, пытаясь это, я все еще получаю ту же ошибку.

Это ничего не изменит, потому что это проблема, когда git-tfs взаимодействует с TFS...

Есть идеи, что может быть причиной этого? Единственное другое отличие, о котором я могу думать, это то, что на моей старой машине установлены VS2010 и VS2012, тогда как на моей новой машине установлена ​​только VS2012.

Обновление: см. Другой ответ @ethomson, который действительно является хорошим ответом...

Другие вопросы по тегам