In the process of using Git for version control, we sometimes make some mistakes, such as accidentally deleting or modifying a file or folder. When we discover this error, many people's first reaction is to feel anxious and helpless, not knowing what to do. In fact, Git has a very useful function that can help us recover deleted folders. Let’s explain how to operate it.
First, open your Git Bash terminal window. Make sure you have entered the directory where your Git repository is located.
We need to view historical submission records and find the submission records of deleted folders. You can view historical commit records through the following command:
git log
After executing the above command, all commit records of the current branch will be displayed, and the latest commit record will be arranged in chronological order at the top. You can exit by pressing the Q
key.
If there are multiple branches in the Git warehouse, you can use the following command to view the submission record of the specified branch:
git log 分支名
After executing the git log
command, you will see a series of commit record information, as follows:
commit 58107b68d9d338cf3e3dbefd3a8d0a45b9421da5 Author: your_name <your_email@example.com> Date: Mon Jul 5 09:11:50 2021 +0300 Your commit message
where 58107b68d9d338cf3e3dbefd3a8d0a45b9421da5
is the hash value of this submission, We need to find the commit record that deleted the folder.
If you know the name of the deleted folder, you can use the following command to find the commit record containing that folder:
git log --all -- <被删除文件夹路径>
For example, the path to the deleted folder is src /components
, you can execute the following command:
git log --all -- src/components
If you do not know the name of the deleted folder, you can first view all submission records, and then choose to restore the correct version.
After finding the submission record of the deleted folder, you can restore the deleted folder through the following command:
git checkout <被删除文件夹的提交哈希值> -- <被删除文件夹路径>
For example, if the commit hash value of the deleted folder is found to be 58107b68d9d338cf3e3dbefd3a8d0a45b9421da5
, and the path of the deleted folder is src/components
, you can execute the following command:
git checkout 58107b68d9d338cf3e3dbefd3a8d0a45b9421da5 -- src/components
After executing the above command, Git will restore the folder in the selected historical version to the current branch. Now, you can go back to your code editor and see if the restored folder exists.
Summary
With the above steps, you can simply restore a folder accidentally deleted in Git. Of course, if you have a complete backup, your best option is to restore the folder from the backup. When you perform Git recovery operations, be sure to use caution to avoid any unnecessary losses or errors.
The above is the detailed content of How to restore deleted folder with git (steps). For more information, please follow other related articles on the PHP Chinese website!