Минимизации усилий пост
Feb. 9th, 2015 03:03 pmНаблюдаю в дружественной конторе следующую ситуацию:
1. Есть продукт, который они пилят. С выпускаемыми версиями и прочим. При выпуске новой версии upstream-ом на неё надо переходить.
2. Есть большой патч к этому продукту разработки собственно этой конторы. Его необходимо всегда иметь в актуальном виде одним куском. Применяться он должен к апстриму.
3. Есть набор патчей третьей стороны, который должен жить отдельными кусочками, но попадать в итоговую сборку. Поштучно.
Как этот РАБКРИН лучше обустроить?
Мне в голову приходит сценарий с двумя ветками, соответствующими пп. 2 и 3, с периодическими git rebase сначала ветки со своими патчами на апстрим, а потом ветки с патчами третьей стороны - на то, что получилось в "своей" ветке. Или я неправильно понимаю, что есть git rebase?
1. Есть продукт, который они пилят. С выпускаемыми версиями и прочим. При выпуске новой версии upstream-ом на неё надо переходить.
2. Есть большой патч к этому продукту разработки собственно этой конторы. Его необходимо всегда иметь в актуальном виде одним куском. Применяться он должен к апстриму.
3. Есть набор патчей третьей стороны, который должен жить отдельными кусочками, но попадать в итоговую сборку. Поштучно.
Как этот РАБКРИН лучше обустроить?
Мне в голову приходит сценарий с двумя ветками, соответствующими пп. 2 и 3, с периодическими git rebase сначала ветки со своими патчами на апстрим, а потом ветки с патчами третьей стороны - на то, что получилось в "своей" ветке. Или я неправильно понимаю, что есть git rebase?
no subject
Date: 2015-02-09 12:43 pm (UTC)no subject
Date: 2015-02-09 01:42 pm (UTC)Если сторонние и свои патчи мало пересекаются и независимы, можно в третьей ветке (ответвляемой от второй) поддерживать только свои изменения, а мержить вторую с третьей в четвёртой.
Но может быть git не так работает, я с точки зрения svn и hg.
no subject
Date: 2015-02-09 03:34 pm (UTC)