У меня есть проект с закрытым исходным кодом, который построен на моей открытой исходной структуре. Я хочу знать, как я должен структурировать свой рабочий процесс. Ниже приведено мое предположение, используя git с подмодулями.
- Я создаю публичный репозиторий структуры github с подмодулями, которые отдельный репозиторий git.
- Я покупаю "микро" счет на github (7 долларов США), поэтому я может иметь частное репо.
- Я создаю частное репо и клонирую репозиторий публичной структуры.
Здесь я могу внести изменения:
- Мой личный код и нажмите на мое личное репо на github
- Открытый каркасный код и нажмите на мое частное репетирование github, а затем отправьте запрос на перенос из общедоступной структуры..? Или как это будет работать?
Как обрабатывать репо, которое содержит закрытый и открытый код и подмодули. Прямо сейчас кажется, что я просто должен поддерживать два отдельных кода для достижения этого.
Я ищу лучший ответ, который может помочь кому-то довольно новому для git упорядочить процесс работы с кодовой базой, которая является половиной открытого источника и наполовину частной. Одна хорошая вещь в этом заключается в том, что каждая папка является частной или общедоступной, поэтому нет никакого беспокойства о совместном использовании частных и общедоступных файлов - все же некоторые из частных папок могут быть публичными!
Другим примером, который я мог бы дать, будет использование zendframework для создания вашего сайта частной компании, в то же время способного каждый раз тянуть (и, возможно, патч-толкать), на zend-репо. А также тянет и толкает ваш частный сайт внутри zendframework.
Например, представьте структуру каталогов следующим образом:
/private_folder
/public
/public_folder
/public_folder2
/private_folder
Возможно, я попрошу двух способов справиться с ними в одном объединенном каталоге репо. Возможно, нет простого способа сделать это, и я должен разделить их и сделать все публичные патчи в одном, а затем просто втянуться в свое частное репо. Конечно, это означает, что если я нахожусь в середине работы над каким-то частным кодом - мне придется покинуть это репо и открыть открытый файл и внести исправленный код, а затем вернуться к частному, объединить, а затем продолжить работу с частным кодом.