Git Add Directory

In this guide, we are going to epxlore how we can use the git add command to add directories into the git staging area.

Git Add Directory

The git add is a powerful and useful command when working with git VCS. It allows us to stage changes for committing.

Staging refers to the process of selecting and preparing changes we want to include in the next commit. While we mainly use the git add command to stage individual files, we can also use to add an entire directory to the git stagin area.

What Does git add Do?

When we run the git add command, we are basically telling git to take note of the changes or files that we want to include in the next commit.

This is a very important step is it allows us to separate changes into various logical units before committing them. For example, suppose some changes are fixing a bug while the other ones are adding new features.

We can start by adding the files containing the bug fixes to the staging area and then running a commit denoting the fix.

We can then re-run the add command to add the files that contains the new features and finally, commit those changes that contain the new features.

As a result, staging changes with git add provides us fine-grained control over what gets included in the commits.

Git Add Folder

To add an entire directory to the staging area in Git, we can use the following command:

git add dir_name/
  • Replace dir_name with the actual name of the directory we wish to add.

This command stages all the changes within the specified directories and its subdirectories.


Example 1 - Add an Empty Directory

Suppose we have an empty directory named "docs" in the Git repository, and we want to add it to the staging area. We can do this by running the following command:

git add docs/

In this case, git add stages the empty folder "docs" for the next commit.

Example 2 - Add Files within a Directory

Let us say we have a directory called "images" in the repository, and it contains several image files.

To stage all the files within the "images" directory, we can use the command:

git add images/

This command stages all the changes made to files within the "images" directory.

Example 3 - Add Specific Files Within Directory

in some other cases,, we may only want to stage specific files within a directory.

To achieve this, we can specify the file paths within the directory. For instance, if we have a directory called src, that contains two files: and We can stage them separately as shown:

git add src/
git add src/

This allows us to selectively stage the changes in specific files within the src, directory.

Verify Staged Changes

To confirm which files and folders are currently staged for the next commit, you can use the following command:.

git status

This should return a summary of the staged changes and untracked files, allowing you to review your staging area before committing.


This guide walked you through the fundamentals of working with the git add command to add various files and directories into the git staging area and prepare them for commit.

Great! Next, complete checkout for full access to GeekBits.
Welcome back! You've successfully signed in.
You've successfully subscribed to GeekBits.
Success! Your account is fully activated, you now have access to all content.
Success! Your billing info has been updated.
Your billing was not updated.