Git не регистрирует пустые каталоги.
Он поддерживает только файлы.
Таким образом, пустая папка не будет добавлена в систему контроля версий Git.
В этом руководстве мы собираемся показать некоторые подходы к этой проблеме.
Первое решение
Существует популярное решение этой проблемы.
Это просто добавление пустого файла .gitkeep в каждую пустую папку.
После добавления вы можете поставить и зафиксировать файл и добавить папку в систему управления версиями.
mkdir -p some/path
touch some/path/.gitkeep
git add some/path/.gitkeep
git commit
.keep – это не особенность Git, а просто популярное соглашение.
Единственная цель этого файла – сделать каталог видимым для Git.
Второе решение
Есть случаи, когда пустые каталоги всегда должны оставаться пустыми в Git, независимо от того, какую локальную копию они содержат.
Можно добавить пустой каталог в репозиторий Git, добавив .gitignore в каждую пустую папку.
Файл .gitignore указывает Git добавить этот файл в репозиторий и добавить папку, игнорируя все остальные файлы.
Файл .gitignore можно обновить, чтобы добавить дополнительные файлы в хранилище, когда они вам понадобятся.
Общие файлы .gitignore в репо
Файлы .gitignore могут быть определены в разных каталогах в репозитории.
Каждый шаблон проверяется относительно каталога, содержащего этот файл.
Однако самый простой способ – определить один файл .gitignore в корне репо.
Проверенный файл .gitignore в вашем репозитории имеет версии, как и другие файлы, и предоставляется вашей команде, когда вы выполняете команду git push.