zoukankan      html  css  js  c++  java
  • Git 中撤销修改的场景

    Git中撤销修改的场景

    git中有四个区间来分隔修改记录(注意git存储的修改记录,并不是文件):

    工作区——暂存区(git add 但是未commit的部分)——仓库(已经git commit 的部分)——远程仓库(已经git push的部分)

    1、撤销工作区内容

    当工作区修改需要撤销时:

    a、如果是新增文件,仓库中没有版本记录,即untracked file;

    使用git clean -f 清除;

    1 git clean -f

    b、如果是已经在版本库中存在的文件,使用checkout来检出仓库中版本到工作区

    1 git checkout filename

    2、撤销暂存区内容

    如果已经使用git add 添加到了暂存区,使用reset撤销暂存区

    1 git reset HEAD filename

    3、回退到仓库中上一个版本的提交

    已经提交到仓库的版本也是使用reset来回退,和暂存区的区别就是加了一个--hard参数

    1 # 回退到上一个版本
    2 git reset --hard HEAD^
    3 # 回退到上上个版本
    4 git reset --hard HEAD^^
    5 # 回退到上100个版本
    6 git reset --hard HEAD~100

    4、回退到仓库中指定版本的提交

    使用指定的commit_id回退到指定版本

    1 git reset --hard 777b7eb

    还可以使用revert进行回退:

    1 # 还原到上一个版本
    2 git revert HEAD
    3 # 还原到某个特定的版本
    4 git revert commit_id

    注意:revert和reset的区别在于:revert会生成一个新的commit版本,而reset不会生成新的commit

  • 相关阅读:
    Solr4.7+Tomcat7.0配置
    Solr suggest 搜索建议功能 配置问题
    Solr 通过经纬度指定范围搜索
    Quartz.net 实例
    log4net简单实例
    依赖注入(Autofac)
    设计模式_状态模式_C#
    C# XML操作
    策略模式_C#_设计模式
    STM32随记
  • 原文地址:https://www.cnblogs.com/Zhanxueyou/p/12807598.html
Copyright © 2011-2022 走看看