git回退单个文件

git回退单个文件

 

 


git原理

Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。

git reset命令简介

git reset用于回退代码,具有三个参数--hard、--mixed、--soft。

 

回退单个文件

  • git log

获取需要回退的commit_id。

  • git reset
git reset <commit_id> <file_path>

然后执行git status,会发现工作区和暂存区均有变化,提示需要进行git add和git commit,原因是git reset作用于文件时,只会修改暂存区。(版本库肯定无法修改,因为只回退了一个文件,其他的文件并没有回退,所以整个版本不能回退)

注意这边的filepath只能是相对路径比如从项目为根路径或者直接写上文件名

如果是绝对路径则会出现以下的报错 outside repository

 

 

  • git checkout
git checkout .

从暂存区恢复文件到工作区。

posted @ 2022-03-04 09:53  陈晓猛  阅读(7930)  评论(0编辑  收藏  举报