Я думаю, что я пытаюсь согнуть Git, чтобы делать то, что он не должен обрабатывать:)
Самое простое решение, которое я придумал:
1 - Создать «публичный проект» ветки master.
2. Делайте все изменения, чтобы сделать ваш код доступным для публикации, то есть скрывать пароли и тому подобное. Последующие слияния будут хорошо обрабатывать эти изменения.
3 - Когда все будет готово, выполните rsync открытый проект с мастером другого git-репозитория, отслеживающего удаленный репозиторий.
4 - Зафиксируйте все изменения и отправьте их в удаленный репозиторий.
Мне интересно, можно ли заменить другой репозиторий веткой с именем "public", которая никогда не получает слияния из других веток, а только сливается обратно с ветками "public-draft". Это позволяет объединять изменения, внесенные другими людьми в публичный репозиторий.
Спасибо всем.