사용자 환경에 따라 크게 달라질 수 있으므로 간단한 요리 책 응답은 없습니다. 여러분이 무엇을 생각하든 배포 스크립트가 소스 제어에 직접 적용되므로 스크립트 기반 접근 방식을 적극 권장합니다. 이러한 스크립트를 사용하면 빌드 솔루션과의 통합이 향상됩니다 (아래 참조).
프로덕션 환경에서 실행하는 가장 간단한 스크립트는 소스 제어에서 최신 버전을 가져 오거나 특정 버전을 가져 오는 명령 일뿐입니다.
다음 과제는 데이터베이스 배포입니다. 중소 규모 프로젝트에서 가장 좋아하는 솔루션은 각 데이터베이스에 스키마 버전 테이블을 유지하고 모든 DDL 및 데이터 업데이트 스크립트 (소스 코드가 압축 된 아카이브에서 사용하는 데이터 소스 포함)를 보유하는 것입니다. 스크립트는 연속적으로 번호가 매겨지며 (000001 ..., 000002 ... 등으로 시작), 배포 스크립트는 먼저 기존 데이터베이스를 백업 한 다음 스키마 버전 테이블에서 마지막으로 실행 한 데이터베이스 스크립트를 가져온 다음 실행합니다 새 버전의 데이터베이스 스크립트가 소스 제어에서 올바른 순서로 발견되어 그에 따라 스키마 버전 표가 업데이트됩니다.
이 방법을 사용하면 데이터베이스를 처음부터 다시 작성할 수 있습니다. 함께 두 가지 접근 방식이 빠르게 조금 더 복잡한 시나리오 등 여러 가지 준비 기계 (으)로 코드베이스, 당신의 QA 환경, 베타,
를 배포하는 것이 가능하게
, 당신이해야 Kieveli 외에도 계속해서 통합 빌드 서버를 실행하십시오. al. 기본적으로 전체 배포를 정기적으로 "다시 작성"하므로 위와 같이 "수동으로"실행하는 스크립트를 포함하고 있습니다.
데이터베이스 배포는 각 데이터베이스 스크립트에 대한 롤백 스크립트를 만들어 더 정교하게 만들 수도 있습니다. 그런 다음이를 처리 할 수있는 작은 컨트롤러 앱을 작성해야합니다. 이런 종류의 것들을위한 몇 가지 OSS 솔루션이 있으며 그 중 하나가 당신의 요구에 맞을 수도 있습니다.
하지만, 당신이하는 PHP 프로젝트를위한 생산 환경 ;-)
허드슨은 굉장합니다. – stimms