git丢弃本地修改的所有文件(新增、删除、修改)

一,未使用 git add 缓存代码时。

可以使用 git checkout — filepathname (比如: git checkout — readme.md ,不要忘记中间的 “–” ,不写就成了检出分支了!!)。放弃所有的文件修改可以使用 git checkout . 命令。

此命令用来放弃掉所有还没有加入到缓存区(就是 git add 命令)的修改:内容修改与整个文件删除。但是此命令不会删除掉刚新建的文件。因为刚新建的文件还没已有加入到 git 的管理系统中。所以对于git是未知的。自己手动删除就好了。

二,已经使用了 git add 缓存了代码。

可以使用 git reset HEAD filepathname (比如: git reset HEAD readme.md)来放弃指定文件的缓存,放弃所以的缓存可以使用 git reset HEAD . 命令。

此命令用来清除 git 对于文件修改的缓存。相当于撤销 git add 命令所在的工作。在使用本命令后,本地的修改并不会消失,而是回到了如(一)所示的状态。继续用(一)中的操作,就可以放弃本地的修改。

三,已经用 git commit 提交了代码。

可以使用 git reset –hard HEAD^ 来回退到上一次commit的状态。此命令可以用来回退到任意版本:git reset –hard commitid

你可以使用 git log 命令来查看git的提交历史。git log 的输出如下,之一这里可以看到第一行就是 commitid:

commit cf0d692e982d8e372a07aaa6901c395eec73e356 (HEAD -> master)
Author: toyflivver
Date: Thu Sep 28 14:07:14 2017 +0800

多余的空行

commit 14aa4d7ad4ac6fba59b4b8261d32e478e8cc99ff
Author: toyflivver
Date: Thu Sep 28 14:06:44 2017 +0800

正常的代码

commit da3a95c84b6a92934ee30b6728e258bcda75f276
Author: toyflivver
Date: Thu Sep 28 13:58:12 2017 +0800

qbf

commit 267466352079296520320991a75321485224d6c6
Author: toyflivver
Date: Thu Sep 28 13:40:09 2017 +0800

qbf

可以看出现在的状态在 commitid 为 cf0d692e982d8e372a07aaa6901c395eec73e356 的提交上(有 HEAD -> master 标记)。

本地修改了许多文件,其中有些是新增的,因为开发需要这些都不要了,想要丢弃掉,可以使用如下命令:

git checkout . #本地所有修改的。没有的提交的,都返回到原来的状态
git stash #把所有没有提交的修改暂存到stash里面。可用git stash pop回复。

git reset –hard HASH #返回到某个节点,不保留修改,已有的改动会丢失。
git reset –soft HASH #返回到某个节点, 保留修改,已有的改动会保留,在未提交中,git status或git diff可看。

git clean -df #返回到某个节点,(未跟踪文件的删除)
git clean 参数
-n 不实际删除,只是进行演练,展示将要进行的操作,有哪些文件将要被删除。(可先使用该命令参数,然后再决定是否执行)
-f 删除文件
-i 显示将要删除的文件
-d 递归删除目录及文件(未跟踪的)
-q 仅显示错误,成功删除的文件不显示

注:

git reset 删除的是已跟踪的文件,将已commit的回退。
git clean 删除的是未跟踪的文件

也可以使用:

git clean -nxdf(查看要删除的文件及目录,确认无误后再使用下面的命令进行删除)
git checkout . && git clean -xdf

到此这篇关于git丢弃本地修改的所有文件(新增、删除、修改)的文章就介绍到这了,更多相关git丢弃本地修改内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

文章转自脚本之家,原文链接:https://www.jb51.net/article/200202.htm

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:SEO优化专员,转转请注明出处:https://www.chuangxiangniao.com/p/896654.html

(0)
上一篇 2025年1月4日 00:42:54
下一篇 2025年1月4日 00:43:14

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • git中submodule子模块的添加、使用和删除的示例代码

    这篇文章主要介绍了git中submodule子模块的添加、使用和删除的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。 背景 项目中经常使用别人维护的模块,在g…

    编程技术 2025年1月4日
    100
  • Git常用场景使用方法

    这篇文章主要介绍了Git常用场景使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下。 1. 本地存在多个commit: 【场景】代码和远程仓库一致,本地修改后,存在多次本地commit,直接pus…

    2025年1月4日 编程技术
    100
  • Git常用场景使用之分支操作

    这篇文章主要介绍了Git常用场景使用-分支操作,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下。 1. 拉取推送分支: git branch 分支名 : 创建分支 git checkou…

    2025年1月4日 编程技术
    100
  • Git 如何放弃所有本地修改的方法

    这篇文章主要介绍了Git 如何放弃所有本地修改的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。 本文主要主要介绍了Git 如何放弃所有本地修改的方法,分享给大家,…

    编程技术 2025年1月4日
    100
  • 从git仓库中删除.idea文件夹的小妙招

    这篇文章主要介绍了从git仓库中删除.idea文件夹的小妙招,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下. 如果不配置.gitignore的文件,带push代码的时候就会把一写不必要的文件pus…

    编程技术 2025年1月3日
    200
  • 误将.idea文件提交至git后删除的操作方法

    这篇文章主要介绍了误将.idea文件提交至git后删除的操作方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下。 不小心将.idea文件提交后无法删除 1、同步git最新代码,将.idea文件同步…

    编程技术 2025年1月3日
    200

发表回复

登录后才能评论

联系我们

156-6553-5169

在线咨询: QQ交谈

邮件:253000106@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

联系微信