
Дотфайлы (англ. dotfiles, образовано от dot — «точка» и files — «файлы») будут играть важную роль в вашей карьере разработчика.
Прежде всего, с их помощью вы сможете работать продуктивнее. Но это еще не все: благодаря им вы сможете создавать себе продуктивную рабочую среду на любой машине.
Эта ознакомительная статья поможет вам начать работать с дотфайлами.
Вы узнаете, что это такое, как располагать эти файлы в своей системе и как их создавать. Также я дам вам пару советов и ресурсов для кастомизации настроек и углубления знаний.
Приступим!
Что такое дотфайлы?
Конфигурационные настройки многих программ хранятся в простых текстовых файлах или директориях.
Дотфайлы — это файлы конфигурации для различных программ. С их помощью эти программы управляют своим функционалом.
От обычных файлов и директорий их отличает префикс. Собственно, дотфайлы получили свое название именно из-за точки, с которой начинаются их имена.
В системах на основе Unix дотфайлы по умолчанию являются скрытыми.
Примеры распространенных дотфайлов
Большинство программ по умолчанию сохраняют свои конфигурации в вашей домашней директории.
Вот несколько распространенных дотфайлов, о которых вы могли слышать или даже применять:
- Если вы используете оболочку Bash, вероятно, у вас есть файлы .bash_profile и .bashrc. В обоих хранятся скрипты. Каждый раз, когда вы начинаете новую сессию в терминале, эти скрипты загружаются и настраивают оболочку.
- Если вы используете оболочку Zsh (она теперь является дефолтной в MacOS), у вас есть файл .zshrc, который настраивает эту оболочку.
- Если вы пользуетесь консольным текстовым редактором Vim, у вас есть файл .vimrc, где хранятся настройки редактора.
- После установки и настройки Git на вашей локальной машине у вас появится файл .gitconfig, содержащий всю вашу информацию и настройки.
- Многие программы, вместо того чтобы хранить свои конфиги в вашей домашней директории, сохраняют их в скрытой директории (папке) .config в вашей системе.
Как найти дотфайлы
В Finder (приложение для отображения содержимого Mac) корень вашей директории Home может выглядеть как-то так:

Но на самом деле компьютерные системы имеют куда больше файлов, просто многие из них скрыты по умолчанию.
Чтобы просмотреть дотфайлы в Finder, перейдите в корень вашей директории Home и зажмите одновременно Command + Shift + .
(точка).
Вы увидите множество дотфайлов, созданных либо вами лично, либо автоматически при установке каких-то программ.

Но чаще всего вы будете взаимодействовать с дотфайлами при помощи командной строки. Чтобы увидеть их там, опять же, нужно сделать пару дополнительных шагов.
Команда ls, выводящая список файлов в указанной директории, по умолчанию не выводит дотфайлы, даже если они есть в директории.
Для начала перейдите в вашу домашнюю директорию (если вы еще не в ней). Это делается при помощи команды cd.
Запустите команду ls
с флагом -a
(-a
— сокращение от all — «все»):
ls -a
Если хотите увидеть дополнительную информацию о ваших файлах, можете добавить также флаг -l
. Благодаря ему список файлов и директорий выводится в «длинном» формате. Вы увидите даты и время создания файлов, их размер и т. д.
ls -la
В выводе будут все файлы и папки, хранящиеся в вашей домашней директории, включая скрытые.

