Каков наилучший способ сделать это?
У меня есть разумное мнение, что № 4 не может быть и речи.
Я пытался использовать # 1, но я уже сталкиваюсь с неудобствами подмодулей git.
Я чувствую, что # 2 похож, но немного лучше, чем # 1, но если вы делаете это, как вы делаете свое развитие? Устанавливаете ли вы зависимые библиотеки в вашей системе или храните их в дереве исходных текстов (но не в контроле исходного кода), чтобы имитировать среду сборки?
Много вопросов, но надеемся на один окончательный ответ.
Задача ещё не решена.
Других решений пока нет …