> НИКОГДА(!!!) не производить перебазирование (rebase) стабильной ветки относительно «master», чтобы объединить исправления!
> Обязательно произвести перебазирование своего бранча относительно родительской ветви.
> NB: Если не сделать перебазирование то возможна ситуация когда другие разработчики уже влили свои конкурирующие изменения в нашу родительскую ветвь, и в лучшем случае история в ней будет путанной и сумбурной, а в худшем — родительская ветвь перестанет собираться либо будет работать некорректно.
Поясните пожалуйста первый пункт. Что такое стабильная ветка?
Ваша модель работает, это я прекрасно понимаю. Наверное я погорячился, назвав ее неправильной, ведь git не задает никаких ограничений в использовании и даже советов не дает по тому, как использовать. Просто такую нестандартную модель я еще не встречал.
Идеальной по моему мнению является модель, когда «релизный» репозиторий находится у главного архитектора\менеджера и он постепенно берет патчи\пуллит изменения от разработчиков. А сами разработчики, при необходимости, берут что-то у своих коллег или с этого «релизного» репозитория. Примерно такая модель в Linux-е.
Да, я согласен. Своим первым комментарием я ставил целью объяснить, что подход ivanych-а является подходом централизованныз систем контроля версий, когда используется единый главный репозиторий, в который все «толкают» свой код. Он всего лишь перенес эти подходы на git, не понимая, как мне кажется, саму идею распределенности.
Тут можно спорить, конечно. Во всяком случае большое спасибо за подробное описание того, как у вас происходит разработка. Таких статей действительно нехватает. Плюс в карму :-)
marko at kevac dot org
> НИКОГДА(!!!) не производить перебазирование (rebase) стабильной ветки относительно «master», чтобы объединить исправления!
Почему этого нельзя делать?
> Обязательно произвести перебазирование своего бранча относительно родительской ветви.
> NB: Если не сделать перебазирование то возможна ситуация когда другие разработчики уже влили свои конкурирующие изменения в нашу родительскую ветвь, и в лучшем случае история в ней будет путанной и сумбурной, а в худшем — родительская ветвь перестанет собираться либо будет работать некорректно.
Поясните пожалуйста первый пункт. Что такое стабильная ветка?
Идеальной по моему мнению является модель, когда «релизный» репозиторий находится у главного архитектора\менеджера и он постепенно берет патчи\пуллит изменения от разработчиков. А сами разработчики, при необходимости, берут что-то у своих коллег или с этого «релизного» репозитория. Примерно такая модель в Linux-е.