[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: локальный git сервер
Gradus
Суть в том что бы локальный сервак являлся централизированным git сервером для всех проектов

Необходима схема реализации:
-Публичный сервер
-Локальный сервер

На локальном сервере должно быть 2 ветки: продакшн и тестовый
Тестовая версия содержит файлы которые разработчики могут менять и сразу же смотреть изменения на локальной тестовой версии сайта.
После этого пуляется проект на локальную продакшн версию и автоматически должны вноситься изменения на продакшн публичный сервер.

С git'ом на вы, поэтому вопрос: как это реализовать ?

Создаю no-bare git рапозиторий в публичном сервере
Создаю no-bare git продакшн репозиторий в локальном сервере связанным remote add origin с публичным сервером
Создаю no-bare тестовую ветку на локальном серваке с clone на продакш репозиторий

Правильно ли делаю ?
В публичном сервере в папке /var/html/project_name делаю

git init
git add .
git commit -m "Init commit"

В локальном сервере создаю папку project/git/ и там

git remote add origin ssh://user@domen/var/html/project_name
git pull

Все скопировалось, правда криво в папки project/git/ появилась папка project_name, я думал что только сами файлы скопируются, а не корень проекта + внутри еще и папка .git лежит

когда делаю push на публичный сервак, то вроде все норм и на самом серваке в хистори есть коммиты с локального сервера, НО изменений в самих файлах нет.
Такой же результат от команды
git push --set-upstream origin master


_____________
ДАВАЙ ДЕНЬГИ
R543264623869
stump
должно быть 3 ветки: public, test, dev. В dev все программируют, в test мержать протестированное, в public выливают то, что потом идет в мир. Можно еще devA куда записать решения reopened из test.

_____________
Трус не играет в хокей
Gradus
stump, на данный момент это не нужно smile.gif хоть и наверное правильно...


_____________
ДАВАЙ ДЕНЬГИ
R543264623869
Игорь_Vasinsky
Цитата
должно быть 3 ветки: public, test, dev.

согласен

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Gradus
ребят, нормально же общались, че началось то smile.gif
Это никак не повлияет на решение проблемы

_____________
ДАВАЙ ДЕНЬГИ
R543264623869
kaww
Цитата (Gradus @ 29.06.2015 - 09:33)
что бы локальный сервак являлся централизированным git сервером для всех проектов

Чтобы удобно рулить репозиториями воспользуйтесь gitolite http://gitolite.com/gitolite/index.html
Как-то у тебя все заморочено в описании. В общем workflow будет таким
1. Создаешь репозиторий на удаленном гит-сервере
1)
mkdir myProject
git init

2) Если используешь gitolite то в конфиге
repo myProject

2. На локальной машине ты и все, кто работает над проектом, делают
git clone repository_url

3. PROFIT!
Что касается модели ветвления, то не нужно изобретать велосипед, а воспользоваться, например, git-flow
Gradus
kaww, это простое решение которое не применимо в данной ситуации.
Задача состоит в том что есть рабочий сайты на отдельных серваках и есть локальный сервер который держит у себя git репозитории всех проектов. Держать основной git проекта рядом с самим проектом, запрещено smile.gif Но при заливке в продакшн версию локального сервака, должны заливаться файлы на реальный сайт

_____________
ДАВАЙ ДЕНЬГИ
R543264623869
kaww
Цитата (Gradus @ 29.06.2015 - 11:01)
это просто решение которое не применимо в данной ситуации.

почему не применимо? Замени в моем предыдущем сообщении "удаленном гит-сервере" на "локальный сервер который держит у себя git репозитории всех проектов" и "На локальной машине ты и все, кто работает над проектом," на "рабочий сайты на отдельных серваках".
Ну если совсем уже объяснять по буквам, то, естественно, после этого сразу же делаешь git add * (только в игнор добавь всякие временный файлы, загружаемый пользователями контент и т.д.), затем git commit -m "init my super repo", затем git push origin master
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.