Вопрос

Я начинаю с нового проекта CI, основанного на Хранилище реакторов CI 2.0.Поскольку код CI2 все еще меняется, я хотел бы сохранить этот код свежим, вопрос в том, как (используя Git).

Для людей, не связанных с CI, базовая структура проекта CI2 выглядит следующим образом:

system/  
application/  
index.php
...

Системный каталог содержит фреймворк, index.php выполняется начальная загрузка, а приложение содержит мой проект.В идеале я хотел бы поддерживать как index.php, так и системную папку в актуальном состоянии с помощью Git.Еще одна вещь, которой я хотел бы придерживаться, - это название папки приложения.(Вы можете изменить путь к папке вашего приложения в index.php.) Сохранение имени без изменений позволяет просто зайти в папку и все готово.

Я пытался реализовать это, используя подмодули git (смотрите ниже), но подмодули не позволяют указать каталог из целевого репозитория.

git submodule add https://github.com/philsturgeon/codeigniter-reactor.git/code-igniter/system system

Есть какие-нибудь подсказки, как я могу этого добиться?

Это было полезно?

Решение

К сожалению, вы не можете ссылаться на определенную папку в подмодуле, только корень самого подмодуля. Это означало бы, что вам нужно поместить свое приложение в подпадении, что будет дерьмом.

Однако вы можете просто настроить два пуда в своем приложении GIT.

git init
git remote добавить происхождение git: // Что угодно
git remote добавить реактор git@github.com: philsturgeon/codeigniter-reactor.git

Затем обновите с помощью изменений реактора

git pull реактор мастер
Git Push Origin Master

Помните, что этот клон действительно предназначен для того, чтобы помочь людям получить изменения в реакторе Codeigniter, не нуждаясь в изучении ртути, но вы можете использовать его, пока он существует.

Другие советы

Я тоже столкнулся с той же проблемой.

Я действительно хочу использовать git для подключения ядра codeigniter к приложению без необходимости каждый раз копировать и вставлять обновления!Есть много преимуществ в использовании подмодулей git (и те, кто использует git, уже знают это).

Поэтому я сделал это таким образом:

mkdir yourapp
cd yourapp
git init
git sudmodule add git://github.com/EllisLab/CodeIgniter.git codeigniter
mkdir public
cp codeigniter/index.php public/
cp -rp codeigniter/application .

Теперь отредактируйте public/index.php и измените:

$system_path = 'system';

Для:

$system_path = '../codeigniter/system';

и:

$application_folder = 'application';

Для:

$application_folder = '../application';

Теперь укажите вашему веб-серверу на вашу "общедоступную" папку, и дело сделано!Теперь у вас есть проект с codeigniter в качестве подмодуля :)

Для таких вещей, я обновляю их вручную и проверяю конфликты.

Не реальный ответ на ваш вопрос, но в целом не очень хорошая идея, чтобы изменить сторонние проекты: обновление может нарушить ваше заявление без предупреждения. Я бы посоветовал обновлять его вручную время от времени и проверять ваше приложение после обновления. Таким образом, внезапные перерывы в вашем заявлении с меньшей вероятностью произойдут.

Я никогда не сталкивался с проектом или фреймворком, где вы сохраняете ядро фреймворка в своем репозитории github ИЛИ загружаете его напрямую через другой репозиторий.В подобных вещах вам следует полагаться на composer.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top