码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • [Git] 系列二高级命令学习记录


    [Git] 系列二高级命令学习记录

    Author: Xin Pan

    Date: 2022.09.17


    在基础命令之后,开始总结高级命令。

    文章目录

    • [Git] 系列二高级命令学习记录
      • HEAD
      • Level相对引用
        • 方法一
        • 方法二
      • 撤销变更

    HEAD

    git 中的HEAD指针,其值存储在repo_dir/.git/HEAD中,或者也能通过git symbolic-ref HEAD查看。

    HEAD 总是指向当前分支上最近一次提交记录。它指向最近一次提交的分支名。当然他会跟着具体的commit而改变。

    当HEAD和当前的最新commit不同时,称之为分离HEAD状态。

    Level相对引用

    在提交树上移动,有两个办法

    方法一

    通过git log 查看每次提交的哈希(SHA-1),然后通过git checkout移动。

    方法二

    通过相对引用(^)这个符号叫做相对引用。

    # 假设现在处于main,分支的最新的commit。想要回到main的父提交
    git checkout main^
    # 或者
    git checkout HEAD^
    # 二者等价
    # 这里的checkout 使用switch 替换也行
    
    # 如果想回到父父(也就是爷爷)提交
    git switch HEAD^^
    # 这么写也是可以的,但是网上滚的越多^也是越多,不方便。这是可以使用~符号进行多级滚动。
    git switch HEAD~2 # 意思是HEAD指向HEAD的爷爷,回滚2级
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    当希望指向别的分支时可以使用-f强制移动。

    git branch -f NewBranch HEAD~2
    # 将NewBranch 强制指向HEAD的爷爷分支。
    
    • 1
    • 2

    撤销变更

    有两个办法git reset和git revert。摘下网页原文。

    git reset 通过把分支记录回退几个提交记录来实现撤销改动。你可以将这想象成“改写历史”。git reset 向上移动分支,原来指向的提交记录就跟从来没有提交过一样。

    但是git reset改变了本地,对远程无效。也就是别人的本地代码无效,这时候如果想改动在别人机器也有效,那么使用git revert。

    从实现上git revert相当于把HEAD^重新commit一次去覆盖现在的HEAD而已。挺有意思的小操作。

  • 相关阅读:
    OceanBase开源获信通院认可:开源300万行核心代码、社区答疑超3万次
    数据库中的存储过程、游标、触发器与常用的内置函数
    Python异步编程之web框架 异步vs同步 文件IO任务压测对比
    SpringBoot中pom.xml配置详解
    一开始,我以为是跨域问题,原来是413
    Python采集电商平台数据信息
    1206、数据备份与恢复、binlog日志、使用binlog日志恢复数据、innobackupex
    【MAPBOX基础功能】12、mapbox点击点位图层高亮指定的点位
    SOCKS5 认证的方法
    Unity编辑器扩展——ReorderableList
  • 原文地址:https://blog.csdn.net/panxin801/article/details/126912491
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号