Я поддерживаю два разных репозитория git, которым нужно поделиться некоторыми файлами, и я хотел бы, чтобы коммиты в одном репо появлялись в другом. Какой хороший способ сделать это для постоянного обслуживания в каждом репо?
Я был одним из разработчиков perlfaq (Github), и недавно я вступил в роль поддержки ядра Perl документация, которая также находится в git.
Задолго до того, как я начал поддерживать perlfaq, он жил в отдельном репозитории управления версиями. Недавно я преобразовал его в git. Периодически один из perl5-носителей синхронизирует общие файлы в perlfaq repo и perl-репо. Поскольку мы переключились на git, мы немного ленив конвертировали инструменты, и теперь я тот, кто это делает. Пока что два репозитория будут оставаться отдельными.
В настоящее время для синхронизации часто задаваемых вопросов для новой (ежемесячной) версии perl мне почти стыдно говорить, что я просто копирую файлы perlfaq *.pod в perofaq repo и накладываю их на Perl-репо. Это теряет историю и т.д. Кроме того, иногда кто-то вносит изменения в эти файлы в perl-репо, и я в итоге переписываю его (да, проверьте git diff
идиот!). Я думаю, что файлы не имеют одинаковых путей в репо, но это то, что я могу изменить.
То, что я хотел бы сделать, в волшебной вселенной радуг и пони, вытаскивает объекты из реппо perlfaq и применяет их в perl-репо, и наоборот, поэтому истории и идентификаторы commit соответствуют каждому.
- Создание патчей работает, но также много работы по управлению им.
- Git Подмодули, похоже, работают только для полного внешнего репо
- Я не нашел что-то вроде внешних svn файлов, но это все равно работало бы в обоих направлениях
- Мне бы хотелось просто выбрать объекты из одного и вишневого цвета в другой
Какой хороший способ справиться с этим?