git 删除本地所有未提交的更改

本文详细介绍了如何使用 Git 的 `git checkout`、`git rm`、`git reset` 和 `git clean` 命令来撤销本地的所有未提交更改。通过这些方法,开发者可以轻松恢复到之前的代码状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

没时间看的,直接CV大法

还原当前分支代码 两个命令都可以
git checkout -f && git clean -df
git reset --hard && git clean -df

git checkout 代码还原方法

git文件三种状态,not add、add、update
update状态的文件删除修改内容 (已经 git add . 添加缓存的文件,只会回到缓存状态)
git checkout .
git checkout -- .
单个文件 目录结构 (dist/config/index.js)
git checkout -- config/index.js (config 和git文件目录同级)

add状态的文件删除,update状态的文件删除修改的内容
git checkout -f (不支持单个文件)

以上命令都对 not add状态文件无效

git rm 代码还原方法

git rm --cached <FILE>:已 add(tracked) 
未 commit 的文件,使其回到未 add 状态(untracked)
git rm -f <FILE>: 从本地删除已 add 的文件

git reset 代码还原方法

git reset HEAD:撤销 commit,回到 modified 状态。
git reset --soft:撤销 commit,回到 tracked 状态。
git reset --hard:效果同 git checkout -f 一样,原理不同

git clean 代码还原方法

git clean 用作删除所有 untracked 文件。
git clean -n:查看所有将要删除的文件
git clean -f:删除当前目录下 untracked 文件,除过 .gitignore 里的文件或文件夹
git clean -f <path>:指定路径下
git clean -df:删除当前目录下 untracked 文件和文件夹
git clean -xf:删除当前目录下所有 untracked 文件,不管 .gitignore

注意 -xf 、-xdf 尽量少用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值