문제

내가 틀렸다면 정정하십시오. 그러나 "빌드"는 "컴파일"이며 모든 언어가 컴파일되는 것은 아닙니다.지속적인 통합에는 구성 요소를 구축하여 단위 테스트 이상으로 계속 작동하는지 확인하는 작업이 포함되는데, 이는 지나치게 단순화되었을 수 있습니다.하지만 프로젝트에 컴파일되지 않는 언어가 포함되어 있는 경우 어떻게 야간 빌드를 수행하거나 지속적인 통합 기술을 사용합니까?

도움이 되었습니까?

해결책

흠...저는 "구축"을 "소프트웨어 시스템의 모든 결과물을 준비, 패키징 및 배포"하는 것으로 정의하고 싶습니다.기계어 코드로의 컴파일은 빌드의 여러 단계 중 하나일 뿐입니다.다른 사람들은 scm-system에서 최신 버전의 코드를 확인하고, 외부 종속성을 가져오고, 소프트웨어가 배포되는 대상에 따라 구성 값을 설정하고, "작동/실행 중"인지 확인하기 위해 일종의 테스트 스위트를 실행할 수도 있습니다. 실제로 배포하기 전에 '빌드'를 선택하세요.

"빌딩" 소프트웨어는 프로그래밍 언어와 관계없이 모든 소프트웨어에 대해 수행될 수 있고 수행되어야 합니다.해석된 언어에는 구문적 또는 구조적(예:잘못된 매개변수로 메소드 호출 등) 오류는 일반적으로 런타임에만 감지됩니다(빌드에 이러한 오류를 확인하는 별도의 단계가 없는 경우).~와 함께 PHPLint).

따라서 (자동화된) 테스트 케이스(단위 테스트와 유사 - 참조) PHPUnit 또는 단순 테스트 - 및 프런트엔드 테스트 - 참조 셀렌)은 대규모 PHP 프로젝트에서 코드의 건강을 보장하는 데 더욱 중요합니다.

PHP를 위한 훌륭한 빌드 도구(예: Java용 Ant 또는 Ruby용 Rake)도 있습니다.

CI 시스템과 같은 신크 또는 허드슨 강 단순히 자동으로(변경 사항이 scm에 체크인될 때마다) 코드를 패키징하고, 명백한 오류가 있는지 확인하고, 테스트를 실행하는 데 사용됩니다(간단히:빌드를 실행하고) 결과를 개발팀에 다시 보고하세요.

다른 팁

현재 소스 제어 트렁크의 일일 태그를 만드시겠습니까?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top