• git reset 版本回退


    基本参数:

    reset 参数–soft、 –mixed、 –hard,会对状态 working、index、head 进行重置

    git reset --mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息
    git reset --soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
    git reset  --hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容,此命令 慎用!

    head:这是当前分支版本顶端的别名,也就是在当前分支你最近的一个提交
    Index:index也被称为staging area,是指一整套即将被下一个提交的文件集合。他也是将成为HEAD的父亲的那个commit
    working :你正在工作的那个文件集

    回退命令:

    git reset HEAD 最近一个提交
    git reset HEAD^ 上一次提交
    git reset HEAD^ ^ 上一次的 上一次的提交(倒数第三次)
    git reset HEAD^^^ 倒数 第四次的 提交

    git reset HEAD~0 最近一个提交
    git reset HEAD~1 上一次提交
    git reset HEAD^2 上一次的 上一次的提交(倒数第三次)
    git reset HEAD^3 倒数 第四次的 提交

    git reset --hard commit_id 回退到指定commit id 处

    对比两个版本直接的差异

    git diff HEAD //与上次 commit 之间的差别(爸爸)
    git diff HEAD^ //与上上次(爷爷)
    git diff HEAD^^ //与上上上次(曾祖父)
    git diff HEAD~5 //与前面第5次commit(好吧…祖先吧)
    git diff HEAD^..HEAD //中间是两个点比较(爸爸)和(爷爷)的差别
    git diff f5fdjsalfjdskaf..4fdklsajfdksaf //比较 两个不同 hash 值记录之间的不同
    git diff master bird //比较 branch 之间的不同
    git diff --since=1.week.ago --until=1.minute.ago //还可以根据时间来比较哦

  • 相关阅读:
    tomcat虚拟机配置
    日期时分秒毫秒+3位随机数
    springmvc action访问路径不带项目名
    nginx 配置模板
    AES加密
    spring-mvc里的 <mvc:resources> 及静态资源访问
    MySQL——事务(Transaction)
    mysql索引
    < aop:aspect>与< aop:advisor>的区别
    annotation-driven
  • 原文地址:https://www.cnblogs.com/xuey/p/9736920.html
Copyright © 2020-2023  润新知