Tôi đang xem xét việc đặt một cơ sở mã chạy một số trang web vào kiểm soát phiên bản. Có một số trường hợp của cơ sở mã này chạy các trang web trên các máy chủ ảo khác nhau.Sử dụng kiểm soát phiên bản với mã không phân cấp?
Sự cố mà tôi đang vật lộn là mỗi phiên bản riêng biệt của nhiều mã hoặc ít hơn cùng một mã đều có thư mục con với các chức năng dành riêng cho trang web. Nhưng có vẻ như hệ thống kiểm soát phiên bản muốn kiểm soát toàn bộ hệ thống phân cấp thư mục.
Ví dụ, mỗi trường hợp có thư mục
/www/smarty/libs/plugins/
Tại nơi bạn sẽ tìm thấy các chức năng trang web cụ thể cho smarty. Khi chúng tôi đã sẵn sàng để đưa nó vào kiểm soát phiên bản, thư mục /www
sẽ là thư mục gốc.
Vì vậy, một tùy chọn là có tất cả các chức năng dành riêng cho trang web sẽ được chuyển đến tất cả các trang web. Tôi không thấy một vấn đề nào trong bản thân nó, nhưng có vẻ như bằng cách nào đó về mặt kiến trúc 'sai'. Sẽ có một loạt các tệp chỉ thuộc về một triển khai.
Tùy chọn khác là có kho lưu trữ riêng biệt cho từng tệp cụ thể của từng trang trong cơ sở mã. Nhưng có vẻ như nó có thể nhanh chóng trở thành một cơn ác mộng khi cố gắng để có được các trang web mới được triển khai đúng cách.
Cách tốt nhất để làm điều này là gì? Hệ thống kiểm soát phiên bản mà chúng tôi đang xem xét là lật đổ.
Việc xây dựng có thể đơn giản như một kịch bản lệnh shell cho mỗi ứng dụng thực hiện 'cp -r common-files/www; cp -r app1-plugins/www/smarty/libs/plugins'. –