2016-09-28 18 views
0

Я работаю с TFS версии 2015 SP3, и у меня возникают проблемы с созданием рабочего определения Gated Checkin Build.Ошибка TFS Gated Checkin при проверке в наборе изменений после сборки succesfull

Шаги сборки строятся для предотвращения сбоя сборки.

Когда сборка успешно завершает работу, сервер пытается проверить внесенные изменения и сбой. Сообщение об ошибке:

The shelveset _Build_56625;Build\ead50f13-855a-45bd-9417-778e04e6fdfe could not be found for check-in

Из того, что я могу собрать это связано с тем, сервер сборки использует GUID из сборки пользователем вместо имени пользователя. (см. рисунок ниже).

Error журнал сборки

2016-09-27T14:22:59.3450903Z Checking if artifacts directory exists: C:\Agent_3\_work\1\a 
2016-09-27T14:22:59.3450903Z Deleting artifacts directory. 
2016-09-27T14:22:59.3607099Z Creating artifacts directory. 
2016-09-27T14:22:59.3607099Z Checking if test results directory exists: C:\Agent_3\_work\1\TestResults 
2016-09-27T14:22:59.3607099Z Deleting test results directory. 
2016-09-27T14:22:59.3763337Z Creating test results directory. 
2016-09-27T14:22:59.4232406Z Starting: Get sources 
2016-09-27T14:22:59.4544938Z Entering TfvcSourceProvider.PrepareRepositoryAsync 
2016-09-27T14:22:59.4544938Z localPath=C:\Agent_3\_work\1\s 
2016-09-27T14:22:59.4544938Z clean=True 
2016-09-27T14:22:59.4544938Z sourceVersion=68725 
2016-09-27T14:22:59.4544938Z mappingJson={"mappings":[{"serverPath":"$/xxx","mappingType":"map","localPath":"\\"}]} 
2016-09-27T14:22:59.4544938Z Syncing repository: xxx(TFVC) 
2016-09-27T14:22:59.4544938Z workspaceName=ws_1_18 
2016-09-27T14:23:00.3451244Z Undo any pending changes under workspace. 
2016-09-27T14:23:01.2669675Z No inconsistencies were found to clean up. 
2016-09-27T14:23:01.7044792Z Workspace Name: ws_1_18;Build\ead50f13-855a-45bd-9417-778e04e6fdfe 
2016-09-27T14:23:01.7669760Z tf unshelve Gated_2016-09-27_04.22.53.2745;MyDomain\MyUser 
2016-09-27T14:23:02.2413159Z edit: C:\Agent_3\_work\1\s\app\xxx\xxx.ts 
2016-09-27T14:23:02.5225711Z Successfully unshelved Gated_2016-09-27_04.22.53.2745;MyDomain\MyUser into workspace ws_1_18;Build\ead50f13-855a-45bd-9417-778e04e6fdfe 
2016-09-27T14:23:02.5225711Z tf get /version:68725 
2016-09-27T14:23:03.0187586Z tf shelve _Build_56625 /replace 
2016-09-27T14:23:03.1906333Z Successfully created new shelveset _Build_56625;Build\ead50f13-855a-45bd-9417-778e04e6fdfe 
2016-09-27T14:23:03.2999952Z Done syncing repository xxx to version 68725 (workspace version C68725) 
2016-09-27T14:23:03.2999952Z Leaving TfvcSourceProvider.PrepareRepositoryAsync 
2016-09-27T14:23:03.4093700Z Running tasks 

Да ... Я прочитал:

On Premise Gated Check-in Fails with "The shelveset ... could not be found for check-in" - Но я не хочу, чтобы сбросить 5 лет истории только, чтобы получить это работать.

https://social.msdn.microsoft.com/Forums/en-US/8016349e-88dd-4fe1-aa6b-13c8d897985f/tfs-2015-on-premise-gated-checkin-fails-with-the-shelveset-could-not-be-found-for-checkin?forum=tfsbuild - Этот вопрос дает мне некоторое представление, но нет рабочих решений.

Мы пытались

  • Создание нового агента
  • Trowing прочь локальные рабочие
+1

хорошо работает с моим TFS15. Трудно решить эту проблему, поскольку у нас нет вашей среды. Даже если вы упомянули о создании нового проекта команды, это не ваше решение. Тем не менее, вы все еще можете создать один для теста, чтобы сузить эту проблему и посмотреть, работает ли стробированная сборка check-in на новом созданном? –

+0

столкнулись с проблемой, которая возникает только в коллекции проектов, обновленной с TFS2013, но хорошо работает с новой коллекцией проектов TFS 2015. –

+0

Я создал новый проект, создав новое определение builddefinition, добавив закрытую проверку. Затем проверяется в новом файле. Сбой сборки произошел с аналогичной ошибкой: [Ошибка] Не удалось найти полки _Build_56722; Build \ ead50f13-855a-45bd-9417-778e04e6fdfe не удалось найти для регистрации –

ответ

0

Причиной наших проблем был двойной сборки Идентичность в базе данных Tfs_Configuration.

С помощью следующего запроса вы можете проверить двойную идентичность:

SELECT * FROM tbl_Identity WHERE PartitionId = 1 AND TypeId = 8 
+0

какое поле удваивается?(есть несколько полей Identity/identifier) ​​ – StingyJack

+0

Привет @StingyJack прошло некоторое время. У вас такая же проблема? –

+0

Да, но только такие вещи, как Display Name, являются обманами в таблице – StingyJack