У нас есть приложение с открытым исходным кодом, опубликованное как GPLv2. У нас также есть немного другая версия с коммерческой лицензией. Различия между этими двумя вариантами очень ограничены.
У нас есть основной репозиторий Mercurial для приложения GPL.
Я хочу иметь возможность хранить отдельное репо для коммерческого приложения (главное - публичное), но я также хочу иметь возможность регулярно «пушить» изменения в нем (но не наоборот). Учтите, что эти репозитории размещены на веб-сервисе, на котором размещен проект.
Что я сделал до сих пор:
- создал новый комм репо
- зафиксировал первую версию коммерческого приложения (без истории)
- push comm на удаленный хостинг
- Модифицированный с открытым исходным кодом репо
- пытался перейти с с открытым исходным кодом на удаленный comm , hg говорит, что репозитории не связаны
- пытался перейти с * open-source '* на comm с опцией -f (force), hg теперь просто показывает предупреждение
Проблема с шагом 6 состоит в том, что я помещаю ВСЕ ревизии в репо comm , что неверно. Я в основном хочу выдвинуть изменения с данного момента времени (очень похоже на объединение двух ветвей SVN).
Я изучаю расширение hg transplant
, но, кажется, его сложно использовать на регулярной основе.
Я новичок в Mercurial, поэтому могу ошибаться, поэтому, пожалуйста, предложите и другие способы решения той же проблемы.