У нас есть два связанных репозитория git: основной репозиторий и внешний репозиторий.Основной репозиторий используется в моей компании и содержит все.Внешний репозиторий используется совместно с некоторыми внешними сторонами.В нем исключены некоторые конфиденциальные каталоги и небольшие различия в файлах сборки.
Вот требования:
- В обоих хранилищах есть изменения, которые необходимо периодически объединять (например, мы хотим объединить два хранилища в обоих направлениях).
- Чувствительные каталоги никогда не должны объединяться с внешним репо, а слияние внешнего репо с основным репо не должно удалять конфиденциальные каталоги.
- Я хотел бы сохранить все сообщения коммитапри слиянии.В настоящее время мы иногда копируем файлы между репо, что обычно означает бесполезное сообщение о коммите и один коммит в репо назначения, который включает в себя множество коммитов из исходного репо.
- Меня не слишком волнует текущая историявнешнего хранилища.Его не нужно хранить, когда я настраиваю лучший способ управления этими репозиториями.
- Это нормально, если внутренние разработчики должны запускать дополнительные команды при настройке или перед слиянием, но я бы хотелуметь писать сценарии, которые запускают эти команды, чтобы упростить его.