Посмотрите на Гитолит , который позволяет этот прекрасный уровень контроля.
Лично - я думаю, что если вам нужен этот уровень контроля в вашем хранилище, вы, возможно, делаете это неправильно, но я полагаю, у вас есть свои причины.
Если вы хотите, чтобы ветки были доступны только для чтения всем, кроме толкателя, почему бы просто не позволить Алисе и Бобу иметь свои собственные общедоступные репозитории, в которые только они могут перейти - если вы хотите увидеть, что находится на их ветке, потяните из их репо.
Разница здесь в том, что вместо одного репо с множеством частных филиалов - у каждого есть свой репо, к которому можно подтолкнуть, но вы все можете тянуть друг от друга. В конце концов, Git - это распределенная система.