首页 > 其他分享 >git 教程 --git reset 命令

git 教程 --git reset 命令

时间:2022-11-10 16:00:57浏览次数:35  
标签:reset git -- 暂存区 本地 commit

简介

在程序员实际工作过程中,提交代码后,偶尔也有后悔的时候,但是都提交到本地仓库或者推送到远程服务器了,可怎么办?我想要回到某一个提交的版本,git就很贴心的提供了对应的功能,可以让你随心所欲的后悔。虽然世界上没有后悔药,但是git可以做到。

git reset前置知识

 

  • 使用git reset之前,需要对git中的区域有一定的了解。git中的区域划分为工作区(WorkSpace)、暂存区(Stage/Index)、本地库(Local Repo)和远程库(Remote)四个区域。

 

 

  • 同时git reset还需要跟三个参数联合使用,效果更好

  • --hard

  • --mixed

  • --soft

三个指令的区别:对于工作区、暂存区、本地仓库的回滚的粒度范围不一样,可以根据实际的需求选择不同的参数来回滚不同区域的代码。

git reset --hard指令图解

 

  • 使用当前的命令,工作区、暂存区、本地仓库都会回滚到对应commit-id上

 

git reset --mixed指令图解

  • 使用当前的命令,工作区代码不会受到影响,但是暂存区、本地仓库区的代码已经回滚到了YY对应的commit-id上。

git reset --soft指令图解

  • 使用当前的指令,工作区和暂存区的代码不会受到影响,但是本地仓库的代码会回滚到YY对应的commit-id上

总结

对于--hard,--mixed,--soft参数,可以根据具体情况使用,区别就是git中工作区、暂存区、本地仓库是否会受到影响。根据上文可以看出,他们三个对于git区域的影响范围一次递减。如果有良好的add,commit的习惯(根据工作进度及时commit,不要所有的东西一次性梭哈)建议使用--hard模式,但是同时可以跟其它的指令综合使用,比如

git stash -m "暂存信息"

git reset --模式 commit-id

标签:reset,git,--,暂存区,本地,commit
From: https://www.cnblogs.com/zouhong/p/16877334.html

相关文章

  • 完全背包
    概念在01背包的基础上,每个物品可以多次使用代码#include<iostream>#include<cmath>usingnamespacestd;constintN=1010;intn,m;intv[N],w[N];intdp[N][N]......
  • Linux上查看网络带宽的18个常用命令
    Linux上查看网络带宽的18个常用命令:​按照功能进行划分:​监控总体带宽的使用:nload、bmon、bwm-ng、cbm、speedometer和netload​监控总体带宽的使用(批量式输出):vnstat、ifs......
  • 如何清洗DDOS呢?
      流量清洗服务是提供给租用IDC服务的政企客户,针对其发起的DOS/DDOS的监控、告警和防护的一种网络安全服务。  流量清洗针对互联网络上有着高密度依赖性的商业客户和......
  • 【ArcPy】空间相交求面积和
    应用实例,求每宗地涉及开发边界的面积等。实现思路(主干,非完整代码),谨供参考,不懂勿扰。1#coding=gbk2importarcpy3#importnumpy4importsys5fromarcpy......
  • Zone2Vec论文阅读
    Zone2Vec:DistributedRepresentationLearningofUrbanZones 提出了一种新的区域embedding的方法,他们叫做SAZE。考虑到了区域之间的连通性(出租车轨迹连接各个区域),也......
  • 正则表达式
    语法java.util.regexpublicclassMain{publicstaticvoidmain(String[]args){Patternpattern=Pattern.compile("(\\d{3,4})\\-(\\d{7,8})");......
  • element form 动态增减表单项加验证
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="v......
  • vuecli之dodo底部统计功能
    footer<template><divclass="todo-footer"><label><inputtype="checkbox"/></label><span>......
  • 【HZERO】网关鉴权
    网关鉴权https://open.hand-china.com/img/docs/installation-configuration/install/hzero-chain.svg网关鉴权......
  • Zabbix技术分享——使用docker-compose快速部署zabbix监控系统
    前面文章有提到过使用docker来快速拉起一个zabbix监控系统(详见:如何使用docker快速部署一个zabbix监控系统),但是要一个个执行docker启动命令去将对应的容器启动。如果要配置......