2016-07-29 3 views
0

코드 프로세스는 빌드 프로세스의 속도를 높이기 위해 깊이가 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' 

을하지만 우리는 문제가 경우에 달렸다 우리는 합병 될 필요가있는 다소 큰 홍보를 가지고있었습니다. 오류를 피하려면

' ! [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

위의 명령은 얕은 복제 인 경우에만 저장소의 전체 기록을 가져옵니다. 코드 명은 배치를 직접 (예 : 스크립트 기반 배치를 통해) 추가하기를 권장하므로 테스트를 실행할 때만 모든 개정을 가져 오지 않습니다. 배포가'git push '를 기반으로하는 경우 통합 배포는 저장소를 자동으로 무효화합니다. – mlocher

+0

우리는 스크립트 기반 배포를 실행하고 있으므로 추가해야합니다. 우리는 이전에이 문제에 부딪치지 않았고 Google 검색은 완전히 다른 답변을 반환했습니다. 코드 작성은 빌드 프로세스의 속도를 높이기 위해 얕은 복제본을 작성하기 때문에 50 개가 넘는 pr의 문제 일뿐입니다. 나는 그걸 필요로하는 사람을 위해 이것을 버리고 싶었습니다. 그래도 감사합니다. – arenfroe

관련 문제