Файлы и директории, имена которых начинаются с точки, — это дотфайлы.
Зачем нужны дотфайлы?
Ваши дотфайлы «привязаны» к вам лично.
Вы потратили довольно много времени на тонкую настройку своего рабочего окружения. Подобрали конфигурации, которые наилучшим образом вам подходят. Подогнали внешний вид программ под свой вкус. В итоге вы получили среду разработки, которая вам лично помогает быть более продуктивным.
А представьте, что после всего этого вам приходится сменить машину. И что теперь, начинать все заново, с нуля? А как вспомнить, какие именно настройки и команды вы использовали, чтобы добиться имеющегося результата?
Или другой вариант: у вас есть две машины, и вы хотите, чтобы настройки на них были совершенно одинаковыми.
Одна из основных задач разработчиков — автоматизировать повторяющиеся задачи.
Создание репозитория с дотфайлами и размещение его на хостинге, например, на GitHub, сэкономит вам кучу времени при смене компьютера. Вы сможете подтянуть сохраненные конфиг-файлы на новый компьютер и получить точно такие же настройки, какие были на вашей старой машине.
Таким образом все ваши настройки и предпочтения можно будет использовать повторно и применять на любой новой машине.
Как создавать дотфайлы
Хороший подход — держать все свои дотфайлы в отдельной папке.
Я покажу, как создать папку в корне домашней директории, но это для простоты. Вы можете добавить такую папку там, где сочтете нужным.
Также я покажу создание файлов .zshrc и .vimr, но остальные дотфайлы создаются по тому же принципу.
Перейдите в домашнюю директорию (команда cd
) и создайте в ней директорию с именем dotfiles. В ней будут храниться все ваши конфигурационные файлы.
mkdir dotfiles
Для создания дотфайлов применяем команду touch
и передаем ей в качестве аргумента желаемое имя файла (или несколько имен, если хотите создать несколько файлов). Перед именами файлов ставим точки.
Чтобы создать файлы .zshrc и .vimrc в директории dotfiles, пишем команду так:
touch ~/dotfiles/.zshrc ~/dotfiles/.vimrc
Если в вашей системе уже есть такие файлы и вы хотите просто переместить их в директорию dotfiles, воспользуйтесь командой mv:
mv ~/.zshrc ~/dotfiles/
Первый аргумент — текущий путь к файлу. Тильда (~) обозначает домашнюю директорию. По умолчанию большинство скрытых конфигурационных файлов хранятся именно там.
Второй аргумент — путь к директории, куда нужно переместить файл. В нашем случае мы перемещаем его в директорию dotfiles, которая лежит в домашней директории.
То же самое можно сделать с файлом .vimrc:
mv ~/.vimrc ~/dotfiles/
Посмотрим на наши дотфайлы:
ls -a dotfiles . .. .vimrc .zshrc
Когда файлы созданы, в них можно добавить нужные настройки.
Настраиваем конфиги
Ниже представлено несколько идей, которые помогут вам начать вносить настройки в созданные вами дотфайлы.
Персонализация строки предложения Zsh
После создания файла .zshrc все, добавленное в этот файл, будет влиять на поведение оболочки Zsh.
Пора настроить строку предложения оболочки. Настройка делается по собственному вкусу, я лишь поделюсь ресурсами, которые вам помогут:
- How to customize your zsh prompt like a pro
- Jazz up your zsh terminal in seven steps
- More ideas to customize the zsh prompt
- How to Customize the zsh Prompt in the macOS Terminal
Кастомизация Vim
После создания файла .vimrc можно настроить текстовый редактор Vim. Вот пара ресурсов, которые вам пригодятся:
Алиасы и функции
Один из способов улучшить свой рабочий процесс и повысить продуктивность работы — сэкономить время, которое тратится на ввод часто используемых команд. Это можно сделать при помощи шорткатов (скоращений).
Алиасы (псевдонимы) — это шорткаты для команд, вводимых в терминале. То есть это короткие версии длинных команд.
Например, разработчики часто пользуются Git. Будет хорошей идеей создать алиасы Git для повторяющихся команд. Почитайте о самых полезных в этой статье.
Другой способ сэкономить время — упростить процессы.
Вы можете скомбинировать две команды в одной, создав изолированное поведение, выполняющее одну специфическую задачу. Это делается при помощи функций.
Пример полезной функции — комбинация команды mkdir (создание новой директории) с командой cd (переход в указанную директорию). С помощью этой функции вы сможете создавать новую директорию и тут же переходить в нее.
Функция выглядит так:
function mkcd() { mkdir -p "$@" && cd "$_"; }
О функциях и алиасах в Zsh можно почитать здесь.
Как создавать ссылки на дотфайлы
Вероятно, вы заметили, что никакие настройки, добавленные вами в файлы в директории dotfiles, не возымели никакого эффекта.
Конфигурационные файлы программ, как уже говорилось, по умолчанию хранятся в скрытом виде в домашней директории. То есть программа в поиске своих настроек будет искать их именно там.
Будет хорошей идеей связать ссылкой файл в директории dotfiles (где сохранены нужные вам настройки) и файл в домашней директории, где настройки должны храниться по умолчанию.
Это будто один файл, хранящийся в двух местах одновременно! То есть файл будет находиться в директории dotfiles, а указатель на него будет лежать в домашней директории.
Для создания ссылки используется команда ln
(образовано от link) с аргументом -s
(означает symbolic, «символическая» ссылка).
Создаем символические ссылки для файлов .zshrc и .vimrc:
ln -s ~/dotfiles/.vimrc ~/.vimrc ln -s ~/dotfiles/.zshrc ~/.zshrc
Таким образом программы будут без проблем находить свои настройки там, где ожидают их найти.
ls -l ~/.zshrc lrwxr-xr-x 1 dionysialemonaki staff 39 Oct 21 18:30 /Users/dionysialemonaki/.zshrc -> /Users/dionysialemonak
Если посмотреть полную информацию по файлу .zshrc, мы увидим, что файл, находящийся в домашней директории, указывает на файл в директории dotfiles. Стрелочка ->
означает символическую ссылку.
Проставлять ссылки вручную довольно нудно и утомительно, ведь со временем у вас будет появляться все больше дотфайлов.
Чтобы облегчить этот процесс, можно создать скрипт, автоматически вызывающий ln -s
для создаваемых вами дотфайлов. Или можно использовать специальную утилиту.
Контроль версий для дотфайлов
Контроль версий дотфайлов позволит вам отслеживать все изменения, внесенные в них, а также делиться ими на GitHub.
Перейдите в директорию dotfiles (cd dotfiles
).
Чтобы организовать ваши файлы в git-репозиторий, выполните следующие шаги:
1. Инициализируйте репозиторий:
git init
2. Добавьте в него все файлы, которые у вас есть на данный момент:
git add .
3. Сделайте коммит изменений с соответствующим сообщением:
git commit -m "Added dotfiles"
От редакции Techrocks. Предлагаем почитать статью «Практическое руководство по использованию Git».
Как разместить дотфайлы на GitHub
Для начала, у вас должен быть аккаунт на GitHub. Войдите в него.
Затем создайте новый репозиторий:

Дайте ему имя и кликните «Create repository».
В командной строке введите следующую команду:
git remote add origin url где 'url' - GitHub url созданного вами ранее репозитория, оканчивающийся на .git
Наконец,
git push -u origin main
Вот и всё: вы можете делиться своими дотфайлами онлайн!
Заключение
Теперь вы знакомы с дотфайлами! Надеюсь, этот туториал был вам полезен.
Проект dotfiles, скорее всего, будет с вами всю вашу карьеру. Постепенно он будет разрастаться — по мере того, как вы будете узнавать что-то новое о дотфайлах.
Также со временем как вы начнете лучше разбираться в том, что вам нравится в настройках рабочего окружения, а что — нет. И это неизбежно приведет к изменениям в дотфайлах.
Перевод статьи «Dotfiles – What is a Dotfile and How to Create it in Mac and Linux».