2013-10-13 3 views
0

Я начал использовать git недавно и использовать bitbucket также для размещения моего кода. Мне очень нравятся основы, такие как создание ветки, ее слияние и толкает, тянет и т. Д., Но сейчас ситуация, о которой я не уверен.Использование репозитория git для нескольких проектов

У меня в основном разработан cms, который я хочу использовать в нескольких проектах. У меня есть репозиторий для этого, который я называю 'cms_template'.

Всякий раз, когда я хочу создать новый проект, я просто клонирую его в новый репозиторий.

В основном, мой вопрос заключается в следующем: у меня есть сайт A и веб-сайт B. Оба являются клонами cms_template repo, но, очевидно, будут иметь свои изменения, поскольку они являются разными веб-сайтами. Я не хочу вносить изменения в их обратно в репозиторий cms_template, но когда я обновляю репозиторий cms_template, я хочу, чтобы эти обновления были «загружаемыми» на каждый веб-сайт. Как лучше всего объединить любые обновления, которые я делаю с исходным cms_template в эти проекты?

Я также хочу, чтобы иметь возможность подталкивать оба веб-сайта A и B к их собственным удаленным репозиториям, но я смущен лучшим способом сделать это и не противоречить репозиторию cms_template.

Надеюсь, что мой вопрос имеет смысл - я рад прояснить, если необходимо.

Спасибо в ожидании вашего совета.

+0

HTTP:.. // StackOverflow. com/questions/2140985/how-to-set-up-a-git-project-to-use-an-external-repo-subodule – Farkie

+0

Большое спасибо за это! Посмотрите на это завтра. Отлично выглядит – lcainswebdeveloper

ответ

0

Это звучит как идеальные установки для GIT подмодулей (см подробнее на http://git-scm.com/book/en/Git-Tools-Submodules)

Edit: Хранить отдельные изменения в системе центра инерции ветви от мастера и вытаскивать тех, кто в использовании подмодулей в ваши проекты. Обновляйте свою основную ветвь cms всякий раз и после этого снова загружайте веб-сайт a/b.

+0

большое спасибо очень много замечательных предложений здесь – lcainswebdeveloper

1

Вы должны действительно изучить использование Composer для управления зависимостями. Таким образом, вы просто требуете определенную версию своей CMS и можете обновлять ее независимо от других проектов.

Вы также избегаете проблем с подмодулями git, у которых, как сообщается, есть свои проблемы (я не могу прокомментировать это, поскольку я сам не использовал их, но я немного боюсь и, вероятно, избегу их, если это возможно) ,

Использование композитора так же просто, как загрузка файла phar и добавление файла composer.json во все ваши репозитории для объявления зависимостей и метаданных. Вы также получаете автозагрузчик бесплатно, а также возможность включить любую другую библиотеку, которая предлагает метаданные Composer или зарегистрирован в http://packagist.org (который много

http://getcomposer.org/ Смотрите для получения дополнительной информации

+0

Спасибо Свен! Я использовал композитора раньше, но не подумал об этом. Отличная идея будет исследовать это также – lcainswebdeveloper

Смежные вопросы