2016-07-29 3 views
0

Codeship тянет клон с глубиной 50, чтобы ускорить процесс сборки. У нас был запрос тянуть, что было более 50 фиксаций (редко, но бывает), и наше развертывание катализировать не удалось со следующей ошибкой:Развертывание не выполнено из-за неглубокого клонирования

Warning: Permanently added '<deployment host> 
to the list of known hosts. 
Counting objects: 6551, done. 
Delta compression using up to 32 threads. 
Compressing objects: 100% (2626/2626), done. 
Writing objects: 100% (6551/6551), 23.57 MiB | 16.37 MiB/s, done. 
Total 6551 (delta 3843), reused 6551 (delta 3843) 
To <>.git 
! [remote rejected] dev -> master (shallow update not allowed) 
error: failed to push some refs to '<>.git' 

После раздавливания несколько фиксаций мы смогли развернуть, но мы столкнулись с проблемой, когда у нас был довольно большой PR, который нужно было объединить. Во избежание ошибки

' ! [remote rejected] dev -> master (shallow update not allowed) ' 

Мы добавили следующий сценарий к нашему конвейеру развертывания, и все сработало нормально.

if [ -f ${HOME}/clone/.git/shallow ]; then git fetch --unshallow; fi 

ответ

1

Мы добавили следующий сценарий к нашему конвейеру развертывания, и все сработало нормально.

если [-f $ {HOME} /clone/.git/shallow]; затем git fetch --unshallow; fi

+0

Вышеприведенная команда будет извлекать всю историю репозитория, только если это мелкий клон. Codeship рекомендует добавлять это непосредственно перед развертыванием (например, через развертывание на основе сценариев), поэтому он не извлекает все изменения, когда вы выполняете только свои тесты. Интегрированные развертывания автоматически не очищают репозиторий, если развертывание основано на выполнении 'git push' – mlocher

+0

. Мы запускаем развертывание на основе сценариев, поэтому нам пришлось добавить это. Раньше мы не сталкивались с этой проблемой, и поиск в google возвращал совершенно разные ответы. Поскольку кодовой порт делает мелкий клон для ускорения процесса сборки, это всего лишь проблема для более чем 50 коммитов. Я просто хотел бросить это там для тех, кто в этом нуждается. Однако, спасибо. – arenfroe

Смежные вопросы