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