2010-12-02 2 views
6

Я теряюсь с моделью ветвления Git и рабочим процессом, который я хочу создать для своей команды (разработчики + дизайнеры).Git workflow для небольшой команды разработчиков и дизайнеров

Предположим, что проект основан на шаблоне MVC, поэтому мы имеем структуру, аналогичную:

Модели/
Контроллеры/
Просмотры/

Разработчики работает на M & C части с некоторыми основными/сгенерированными видами (например, Rails, Django или приложение CakePHP) и Дизайнеры работы по V части

Как я могу управлять, что разработчики работают на M & C и сохранить некоторое основное дрянные точки зрения, и в то же время, дизайнеры делают сексуальные взгляды, основанные на контроллерах действий кодируются и добавлены разработчиками прогрессивны?

Я попытался сделать это работает с 3-х ветвей:

мастера (производство готового)
DEV
щ

, но не знают, как дизайнер работает над ш филиал может сохранить код в другом месте, чем/просмотрено, обновленное рабочее приложение ...

Спасибо людям за помощь!

ответ

8

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

Перед тем, как нажать, каждая сторона должна потянуть (чтобы не было конфликтов). Если две группы работают во взаимоисключающих фрагментах кода (отдельные файлы или даже отдельные части тех же файлов), то pull просто обновит локальную копию, и все будет работать хорошо.

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

3

Git - это не волшебство. Это не позволяет вашим дизайнерам использовать код, который разработчики активно написание. Разработчикам все же приходится писать, тестировать и передавать свой код, а также нажимать на него то место, от которого разработчики могут его вытащить.

Как правило, у вас будет «голый» репозиторий, в который все стороны подталкивают свою работу, когда она будет готова к совместному использованию. Все остальные тянут эту работу. Это может быть работа дизайнеров тянуть работу разработчика и объединить ветку Дев в Ui отрасли, например:

git checkout ui 
git fetch 
git merge dev 
4

Git настолько прост в использовании, Theres никакой причины, все не должны иметь свою собственную ветвь работы снаружи.Черт, это одна из основных причин использования системы контроля версий. В Git коммиты дешевы.

Обычно у нас есть мастер, и любой, кто работает с обновлениями или функциями, будет отделяться от мастера и, если потребуется, ветви ветки, тогда мастер выпуска (кто-то вроде меня) позаботится о том, чтобы слить их обратно вниз, проверка конфликтов, тестирование выпуска и слияние с мастером.

Когда вы работаете над этим, другие могут получить ваши изменения, выполнив извлечение/вытягивание по вашей ветке, чтобы вносить изменения.

0

Если вы действительно хотите обеспечить такие вещи, как ветви и пути прав, я предлагаю вам оформить gitolite

Это позволит вам управлять доступом на разного рода уровнях.

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