Мы много лет работали с TeamCity и несколько недель с git в качестве системы контроля версий. Я настроил интеграцию с TeamCity, и она работает нормально. У нас есть четыре разных проекта, которые используют git
В последнее время с перебоями перестали работать некоторые проекты.
Сборка не запускается. Подобные сообщения отображаются красным цветом. (с разными агентами):
Не удалось запустить сборку № 1094 на Teamcityagent8_Continuous5 (и еще 1)
Журнал сборки очень мало говорит:
[16:12:46]Checking for changes
[16:12:49]Failed to start build
[16:12:49]Failed to collect changes, error: Error collecting changes for VCS repository 'http://foo-app-sprint:7990/scm/BAR/qux.git#master'
'git fetch' command failed.
stderr: Socket Closed
[16:12:49]Cannot calculate build metric 'percent of class coverage' - no value
Как ни странно, есть и другие проекты с очень похожей конфигурацией, которые прекрасно работают. Они используют одни и те же агенты сборки.
Мы используем Atlassian Stash в качестве сервера Git. Я просмотрел там все журналы, и ничего не происходит, когда я заставляю бежать в командном городе. Итак, казалось бы, TeamCity даже не доходит до сервера Git.
Если я тестирую соединение VCS в TeamCity, оно работает.
Я протестировал перезапуск Stash. Это не помогло.
Мы работаем с ветки функций. Но я тестировал их выключение, и это не помогло.
Сегодня сборки действительно пару раз работали, но проблема возвращается.
Мы используем TeamCity Enterprise 7.1.4 (сборка 24331) и Atlassian Stash v2.1.2. И агенты сборки, и Stash работают на серверах Windows.
Есть идеи, что не так и как это решить?
Я опубликовал этот вопрос на форуме разработчиков jetbrains, но не получил ответов.
У меня была аналогичная проблема с TeamCity.
Ошибка: команда git fetch не удалась. . . Вызвано отсутствующей фиксацией.
Получение на моей машине разработки прошло нормально. Также отсутствующая фиксация присутствовала с использованием командной строки.
$ git show b18264d
Я исправил эту ошибку:
$ git clone --bare MyGitRepo MyGitRepo.git
Последняя часть ответа @Fuyu Persimmon - это то, что исправило для меня.
Вам просто нужно удалить кеш git на сервере сборки (путь по умолчанию .BuildServer/system/caches/git
[источник]) и снова начните сборку.