Переход от частного репозитория GitHub к публичному и частному - PullRequest
3 голосов
/ 07 марта 2012

Я разработал проект для клиентов с использованием частного репозитория на GitHub.Сейчас мы хотим открыть определенную часть и создать версию проекта с открытым исходным кодом.Идея заключается в том, что версия клиента будет построена на этом.Любые изменения, внесенные в версию с открытым исходным кодом, должны распространяться и на частную версию.

Теперь проблема в том, что я не могу просто сделать текущее GitHub репо видимым для всех.Существуют определенные фрагменты кода, которые должны оставаться доступными только для клиента.Итак, к фактическому набору вопросов:

  1. Можно ли настроить пару репозиториев GitHub так, чтобы родитель был публичным, а форк остался закрытым?
  2. Можно ли стеретьнекоторые файлы и их история из репо целиком?(Если 1. возможно, я мог бы просто добавить их туда снова.)

Думаю, я мог бы начать репо с нуля, а затем работать на его основе, но в этом случае я бы потерял некоторую ценную историюинформация.

Любые идеи приветствуются.При необходимости я могу предоставить вам более подробную информацию.

Ответы [ 2 ]

4 голосов
/ 07 марта 2012

Вы можете попробовать разделить проект на две части, а затем использовать git submodule для их соединения.

Частный родительский проект может содержать открытый проект подмодуля.

Подробнее см. http://help.github.com/submodules/.

4 голосов
/ 07 марта 2012

Относительно второй части вашего вопроса:

Вы можете использовать git filter-branch для удаления файлов или целых каталогов из вашей истории.

Также см. Вопрос: Как удалить конфиденциальные файлы из истории git .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...