Untracked files are the types of files that are present in the Git repository but have not been added yet to its tracking index. The untracked files are placed in the Git repository unstaging area and can be added to the tracking index through the “git add <filename>” command. However, an ignored untracked file comes under the category of a file that has not been recognized by Git and can be removed to free up space.
Git clean works fine with untracked files, but it has its limitations. Not all files can be removed using this command. For instance, you can’t remove recently created directories, files linked to an existing commit, historically tracked files, or files already added to the index. Besides, when using the git clean command, you must use the “-force” option. Otherwise, you will get an error message, and the command won’t work.
This tutorial will demonstrate:
- Method 1: Removing Untracked Single File Using git clean Command
- Method 2: Removing Untracked Multiple Files Using git clean Command
- Method 3: Removing Untracked Directory Using git clean Command
- Method 4: Removing Untracked Ignored Files Using git clean Command
- Git Clean Interactive Mode
Method 1: Removing Untracked Single File Using git clean Command
Untracked files are those files that have not been committed and added to the index of the Git repository. To delete these untracked files, you can utilize the “git clean -f” command.
Take a look at the provided procedure to practically implement the added scenario!
Step 1: Launch Git Terminal
Firstly, launch the Git Bash terminal through the Start menu:
Step 2: Open the Local Git Repository
Next, open the Git local directory using the “cd” command:
Step 3: Generate New File
Generate a new file through the “touch” command:
Step 4: Check Status
Verify the repository’s current status:
The below output shows that a new file is successfully created and untracked:
Step 5: Remove Untracked File
Utilize the “clean” command along with the “-f” option to remove untracked files forcefully:
Step 6: Verify File Removal
Again, execute the “git status” command to check whether the untracked file is removed or not:
From the below output, you can see that the untracked file “File1.txt” is nowhere:
Method 2: Removing Untracked Multiple Files Using git clean Command
To remove multiple untracked files, follow the below provided steps.
Step 1: View Repository Status
First, view the repository status to check whether any untracked files are present in the unstage area or not:
It can be observed that two untracked files are displayed under the “Untracked files” category:
Step 2: Remove Multiple Untracked Files
To remove these untracked files, utilize the below provided Git command:
Again, checkout the Git repository status to verify if the untracked files are deleted or not:
Here you go! All untracked files are deleted:
Method 3: Removing Untracked Directory Using git clean Command
The “git clean -f” command doesn’t delete untracked directories by default. However, adding the “-d” flag will do the magic. Furthermore, like in the case of files, first, you are required to see which untracked directories will get deleted. To do so, use the provided command:
In our case, we see that we have one untracked directory:
Once you’ve confirmed so, proceed to delete the directory using the command:
Verify the deletion operation by running the “git status”:
Here, you can see that there is no untracked file as well as directory:
Method 4: Removing Untracked Ignored Files Using git clean Command
The “-f” flag omits ignored files. Some .gitignore files are non-crucial files generated during compilation. If, after you’ve done a “dry-run”, you feel the need to delete them, add the “-x” flag when deleting folders or files, as it will help to remove untracked “.gitignore” files. For instance, to delete ignored files and untracked directories simultaneously, use the command:
Let’s create a “.gitignore” file in our workspace and use the “-f” to delete it. For this purpose, check out below given instructions.
Step 1: Create New File
To create the file, execute the following command in the Git Bash terminal:
Step 2: Ignore File
Next, to ignore the newly created file, add the file name into the “.gitignore” file using mentioned command:
Run the “git status” to check if the untracked “.gitignore” file exists or not:
Step 3: Remove Ignored Untracked File
Next, remove the ignored file as well as “.gitignore” using below command:
Git Clean Interactive Mode
Using the “-i” flag activates the interactive mode, which is helpful to see what is happening before you delete the files. A “what now” prompt will display, requiring you to enter a command to proceed with any action. For instance, to see the untracked directories using the interactive mode, run the command:
You can click any command to proceed, such as 5, then click the enter button to quit the prompt:
If you are unsure what each command in the prompt represents, choose option “6” to open the help page:
We have elaborated on the method for removing untracked files, ignore files, and directories using the git clean command.
Conclusion
To remove untracked files using the git clean command, first open the Git bash terminal. Then, move to the Git local repository. Then, create a new file that will remain untracked. After that, utilize the “$ git clean -f” command to delete a single untracked file or multiple files. Delete an untracked directory or folder through the “git clean” command along with the “-d” option. In this write-up, we have shown how to use the Git clean command to delete untracked files, directories, and the .gitignore file for deleting untracked ignored files.