Я работаю над проектом, который использует код из проекта OpenSource. Одним из требований является то, чтобы как можно быстрее вернуть код вверх по потоку.
Удаленный проект использует Subversion (не очень хорошо).
Моя текущая настройка выглядит следующим образом:
[Remote SVN] (git svn fetch)-> [My public Git] <-(push/pull)-> [My dev. Git]
VV
(pull)
VV
[Testing grid]
РЕДАКТИРОВАТЬ 11.7. - переформулировал вопрос
Моя проблема - сосуществование моего локального публичного репо и svn вверх по течению.
Я должен предоставить 3 государственных ветки:
- стабильный стабильный
- экспериментальный стабильный
- Разработка
Эти ветки теперь линейны (развитие становится экспериментальным, а экспериментальное становится консервативным), но цель - стандартный подход с 3-мя подходом с слиянием. Из-за их публичного характера я не могу пересобирать эти ветки.
Теперь, полностью ортогонально этому, я пытаюсь каким-то образом упростить отправку патчей в восходящий поток. Выкапывание их из моих ветвей происходит медленно и подвержено ошибкам.
Мой типичный текущий рабочий процесс:
- реализовать некоторую функцию в верхней ветке разработки
- функция тестирования и исправления
- проверить и исправить другие функции, нарушенные этой новой функцией (на самом деле происходит много)
- определить, может ли это быть принятым в восходящем или нет (30:60 да: нет)
- сделайте что-нибудь об этом (я обычно просто пишу новый TODO)
Другая проблема с восходящим потоком заключается в том, что они принимают патчи в разные ветки (мои публичные ветки основаны на их устойчивой ветки). Как только патчи достигают стабильной ветки, я могу просто забыть, что они существуют, но пока это не происходит, мне нужно все же держать их локально.