git回滚撤销操作 -- git使用笔记3

git的这一系列操作,真正的让你知道,这个世界上有后悔药吃的。本人太菜,先记录下常用的几种回滚撤销操作

删除未添加到版本的文件

操作解释
清除untrack的文件或文件夹

//中括号内名字非必填,不指定名字默认所有
git clean -f [filename]  //删除未跟踪的文件
git clean -fd [foldername]  //删除未跟踪的文件和文件夹
git clean -xfd  [foldername] //删除未跟踪的文件和文件夹 (慎用:gitignore的资源也会一起删除)

一般流程

git clean -nfd   //检查未跟踪的资源
git clean -fd    //删除未跟踪的资源

撤销工作区

工作区:就是你当前可见的,正在工作的目录和文件
操作解释:指定撤销你在工作区的部分操作,让文件回到最后一次commit或者add的状态

git checkout -- [文件名] //撤销指定文件的修改

git checkout .                //撤销所有文件改动

撤销暂存区

暂存区:已经 git add进去,尚未 git commit
操作解释:通俗的说,就是回到git add前

git rm --cache [文件名] //撤销暂存区指定文件回到工作区

git reset -- [文件名]   //撤销暂存区指定文件回到工作区

git revert [--hard] [HEAD]  // 撤销暂存区所有文件回到工作区,HEAD可以省略(切换到最近的一个提交)

切换版本

版本库:就是.git中保存的版本仓库,也就是已经commit过的那些记录。
操作解释:即版本回滚,执行此操作,将使当前版本代码回到指定的版本号之前的一个版本

git log --pretty=oneline     // 查看最近几次commit的commit_id(只能看到当前版本往前的提交记录)
git reflog --pretty=oneline  // 查看所有提交的记录(包括已经切换掉的,故如果忘记了要去哪一次提交,可以使用这个)

git revert [--hard] [HEAD]       // 切换到最近的一个提交(--hard可省略)
git revert --hard HEAD~20        // 切换到往前20个版本
git revert --hard <commit_id>    // 切换到指定的版本

续断的博客
请先登录后发表评论
  • latest comments
  • 总共0条评论