git: объединение двух веток с секретными файлами в одной ветке - PullRequest
0 голосов
/ 06 февраля 2020

Я хотел бы оставить две ветки для некоторых руководств, одну ветку S с некоторыми "секретными" исправленными файлами и одну общедоступную c ветку P с теми же файлами, но еще не исправленными (только скелет). Тогда идея заключается в том, чтобы создать только ветку P в репо publi c и сохранить обе ветви в моем личном репо. И, конечно же, поскольку эти две ветви очень похожи, я хотел бы убедиться, что могу объединить изменения из ветви S в ветви P.

Так что на данный момент у меня есть моя секретная ветка S и я создаю сиротскую ветку P. Затем я создаю коммит, содержащий все файлы, которые должна содержать ветвь P. Но когда я изменяю ветку S и пытаюсь объединить это изменение с веткой P--allow-unrelated-histories), тогда все коммиты ветви S появляются также в истории ветки P ... так что каждый может прочитать секретные исправленные файлы!

Я попытался использовать merge --squash вместо этого, и история ветви S не копируется в P, но теперь проблема заключается в том, что две ветви остаются не связанными, и как Следствие git не может реально разрешить конфликты слияния, поскольку не может найти «общего предка» между двумя ветвями.

Есть идеи, как мне решить эту проблему?

Спасибо!

- РЕДАКТИРОВАТЬ -

Подумав немного, я думаю, что мне нужна функция, которая просто pu sh все коммиты текущей ветви, но это не pu sh коммиты объединенной ветви. Возможно ли это?

...