2015-05-14 3 views
0

Для моей дневной работы я работаю с командой из 6. Мы все веб-разработчики, работающие над одним проектом. С нашей текущей настройкой git мы сталкиваемся со всеми проблемами с конфликтами и перезаписываемыми вещами, которые вызывают хаос.Развертывание с несколькими git repos

Вот наш текущий рабочий процесс. У нас есть главная ветвь на реестре github. Когда мы подталкиваем к нему изменения, мы также подталкиваем к нашему удаленному серверу производства, что делает наши изменения «живыми». Это наш хлеб и масло.

Когда у нас есть новые функции или исправления, которые необходимо сделать, мы создаем ветвь на основе мастера, чтобы не включать какую-либо экспериментальную или неполную работу. Когда эта ветка готова к тестированию, мы подталкиваем ее к другой ветке на github, которую мы называем «развиваться».

Следует отметить, что разработка (в несколько раз в прошлом) была «синхронизирована», чтобы иметь то же самое содержимое, что и главный.

В настоящее время у нас возникают проблемы с нашей отраслью развития. У нас есть несколько вещей на нашем производственном участке, которые просто не работают/не могут функционировать при разработке. Таким образом, мы можем направить толкать к хозяину, часто не нажимая те же самые изменения, чтобы развиваться в первую очередь. Это в конечном итоге помещает нашу ведущую ветвь вперед вперед в совершении над ветвью развития, что когда мы объединяем новую ветвь, основанную на мастере, чтобы развиваться, функции, которые были выдвинуты для развития, но никогда не превращали ее в мастера, потому что они были пересмотрены или в противном случае не были готовы перезаписать вместо того, чтобы бросать конфликт.

Попытка объединить и синхронизировать эти две ветви вместе, это кошмар, а иногда и непредсказуемые результаты.

TL; DR Я ищу предложения для способа, которым мы можем реорганизовать наш рабочий поток git, чтобы такие вещи не происходили. Существуют ли возможности git, которые мы не используем, которые могут помочь в этом? Или существуют другие решения, которые могут помочь в развертывании? Любые предложения/советы будут оценены.

ответ

1

Вы являетесь 6 проектами разработчиков. Управление конфигурацией должно быть простым.

Если вы используете github, bitbucket или эквивалент, вы можете использовать рабочий процесс «Fork/Pull».

даже для одного процесса филиала, пожалуйста, убедитесь следующие

  1. Не создавайте/PUSH слияния совершает
  2. Всегда перебазироваться код из вышестоящего
  3. Создать локальную тему филиал
  4. ли настройки правильно CR/LF
  5. Имейте правильную настройку отступа и используйте единый редактор (vi, emacs, eclipse и т. Д.)
  6. Избегайте нежелательных отступы
  7. Learn GIT
+0

Для intendation и правильного форматирования: используйте .editorconfig в проекте, см http://editorconfig.org/ – wmk