github学习笔记(三):修改撤销和删除文件

keep learning! 注意:判断自己属于哪种情况可以使用 get status 命令,

修改和撤销

文件有问题,还没有get add【丢弃工作区的修改】

发现修改的文件有问题不想上传当前文档,一种办法是修改成原来的样子,然后提交。还有一种方法是使用下列语句,

$ git checkout -- readme.txt

命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:

一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

总之,就是让这个文件回到最近一次git commit或git add时的状态。

git checkout -- file命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令

文件有问题,已经 get add,但还没有 commit 【撤销暂存区的修改,重新放回工作区】

已经存在了暂存区,还没有最终上传
用命令git reset HEAD 可以把暂存区的修改撤销掉(unstage),重新放回工作区。

git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本。

文件有问题,已经get add ,也已经 commit【版本回退 拉回时间线】

文件删除

一般情况下直接在工作区把文件删除,或使用 rm 命令删除。

$ rm test.txt

此时Git知道有文件被删除,因此,工作区和版本库就不一致了,git status命令会说明哪些文件被删除了。

确实要删除文件,将其从版本库中移除

用命令 git rm 删掉,并且 git commit

$ git rm test.txt
$ git commit -m "remove test.txt"

该命令后文件就从版本库中被删除了

删错了,想要恢复

使用checkout 命令将文件恢复原状【checkout其实是用版本库里的版本替换工作区的版本,所以无论工作区是修改还是删除,都可以一键还原】

$ git checkout -- test.txt

注:
从来没有被添加到版本库就被删除的文件,是无法恢复的!
命令git rm用于删除一个文件。如果一个文件已经被提交到版本库,那么永远不用担心误删,但是要小心,只能恢复文件到最新版本,且会丢失最近一次提交后你修改的内容。

参考链接

参考链接很重要,大部分全靠它们了。本文只是记录一些自己学习过程中学到的一些东西和一些体会!

  1. 廖雪峰老师的网站 https://www.liaoxuefeng.com/wiki/896043488029600
  2. 怎么从零开始使用github? - 宁萌时光的回答 - 知乎 https://www.zhihu.com/question/419802287/answer/1472579577
  3. git 安装网址:https://git-scm.com/download/win
posted @ 2022-07-06 11:33  芋圆院长  阅读(456)  评论(0编辑  收藏  举报