Предотвращение толчков из ветки на конкретный пульт - PullRequest
3 голосов
/ 23 февраля 2012

Я бы хотел сохранить две ветки проекта: одну для внутреннего использования в компании и другую для opensource. Я хотел бы иметь все специфичные для развертывания элементы в дереве исходного кода (например, рецепт развертывания и конфигурацию базы данных, файл начальной загрузки для конкретной версии и т. Д.).

Я предполагал, что у меня будет две ветви, например master и internal. В этом случае одну вещь, которую я бы хотел предотвратить, это отправка ветки internal на Github, поскольку она будет содержать конфиденциальную информацию. Затем я бы выбрал изменения из ветви internal в master.

Так как мне настроить удаленные устройства, чтобы ветвь выдвигалась к удаленному по умолчанию? Мне нужно настроить эту ветку для отслеживания другого пульта, кроме Github?

Или есть лучший рабочий процесс для разработки двух форков в lockstep для такой ситуации?

1 Ответ

2 голосов
/ 23 февраля 2012

Как только кто-то клонировал ваше репо, он (или она, конечно) имеет полный доступ ко всем веткам, хранящимся в репо. Вы не можете помешать ему (или ей, конечно) продвинуть полное репо куда-нибудь или даже сделать общедоступными источники в Интернете.

Если вы хотите сохранить секретные вещи в секрете, настройте два репо , один для master и один для internal, а затем cherry-pick необходимые коммиты с internal до master, как вы и собирались сделать.

Для достижениядобавьте репо internal в качестве удаленного к репо master.Находясь на master do

git remote add internal /path/to/internal

Когда вы хотите принимать коммиты от internal до master, просто fetch последние изменения internal в master

git fetch internal

, затем проверьте коммиты и cherry-pick, используя

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