ứng dụng / etc / config.php trong VCS hay không


15

Tôi có một câu hỏi liên quan đến tập tin app/etc/config.php.

Tập tin này được mô tả ở đây và được xác định:

Magento base dir/app/etc/config.php, chứa danh sách các mô-đun, chủ đề và gói ngôn ngữ đã cài đặt.

Giống như app/etc/modules/*trong Magento 1 (Thông thường tôi có các tệp này trong VCS).

Nhưng trong Magento 2 được khuyến nghị không chia sẻ trong VCS (Official .gitignore ).

Tôi có một số câu hỏi hoặc sử dụng các trường hợp để chia sẻ trong VCS nhưng tôi muốn Hiểu vì không khuyến nghị thêm vào VCS

  1. Môi trường sản xuất (Với hệ thống triển khai Capistrano/Deployer, etc)
    • Bạn thực hiện triển khai mới ... và bạn cần kích hoạt mô-đun / s mới php bin/magento module:enable VendorName_NewModuletrướcsetup:upgrade
      • Làm thế nào bạn quản lý tình huống này?
    • Bạn thực hiện một triển khai mới và bạn cần vô hiệu hóa (cho mọi tình huống) mô-đun / s mới / s php bin/magento module:disable VendorName_NewModuletrướcsetup:upgrade
      • Làm thế nào bạn quản lý tình huống này?
  2. Môi trường địa phương

    • Nếu bạn không muốn nhóm của mình bật / tắt mô-đun cụ thể
      • Làm thế nào bạn quản lý tình huống này?
  3. Môi trường dàn dựng

    • Làm thế nào bạn có thể đạt được cấu hình tương tự của các mô-đun được bật / tắt sản xuất nếu bạn không chia sẻ app/etc/config.php
      • Làm thế nào bạn quản lý tình huống này? Bạn cần làm thủ công?

Quan điểm của bạn là gì hoặc cách bạn quản lý những tình huống này?

Cảm ơn

* VCS: Hệ thống kiểm soát phiên bản, ví dụ: git, svn, v.v.

Câu trả lời:


13

Không có gì sai khi bao gồm config.phptrong VCS nếu nhu cầu của bạn dựa trên cấu hình giống nhau trên các môi trường khác nhau, đặc biệt là trạng thái bật / tắt của các mô-đun. Tác dụng phụ của việc này là giới hạn bạn áp đặt cho chính mình về việc có cùng chủ đề, gói ngôn ngữ, v.v. trên mỗi người.

Đối với Magento 2.2, chúng tôi sẽ thực hiện một số cải tiến để tăng tính linh hoạt hơn trong quản lý cấu hình để hỗ trợ các quy trình triển khai khác nhau. Bạn sẽ có một tệp có nghĩa là chứa tất cả cấu hình được chia sẻ app/etc/config.php(có nghĩa là cấu hình có khả năng giống nhau trên tất cả các môi trường và được giữ trong VCS). Bạn sẽ có một tệp khác có nghĩa là chứa cấu hình dành riêng cho hệ thống app/etc/env.php(có nghĩa là chứa cấu hình có thể khác nhau giữa các hệ thống dev, dàn dựng và sản xuất).

Trong thời gian này, chúng tôi đã tuyển chọn một số phương pháp triển khai từ cộng đồng mà bạn có thể tìm thấy trên trang này trong trường hợp có ích.


Bạn đã có ngày chính thức phát hành 2.2?, Về nhận xét của mình, bạn có bất kỳ tài liệu tham khảo nào trong github để tìm hiểu sâu hơn một chút với các cấu hình này cho quy trình triển khai không?
osrecio

2.2 vẫn còn trong công việc, nhưng sẽ ra mắt trong quý 3. Tôi chưa biết bất cứ điều gì trong github để chơi cùng ...
mkotov
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.