Обновление 2012:
См Mike Morearty «сек ответ :
Включает
Вы можете включить один файл конфигурации из другого, установив в специальной include.pathпеременной имя файла, который будет включен.
Включаемый файл раскрывается немедленно, как если бы его содержимое было найдено в месте расположения директивы include.
Если значение include.pathпеременной является относительным путем, путь считается относительным к файлу конфигурации, в котором была найдена директива include.
Значение include.pathподлежит расширению тильды: ~/расширяется до значения $HOMEи ~user/до домашнего каталога указанного пользователя.
Не думаю.
Я бы предпочел поместить эту настройку в ~/.gitconfigфайл
Пользовательский файл конфигурации. Также называется «глобальным» файлом конфигурации.
Таким образом, он завершает файл, специфичный для проекта .gitconfig, и не публикуется при отправке в GitHub. Смотрите также этот ответ SO для получения дополнительной информации о глобальном конфигурационном файле.
Git имеет 3 конфигурационных файла .
Bjeanes добавляет в комментариях:
похоже, все упустили суть этого вопроса.
Дэвид , очевидно , хочет , чтобы подтолкнуть вверх репо всех его точечных файлов ( bashrc, gemrcи т.д.) , включая его .gitconfigтак , что он может иметь все его настройки на всех своих машинах.
Способ выдвинуть части .gitconfigфайла путем включения и игнорирования личных записей - это то, за чем он (и я, если на то пошло) следует.
Один из возможных способов - использовать драйвер фильтра smudge / clean для дешифрования / шифрования одного файла с конфиденциальной конфиденциальной информацией (см. Эту ветку ), чтобы дополнить локальный файл, такой как ~ / .gitconfig, расшифрованными частями, относящимися к этому. файл.
Таким образом, у вас может быть Git-репо со всеми вашими точечными файлами, плюс один файл с зашифрованной информацией, предназначенный для расшифровки и добавления к указанным точечным файлам.

В .gitattributes(или .git/info/a..) использовании:
myPrivateInfosFile filter=gpg diff=gpg
В вашем репо-файле .config:
[filter "gpg"]
smudge = gpg -d -q --batch --no-tty
clean = gpg -ea -q --batch --no-tty -r C920A124
[diff "gpg"]
textconv = decrypt
( Решение на основе GPG означает, что вы, конечно, передали свои личные / открытые ключи другим способом на конечный компьютер, где вы хотите восстановить все свои точечные файлы путем клонирования этого специального репозитория)
На самом деле, в вашем случае сценарий smudge необходимо завершить так, как он должен, после расшифровки этого файла, продолжить и добавить соответствующие части в ваш глобальный ~/.gitconfigфайл (если вы не перезаписываете файл глобальной конфигурации другим местоположением ) или другие точечные файлы для этого иметь значение.
https://kerneltrap.org/mailarchive/git/2008/3/13/1153274/thread
(неудобства gpg обсуждаются далее в этой теме ) (это отличается от использования полного зашифрованного репозитория Git, как описано здесь )