Если вы про конфиги которые появляются в вас в домашнем каталоге, то пакетные менеджеры их принципиально не трогают. Так что удаляйте руками. Вроде как есть программы которые помогают в поиске и удалении таких неактуальных конфигов.
AlexNew22, ну конкретно у вас вообще-то в том, что вы возвращаете функцию foo, но у неё не перееопределены методы toString/valueOf, потому что они переопределяются только после запуска функции, а вы её не запустили.
А после запуска она возвращает уже новую функцию foo и далее смотри выше…
Мне это видится как три разных репозитория.
И можно использовать сабмодули.
Если не хочется сабмодули, то те же симлинки, но их вовсе не обязательно класть в гит.
Или любой способ запакетировать библиотеку и использовать как это принятов языке на котором вы пишите.
С какого перепугу?
Вообще что бы использовать что-то кроме utf8 нужны очень веские причины