Замена определенного файла в подмодуле git новой версией во время сборки - PullRequest
0 голосов
/ 28 октября 2018

Я использую репозиторий с открытым исходным кодом в качестве подмодуля git внутри моего собственного проекта.

Каждый раз, когда я собираю весь проект, я должен заменить определенный файл в подмодуле своей собственной реализацией.Как я могу сделать это без разветвления репо с открытым исходным кодом?(Проект с открытым исходным кодом находится в стадии интенсивной разработки, и у меня возникает множество конфликтов, когда я добавляю свою собственную логику)

Спасибо!

Ответы [ 3 ]

0 голосов
/ 28 октября 2018

Git не предлагает способа сделать это изначально.Версия подмодуля для конкретной ревизии является фиксированной, и нет возможности заменить файлы в подмодуле так, как вам нужно, без поддержки вашего собственного форка.

Однако вы можете легко это сделатьизменив, как работает ваша сборка.В рамках процесса сборки вы можете скопировать все исходные файлы из одного каталога в другой и заменить или исправить файлы в этой точке, а затем выполнить сборку, используя второй каталог в качестве исходных файлов.

0 голосов
/ 28 октября 2018

Ваш вопрос может использовать немного больше информации. Если я правильно понимаю, есть несколько способов решить вашу проблему -

  1. используйте скрипт сборки, который перезаписывает файл в субмодуле, а затем вызывает фактическую цепочку инструментов для сборки.

  2. Взгляните на git post clone hooks.

0 голосов
/ 28 октября 2018

Недостаточно информации, чтобы предоставить конкретное предложение, но я хотел бы посмотреть, можно ли найти решение, расширив / переопределив файл в базовом репо, а не заменив его, так какЯ нигде не вижу этого ведущего.

...