git 丢弃修改

git 丢弃修改分为3中情况:

一:还未提交得暂存区,也就是没有执行git add时:

直接   git checkout  --  './src/views/index.vue'(示例,某个文件)

          git checkout  --  * (所有修改得文件)

          git checkout  --  .vue(示例,后缀为.vue的文件)

二:已经提交至暂存区,也就是执行了git add时:

可以   git reset HEAD  './src/views/index.vue'(示例,某个文件)

          git reset HEAD  * (所有修改得文件)

          git checkout  .vue(示例,后缀为.vue的文件)

注意:执行上述命令之后只是回到了“一”的情况,修改的代码还在工作区,想要彻底丢弃修改,继续情况“一”的操作就可以了

三:已经将代码提交只本地仓库,也就是执行了git commit时:

可以   git reset --hard HEAD^ (回退到上一个版本)

          git reset --hard CommitId (回退到指定commitId的版本)

注意:请慎用 --hard 参数,因为这回完全丢弃的之前的修改,请在清楚了解情况下使用--hard,建议先用git reset --soft比较安全(虽然可能麻烦点);另外,通过git log 可以查看每次提交信息包括commitId

Git中,`git checkout`命令通常用于切换分支、恢复工作树的内容或者撤销提交。如果你想从仓库的某个版本(可能是远程仓库或本地暂存区的改动)中丢弃所有的未提交更改,你可以使用以下几种方法: 1. **丢弃未跟踪的更改**: - 对于未添加到暂存区的新文件或已修改的文件,可以直接删除它们,然后运行`git add .`(`.`表示当前目录下所有文件)来更新索引,之后执行`git commit -m " Discard untracked changes"`,这样就清空了对新文件的记录。 2. **丢弃暂存区的更改**: - 首先,你需要清楚地知道你想丢弃哪些暂存区的更改。可以查看暂存区状态使用`git status --cached`。 - 然后,对相应的文件使用`git reset HEAD <file>`来移除暂存的更改。如果需要同时移除所有更改,可以加上通配符`*`:`git reset HEAD *`. 3. **丢弃工作目录中的更改**: - 如果只是想放弃尚未提交的工作目录更改,但保留最后一次提交的状态,可以执行`git restore --staged .` (或者 `git reset --hard HEAD`) 来将工作目录回退到上一次提交的状态。 4. **完全忽略并丢弃更改**(慎重操作,可能导致数据丢失): - 如果确定不再需要工作目录和暂存区的所有更改,使用`git clean -f`会强制清理掉所有非版本库内容。注意这是一个危险的操作,务必谨慎操作。 每次使用这些命令后,记得检查是否真的需要丢弃这些更改,并确认不会影响后续的开发工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值