Find deleted files in the commit history of a Git project
This article discusses finding deleted files in the commit history of a project. This is handy when you want to recover a file you deleted in a project.
Without further ado, let’s jump right in.
Steps to find and restore deleted files in Git
In the scenario where we have deleted a file and cannot remember the file path, we can execute the following command to find the path.
$ git log --all --full-history -- "<OurFile>"
The command above will output all commits in our commit history that contain <OurFile>
files whose names match our pattern . Of course, you must <OurFile>
replace with the correct name of your file.
The output can help us get the file path using the commit hash as shown below.
$ git show --pretty="" --name-only <sha1-commit-hash>
Now we have the path to the file. However, we want to restore a specific version of the file.
What should we do?
As shown below, we have to get the commit that changed the file.
$ git log --all --full-history -- <path-to-file>
To get the version we want, we would run:
$ git show <sha1-commit-hash> -- <path-to-file>
Restore files to your working copy
As shown in the figure below, we will use the git checkout command to restore our files.
$ git checkout <sha1-commit-hash>^ -- <path-to-file>
We added the caret ^
to instruct Git to get the file version from the previous commit. This ensures that we get the previous contents of the file if it was deleted.
In short, the Git version control system is very strict about losing user data. If you have deleted a file in your project and you need to recover it, follow the steps we outlined above.
You don't need to know the full path to the file.
For reprinting, please send an email to 1244347461@qq.com for approval. After obtaining the author's consent, kindly include the source as a link.
Related Articles
Adding files in Git
Publish Date:2025/03/27 Views:74 Category:Git
-
This article will discuss different ways to add files to our repository on Git. In Git, use git add the command to add all files We can git add add all the files without exception using the command as shown below. git add -A -A The -p param
Different ways to add files to staging with Git
Publish Date:2025/03/27 Views:199 Category:Git
-
While the command git add is probably the most commonly used command for adding files to your stash, other flags may come in handy depending on the situation. This article takes a deep dive into git add the flags you can use with the comman
Git add folder
Publish Date:2025/03/27 Views:100 Category:Git
-
git add Used to add specific folders and files. This tutorial will handle it in a modern way git add folder . git add Add all or specific folders and files to staging in Git using Use the following syntax to add files: git add file Use the
Recursively add files and folders in Git
Publish Date:2025/03/27 Views:136 Category:Git
-
Sometimes, we come across a situation where we have to adjust some files, folders, and subfolders that already exist in Git. A part of a nested folder system has to be added remotely to Git. This article will discuss how to use commands to
Undoing rm in Git
Publish Date:2025/03/27 Views:79 Category:Git
-
In Git, the term rm is git remove an alias for the command. So it is used to remove a single file or a bunch of files from the repository. git rm The main functionality of in Git is to remove tracked files using Git index. However, git rm i
Revert a file to a previous commit in Git
Publish Date:2025/03/27 Views:170 Category:Git
-
Git is a version control system. We use it to track changes made to files in a project directory. In a collaborative development environment, many team members often work on the same files and make changes to them. We often face a situation
Git synchronizes branches with Master
Publish Date:2025/03/27 Views:61 Category:Git
-
Git is a well-organized distributed version control system that can be very effective in managing source code in a distributed team of developers. When different developers are working on different product features, once they have completed
Setting Upstream in Git
Publish Date:2025/03/26 Views:152 Category:Git
-
In this article, we will learn how to use in Git upstream . When using Git by cloning and creating new repositories in branches, we must set up upstream branches for future commits and fetches. But first, we should understand what is upstre
Add Git to PATH on Windows
Publish Date:2025/03/26 Views:92 Category:Git
-
Git is a free and open source version control system designed to work with projects quickly and efficiently. You can use it on Windows, Mac, and Linux operating systems. This article explains how to add git to your Windows PATH environment