![]() |
|
|
![]()
|
|
| Dem0n13 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 4.12.2009 Где: Россия, Калуга Репутация: нет Всего: нет |
Здравствуйте!
Есть проект, который содержит несколько ветвей с разными вариантами реализации одной программы. Развиваются все ветви. помимо проекта есть папка с документацией, причем она у всех одинаковая должна быть. Как реализовать изменение файлов документации во всех ветвях, если файл изменился в одной ветке. Мои домыслы (не уверен, что возможно): - коммит во все ветви сразу - коммит вначало/середину главной ветви родителя - пуш одного коммита во все ветви сразу Условия: Документация должна быть в каждой ветви Ветвей около 30, поэтому желательно найти решение автоматическое, готовое Google ответа не дал. Заранее спасибо. |
|||
|
||||
| Dem0n13 |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 4.12.2009 Где: Россия, Калуга Репутация: нет Всего: нет |
Несколько дней поисков дали вариант с rebase -i ,правда я еще не понял, то это, или не то
Уточню вопрос:
Надо вставить коммит x сюда:
Так, чтобы соответвенно все ветки подхватили это изменение. Попробовал так:
затем rebase -i <тут хэш коммита 1> И поменял порядок коммитов так, чтобы новый коммит встал на свое место в основную ветвь. Но что-то получилось не то. Люди, подскажите, если здесь нет знатоков git, то где их можно поискать? |
||||||
|
|||||||
| Dem0n13 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 4.12.2009 Где: Россия, Калуга Репутация: нет Всего: нет |
В общем за неделю моих поисков могу подвести маленькие итоги. Может, кому-нибудь другому придет такая же идея.
Сначала мои поиски привели к предыдущему посту "rebase -i". Да, он может менять порядок следования коммитов, но в главную ветку изменений не внесет. Можно изощрятся с локальным репозиторием и все-таки получить то, что нужно, а потом залить это все с флагом -f (или -force), но это слишком накладно по времени и потом доставит очень много хлопот тем, кто разрабатывает с тобой. Далее пришла идея использовать модули (submodule), то есть 2 разных репозитория, но второй оформлен как внешняя ссылка в первом. Все бы хорошо, но при обновлении этого внешнего репозитория ссылка не обновляется автоматом. Да, это сделано специально, но проблема остается. Необходимо обновлять этот модуль а потом пересаживать все ветки на него - опять таки неудобно. Затем я начал искать как можно делать rebase для поддерева (ветки с набором дочерних), но нашел только готовые скрипты. Стандартными средствами rebase не отслеживает ветки-потомки. После модулей меня повело в дебри - слияние поддеревьев и прочее, но я решил остановиться, потому что не уверен, что это по моей задаче. В конечном итоге я нашел самый простой в плане использования мной и другими, и в плане организации способ - 2 полностью независимых репозитория, один с проектом и ветками, а второй чисто под документацию. Никаких слияний не происходит и все есть под рукой в актуальном состоянии, пусть не в одной папке. |
|||
|
||||
![]()
|
|
|
НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание на то, что новые темы, касающиеся новых вопросов, создаются кнопкой "Новая тема", а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих темах, будут удалены. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, arilou. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | УП: Инструменты | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |