zoukankan      html  css  js  c++  java
  • mzy git学习,撤销修改(二)

    git checkout – file: 撤销我们对工作区的修改(没有提交到暂存区)

    当我们在工作区修改了之后,并没有提交到暂存区,如果要撤销对
    某个文件的修改的话,就使用

    git checkout -- 文件名
    

    例如:

    git checkout -- readme.txt
    

    这样就能撤销本地的修改了,重新编辑readme.txt发现之前的修改没有了。

    git reset HEAD <file>:撤销对暂存区的修改,重新放回工作区(没有提交到本地库)即:只是add了,没有commit的时候

    首先使用git add readme.txt,然后使用git status 查看当前的branch(分支)是干净的。(绿色:表示已经从工作区提交到了暂存区)
    然后使用了git reset HEAD命令,再输入git status发现:提示当前的分支modified,并且是红色(说明工作区的readme.txt并没有提交到暂存区中)
    以上说明了git reset HEAD readme.txt确实是将暂存区在的文件重新放回了工作区中。

    至于如果到了版本库中,之前说的:

    git reset --hard 索引ID,可以将版本库和工作区的文件都回退到特定版本中。

    如果是还没有push,只是在本地commit

    git reset --soft|--mixed|--hard <commit_id>
    git push develop develop --force  (本地分支和远程分支都是 develop)
    

    这里的<commit_id>就是每次commit的SHA-1,可以在log里查看到

    –mixed 会保留源码,只是将git commit和index 信息回退到了某个版本.
    –soft 保留源码,只回退到commit信息到某个版本.不涉及index的回退,如果还需要提交,直接commit即可.
    –hard 源码也会回退到某个版本,commit和index 都会回退到某个版本.(注意,这种方式是改变本地代码仓库源码)

  • 相关阅读:
    [转]IDEA 新建 JSP 项目时
    [转] AForge.NET 图像处理类
    [转] 端口被占用的处理
    [极客大挑战 2019]PHP
    今天鸽了
    [ZJCTF 2019]NiZhuanSiWei
    [极客大挑战 2019]Secret File
    [SUCTF 2019]Pythonginx
    [CISCN2019 华北赛区 Day1 Web2]ikun
    [极客大挑战 2019]EasySQL
  • 原文地址:https://www.cnblogs.com/mzywucai/p/11053353.html
Copyright © 2011-2022 走看看