Question

How to add and commit an empty directory in my Git repository?

Hi all,

I need to commit an empty directory to my Git project, but when I create a new directory with:

  1. mkdir my_dir

And then check the status with:

  1. git status

Git says that there is nothing to commit, so running git add . does not do anything.

How can I add an empty directory/folder to my Git repository?


Submit an answer


This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Sign In or Sign Up to Answer

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Bobby Iliev
Site Moderator
Site Moderator badge
November 16, 2020
Accepted Answer

Hi there,

Yes, indeed, by design, you can not commit empty directories, containing no files, to a Git repository.

What I usually do in such cases is to create a .gitkeep or a .gitignore file inside that directory:

  • First create the folder:
  1. mkdir your_dir_here
  • Then create that empty .gitkeep file:
  1. touch your_dir_here/.gitkeep
  • After that, you will be able to see the file with git status:
Output
Untracked files:
  (use "git add <file>..." to include in what will be committed)

        your_dir_here/
  • And add the file:
  1. git add your_dir_here/
  • Finally commit as normal:
  1. git commit -m "Adding Empty Directory"

The .gitkeep does not really have any special meaning for Git, but it will allow you to commit the empty directory in question!

Alternatively, you can use any other file. My advice is to be consistent throughout your project(s).

Regards, Bobby

Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!

Sign up

Become a contributor for community

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

DigitalOcean Documentation

Full documentation for every DigitalOcean product.

Resources for startups and SMBs

The Wave has everything you need to know about building a business, from raising funding to marketing your product.

Get our newsletter

Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.

New accounts only. By submitting your email you agree to our Privacy Policy

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.