새 M2 프로젝트를 시작할 때 가장 먼저 할 일은 composer를 통해 코어를 설치하는 것입니다.
composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition
이제에서 사용자 정의 모듈 및 테마를 작성할 수 있습니다 app/code
. 그런 다음 내 폴더 composer.*
와 전체 app/code
폴더를 VCS에 추가합니다. 지금까지 모든 것이 정상입니다.
이제 프로젝트에 빌드 도구를 사용하고 싶다고 가정 해 봅시다. Grunt 또는 Gulp라고합시다.
내 자신을 커밋 하면 리포지토리를 복제 한 후 실행할 때 패키지
Gruntfile.js
가 덮어 씁니다 .magento/magento2-base
composer install
내 커밋하면
gulpfile.js
, 나는 정말 내 종속성을 정의 할 수 없습니다package.json
그것은 또한 덮어 쓰기 때문에,magento/magento2-base
.Magento 's Grunt 설정을 사용하기로 결정하고
/dev/tools/grunt
(예 :) 아래의 파일을 편집하여 사용자 지정하려는 경우themes.js
변경 사항이로 덮어 쓰기 때문에 수정할 수 없습니다magento/magento2-base
.
내 이해는 문서 루트에서 실제로 많은 것을 할 수 없다는 것입니다. 물론이 문제에 대한 많은 해결책이 있습니다.
git checkout -
설치 후 바로 자신의 파일을 재설정 할 수 있습니다./build
예를 들어 빌드 파일을 전용 폴더에 저장할 수 있습니다.- Phing, Ant 또는 Rake와 같은 다른 빌드 도구를 사용할 수 있습니다 (프론트 프론트 개발자는 그렇게 행복하지 않을 것입니다)
magento/magento2-base
핵심 파일에 대한 사용자 정의 매핑이있는 사용자 정의 패키지로 바꿀 수 있습니다 (실제로는 최적은 아니지만 옵션입니다)
나는 개인적으로 이러한 모든 옵션을 싫어하므로 내가하려는 일을 달성하기 위해 선호되거나 더 나은 방법이 있는지 알고 싶습니다.
누구 같은 문제가 있습니까? 어떻게 해결 했습니까? VCS에서 프로젝트를 어떻게 구성합니까?
최신 정보
프로젝트 설정과 관련된 추가 사항. 실험에서 Magento composer 설치 프로그램에는 파일 재정의 플래그가 있음을 알았습니다.
"extra": {
"magento-force": "override"
}
실수하지 않으면 내부적으로 부울로 처리되므로 false
재정의를 건너 뛰 도록 설정하려고했습니다 . composer install
파일을 이미 설치했기 때문에 설치를 실행할 때 실패합니다. 기본적으로 Magento가 내 파일을 재정의하지 못하게하면 설치할 수 없습니다.
이 깃발의 목적은 무엇입니까? 나를 위해 검사를 수행한다고 가정합니까? 솔직히 말이별로 의미가 없지만 어쩌면 누군가가 그 주제를 밝힐 수 있습니다.
Gruntfile.js
, gulpfile.js
및 package.json
문제가 해결된다. 문제는이 질문에 주소를 변경할 필요가있을 때 여전히 새로운 젠토 2 버전에 적용 할 수있다 themes.js
, index.php
또는 .htaccess
예를 들어.