Отправьте ветку репозитория git на новый удаленный (github), скрывая свою историю

Моя организация готовится выпустить версию нашего программного обеспечения с открытым исходным кодом с использованием github, однако я не уверен, как лучше всего подойти к этому:

У нас есть две ветки master и выпуск , master содержит некоторые проприетарные компоненты, которые мы решили не выпускать, а релиз содержит очищенную версию, которую мы хотим распространять. Проблема в том, что если мы просто отправим ветку release в github, проприетарные компоненты можно будет получить, просмотрев историю изменений.

Я думал о создании отдельного репозитория, копировании в него HEAD relase , выполнении git init и отправке этого репозитория на github. Однако мы хотим сохранить возможность выбирать определенные патчи из master в выпуск в будущем и переносить эти изменения в github.

Есть ли способ сделать это. сделать это без поддержки двух отдельных репозиториев?

Спасибо!

Обновление:

Чтобы быть немного более конкретным, вот как выглядит наша история коммитов в данный момент:

--- o - o - o - o - f - o - o - f - master
             \
              c - c - c - c - c - c - c - REL - f - f

Где 'o' - это коммиты в master , проприетарной ветке, 'c' - это коммиты, которые удаляют вещи, которые не должны публиковаться (часто не удаляя файлы целиком, а переделывая существующие, чтобы не полагаться на проприетарные компоненты), и 'f ' - это исправления в master , которые также применимы к выпуску , и поэтому были тщательно отобраны. REL - это помеченная версия кода, которую мы считаем безопасной для публикации, без какой-либо истории (даже с предыдущими версиями ветки выпуска, поскольку не все проприетарные материалы были удалены до тега REL).

19
задан David Claridge 26 October 2010 в 05:53
поделиться