美文网首页
Git丢弃修改

Git丢弃修改

作者: 追逐_e6cf | 来源:发表于2019-01-31 14:37 被阅读0次

    Git是如何跟踪修改的?我们之前修改文件后都用到了两个命令git add <file>git commit,其实在Git中,每次修改后,如果不add到暂存区,那就不会加入到commit
    查看一下文件内容:

cat.jpg
    在其中添加一行记录第二次提交测试,并add到暂存区。
add cat.jpg
    然后我们再添加一行记录我第三次测试,查看此时文件内容,然后直接执行commit命令。
第三次cat.jpg
git commit.jpg
    这时我们查看一下工作目录当前状态:
git status.jpg
    发现test.txt文件修改后并没有在暂存区,因为我们刚才进行了两次修改,而只有第一次修改add到暂存区了,第二次修改后没有执行任何命令,所以并没有加入到暂存区,也就没有commit
    这个时候,如果我们刚才第二步修改的文件内容是我们修改错的,我们想直接丢弃工作区的修改时,可以直接使用命令git checkout -- <file>
git checkout -- test.txt

    执行命令后,再次查看工作目录的当前状态,会发现工作区已经干净了,然后查看一下文件的内容,发现我们第二次的修改记录已经被丢弃了。

git checkout.jpg
    接下来,如果我们不但改乱了工作区内容,还add到了暂存区,这个时候我们想丢弃修改,就要分两步了,第一步使用命令git reset HEAD <file>将暂存区的文件修改回退到工作区,接下来就和上面的情景一样了,我们就可以使用git checkout -- <file>丢弃修改。
    比如我们再次在test.txt文件中添加一行内容我第三次测试一下,并add到暂存区。
修改并add.jpg
    接下来我要丢弃这一步修改,执行git reset HEAD test.txt,将暂存区的修改内容回退到工作区。
git reset.jpg
    接下来的操作就和之前的是一样的了,可以直接丢弃工作区的修改,使用命令git checkout -- <file>
git checkout.jpg
    那如果我们已经提交了不合适的修改到版本库呢?想要撤销本次提交,那就参考之前的版本回退文章,但是前提是没有推送到远程库。
    删除文件本质上和修改文件一样,我们使用命令git rm用于删除一个文件,如果一个文件已经被提交到版本库,那么我们永远不用担心对文件误删。我们试着将test.txt文件删除,然后看一下工作区状态。
git status.jpg
    上面说过,删除文件本质上也是对一个文件的修改,所以可以使用git add或者git rm删除文件,接下来我们执行以下,并查看工作区状态。
git rm.jpg
    这是正常删除就完成了,我们就可以commit到版本库了,但是如果我们删除错了呢?同样的道理,我们可以依次执行git reset HEAD test.txtgit checkout -- test.txt进行恢复。
git reset.jpg

相关文章

  • Git丢弃修改

    Git是如何跟踪修改的?我们之前修改文件后都用到了两个命令git add 、git commit,其实...

  • Git学习日记 Day-2

    学习地址 Git设计优秀之处 跟踪管理修改,而非文件 丢弃修改的内容 改乱了工作区的文件,要直接丢弃$ git c...

  • Git 常用指令

    Git 指令整理备用 丢弃工作区修改: git checkout -- file git checkout 其实是...

  • git 放弃本次本地修改

    git checkout . && git clean -xdf参考:[1]git丢弃本地修改的所有文件(新增、删...

  • 项目中常用 git 命令

    git 命令 更新 git pull 添加 git add xxx.xx 丢弃工作区的修改 git checkou...

  • Git 丢弃本地修改

    分为三种情况: 还未将变更从工作区加入到暂存区,即未执行git add 命令前,如: 此时可以使用git chec...

  • 3.git常用命令

    一、git add 二、git commit 三、git reset 四、丢弃工作区修改 五、创建分支 六、合并分...

  • Git 各种情况的撤销更改操作

    1、修改但没有add的文件,进行丢弃:执行 git checkout ./ 2、已经add的文件,进行丢弃:执行g...

  • git & repo 命令集合

    REPO丢弃所有修改repo forall -vc "git reset --hard" REPO更新到指定分支r...

  • 07 git 时光机穿梭-撤销修改

    git checkout -- file 可以丢弃工作区的修改 今天你的老板突然说要使用svn来代替git,你的心...

网友评论

      本文标题:Git丢弃修改

      本文链接:https://www.haomeiwen.com/subject/yuvksqtx.html