Мне нужно настроить среду разработки Kohana, которая позволит мне в полной мере использовать общие классы модулей / систем в разных приложениях. Каждое приложение обычно принадлежит другому клиенту. Я использую Git для управления исходным кодом, но изо всех сил пытаюсь найти метод чистого развертывания, который позволит мне перетянуть только те части среды разработки, специфичные для клиента / приложения, в производственную среду этого клиента ( при условии, что в производственной среде клиента будет установлен Git).
Среда разработки:
- kohana
- applications
- clientapp1
- clientapp2
- modules
- public_html
- clientapp1
- clientapp2
- system
- 3.0.1
- 3.0.5
Производственная среда клиента 1:
- /
- applications
- clientapp1
- modules
- public_html
- client_app1
- system
- 3.0.5
Естественно, я хочу иметь полный контроль над каждым клиентским «суб-репо», как если бы это было независимое репо (с точки зрения gitignore и т. Д.). Я видел темы, которые охватывают Git sparse checkout , но кажется, что это может вызвать некоторые проблемы в будущем с точки зрения обслуживания, и мне не нравится идея метаданных всего репо существующий в производственной среде клиента репо.
Как вы, вероятно, можете сказать, я не совсем Git Poweruser, поэтому любые предложения / мудрость очень приветствуются!