온라인 상점의 모든 측면을 관리하려는 사람에게 최고의 개발 워크 플로가 무엇인지 알고 싶기 때문에이 질문을 게시하고 있습니다.
물론 모든 웹 개발과 마찬가지로 전체 소프트웨어 솔루션의 라이브 카피와 최소한 하나의 개발 카피를 갖는 것이 매우 중요합니다. 그러나 Magento를 관리하는 것은 다른 "파일 기반"소프트웨어를 관리하는 것과는 다릅니다. 왜냐하면 데이터베이스 구성 요소도 포함되어 있기 때문에 소스 제어를위한 VCS 도구로 Git과 같은 도구를 사용할 수 있다는 사실 외에도 라이브 버전과 개발 버전 간의 데이터베이스 차이 관리에 대해 설명합니다.
물론 cron을 통해 라이브 데이터베이스를 백업하고 백업에서 소스 컨트롤에 SQL INSERT 문을 삽입 할 수는 있지만 두 데이터베이스는 별도로 진화하는 반면 고객은 라이브 데이터베이스에 들어가는 주문을 한 손으로 등록하고 주문할 수 있습니다. 개발 데이터베이스가 개별적으로 업데이트되기 때문입니다. 개발 및 라이브 버전을 병합 할 때 php 파일은 git를 통해 문제없이 업데이트 할 수 있습니다 (데이터베이스 구성 세부 정보를 호스팅하는 단일 파일에서 gitignore 사용). 데이터베이스 파일은 어떻습니까? 재해를 일으키거나 시스템을 손상시키지 않고 두 백업에서 INSERT SQL 문이 포함 된 두 파일을 병합하려면 어떻게해야합니까?
이것은 내가 직면하고있는 Magento 개발 라이프 사이클의 그늘진 부분입니다 : 데이터베이스 차이점 관리.
Magento 저장소의 개발 / 테스트와 라이브 버전간에 다른 데이터베이스 내용을 동기화하는 유일한 솔루션처럼 Magento 관리자 패널을 통해 개발 버전에서 변경된 모든 내용을 종이에 적어 두는 것 같습니다. Magento가 오프라인 상태가되어 유지 관리 모드로 전환되는 동안 실수를 한 다음 모든 것이 테스트되고 파일로 작동되면 라이브 버전으로 이동하여 동일한 변경 사항을 수행하기를 바랍니다. 이것은 수동 프로세스이므로 오류가 발생하기 쉽습니다.
그렇다면 테스트 마 젠토 서버와 라이브 마 젠토 서버 간의 데이터베이스 동기화를 처리하는 더 좋은 방법은 무엇입니까?
감사.