Magento 2에서 config.php를 관리하는 방법


15

우선 그것은 이미 대답 한 질문 일 수도 있지만 그 주제에 대해서는 아무것도 찾지 못했습니다.

문제는 아니지만 config.phpMagento 2 에서 파일을 관리하는 가장 좋은 방법에 대한 질문입니다 .
실제로 우리의 config.php버전은 (기본적으로 M2 .gitignore파일) 버전이 아니기 때문에 저장소에 없습니다. 문제는 누군가 프로젝트를 설치할 때이 파일이 없지만 이미 데이터베이스를 가지고 bin/magento setup:install ...있어서 파일을 생성하기 위해 실행할 수 없다는 것 입니다.
우리는 bin/magento setup:upgrade선언되지 않은 모듈을 추가 config.php하지만 파일이 존재하고 bin/magento module:enable모듈을 추가 할 수있는 경우에만 추가하지만 프로젝트를 배포하거나 설치할 때마다 시작하지 않기를 원합니다.

내 질문 (들) :
- 우리는 제거해야합니까 config.php에서 .gitignore그것을 및 버전?
-리포지토리에 처음으로 추가하고 .gitignore나중에 다시 배치해야합니까?
-이 파일을 관리하는 가장 좋은 방법은 무엇입니까?


1
2.2 이후 VCS에 추가하는 것이 좋습니다
— weynhamz

안녕하세요 @TechliveZheng 정보 주셔서 감사합니다! 그것에 대한 소스 / 설명이 있습니까?
— Matthéo Geoffray

답변:


15

우선, 아주 좋은 질문입니다.
그러나 ... 나는 이것에 동의하지 않습니다.

문제는 누군가 프로젝트를 설치할 때이 파일이 없지만 이미 데이터베이스를 가지고 있기 때문에 실행할 수 없다는 것입니다 bin/magento setup:install...

프로젝트를 설치할 때 이미 데이터베이스가 있으면 config.php데이터베이스가있는 곳에서 파일을 가져와야한다고 말하고 싶습니다 .
이렇게하면 달리지 않아도되며 setup:install모든 것을 갖추게됩니다.

다음 시나리오로 인해이 파일의 버전을 지정하지 않는 것이 좋습니다.

  • dev env에 새 모듈을 추가합니다.
  • 당신 setup:upgrade은 모듈이 나타나지 않도록 실행config.php
  • 코드를 커밋하고 다른 환경에 배포합니다.
  • 다른 env 인스턴스는 새 모듈이 이미 설치되어 있다고 생각하고 오류가 발생합니다.

따라서 최고의 솔루션 (IMO)은 버전을 지정하지 않고 귀하의 경우에 따라이 작업을 수행하는 것입니다.

  • 프로젝트와 데이터베이스를 다른 곳에서 복제하면 오래된 데이터가 없도록 config.php파일을 (와 같은 다른 파일과 함께) 복제해야 pub/media합니다.
  • 리포지토리의 파일 만 복제하고 깨끗한 슬레이트에서 시작하고 복사하지 말고 config.php설치 프로그램을 실행하면됩니다.

나는이 솔루션에 대해 생각하지 않았지만 가장 실용적인 것으로 보이지는 않지만 실제로는 가장 논리적 인 것 같습니다. 우리는 이런 식으로 테스트 할 것입니다. 그것이 당신을 귀찮게하지 않으면 나는 당신의 대답을 수락하기 위해 하루의 끝을 기다릴 것입니다. 어쩌면 다른 조언이 주어질 것입니다. 어쨌든 감사합니다!
— Matthéo Geoffray

repo에서 config.php를 제거하고 .gitignore에 추가했습니다. 다른 환경이 존재하지 않을 때 (개발자 모드에서) 새 config.php 파일을 생성하지 못했습니다.
— dchayka

"실패"란 무슨 뜻입니까? 다른 환경에 설치하려고 했습니까?
— Marius
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.