Как делегировать отдельные компоненты программы в ветки, где они используются?
Как-то странно вы себе процесс выдумали. Обычно это выглядит так:

Нужна модалка
Ветвимся от мастера например в ветку feature/modal
Разрабатываем модалку
Тестируем
Если всё ок, то делаем merge request
Сливаем ветку в master

Бывают, конечно, долгоживущие ветки, но лично я стараюсь их избегать, чтобы не было проблем с актуализацией и конфликтами.
Можете попробоать Git - submodules