Я смешиваю и сопоставляю.
например. Я CVS'ed мой домашний каталог около 20 лет. (Сейчас я использую hg и / или git.)
Не только мой домашний каталог, но и множество разных проектов и инструментов. Не связано, кроме того, что я над ними работал. Все они находятся в моем домашнем каталоге, в таких местах, как ~ glew / src
Подкаталоги требуют меньше ресурсов для обслуживания.
Модули - это то, что вам нужно, если вам нужно собрать несколько подкаталогов в один логический модуль.
например. некоторые из моих инструментов живут в таких местах, как ~ / src / tool1, ~ / src / tool2.
Некоторые из них имеют общие черты ~ / src / my-lib
Я не хочу, чтобы люди забирали все ~ glew / src, чтобы использовать ~ / tool1. То есть Я хочу, чтобы они могли оформить заказ только на tool1 и получить все, что им нужно. Я не хочу, чтобы они проверяли ~ / src / tool1, затем ~ / src / my-lib, а затем ~ / src / my-lib2 ...
Итак, я создаю модуль, используя &, чтобы при извлечении tool1 они также получали экземпляр ~ / src / my-lib как tool1 / import / my-lib. И так далее.