JIYIK CN >

Current Location:Home > Learning > OPERATING SYSTEM > Git >

Find deleted files in the commit history of a Git project

Author:JIYIK Last Updated:2025/03/27 Views:

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.

Article URL:

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

Scan to Read All Tech Tutorials

Social Media
  • https://www.github.com/onmpw
  • qq:1244347461

Recommended

Tags

Scan the Code
Easier Access Tutorial