DEV Community

n350071🇯🇵
n350071🇯🇵

Posted on • Updated on

[git] Keep empty directory by .gitkeep

🤔 Situation

The repository is like this. The notes directory is empty. How can I keep the empty directory?

$ tree
.
├── Gemfile
├── Gemfile.lock
├── README.md
├── deleted.enex
├── notes             # <- The empty directory
├── parse.rb
└── parse_to_notable.rb

1 directory, 6 files

👍 Solution

put an empty file at the directory. .gitkeep is popularly used.

$ touch notes/.gitkeep
$ ls -A notes/
.gitkeep

like this

🔗 Parent Note

Top comments (5)

Collapse
 
eldercb profile image
Claudio Bertoli

Any file will work, because any file will make the folder not empty: I believe it's better practice to add a README.md file in the folder explaining the purpose of the folder.
Otherwise future developers might find a folder sometimes with not an intuitive name and wonder what it's for: it might even no longer be used, but with not explanation of its purpose a developer would need to dig into the code to understand that.

Collapse
 
pavelloz profile image
Paweł Kowalski

I think .keep works too ;)

Collapse
 
n350071 profile image
n350071🇯🇵

Thank you, it works too!

Collapse
 
jingxue profile image
Jing Xue

It's probably worth noting that any file name would work. .gitkeep is just a popular choice for this placeholder file.

Collapse
 
n350071 profile image
n350071🇯🇵

Thank you, my understanding was wrong. I've rewritten it.