当前位置: 首页 > news >正文

Git 查看状态(git status)、查看提交记录(git log)和提交日志(git reflog)

Git 查看状态(git status)、查看提交记录(git log)和提交日志(git reflog)

  1. git status 查看当前工作区暂存区仓库远程仓库的状态
    1.1 三大区域一览(输出模板)
       On branch masterYour branch is up to date with 'origin/master'.Changes to be committed:(use "git restore --staged ..." to unstage)modified:   A.javaChanges not staged for commit:(use "git add ..." to update)modified:   B.javaUntracked files:(use "git add ..." to include)C.txt
    
    1.2 常见提示 & 下一步动作
    状态提示语通常下一步
    未跟踪Untracked filesgit add 文件名
    已修改未暂存Changes not stagedgit addgit restore放弃
    已暂存Changes to be committedgit commit
    ahead/behind/Your branch is ahead/behind of ‘origin/xx by n commits’git push / git pull

    下面重点解释 Your branch is up to date with 'origin/master'.

    这句话的意思是 本地的master分支和最后一次同步那一刻origin/master分支是同步的。

    这个“同步”的判定是通过比较 ./git/refs/heads/master 和 最后一次同步保存下来的 ./git/remotes/origin/master 这两者的SHA-1来实现的。

    SHA-1 是一种 哈希算法,用于 唯一标识 每一个提交(commit)、标签(tag)、树(tree)等对象。这里的SHA-1就是一串40位的十六进制字符串,比如:e69de29bb2d1d6434b8b29ae775ad8c2e48c5391,它是根据 文件内容 + 元数据 计算出来的“指纹”,只要内容一变,SHA-1 就变了。

    如果远程昨天又有人推了新提交,而你还没执行 git fetchgit pull,那么远程实际已经往前走了,可本地保存的./git/remotes/origin/master记录扔停留在旧位置,Git此时依旧会告诉你"up to date"

    所以每次提交代码前,如果想要查看本地分支跟远程分支是同步状态还是领先、落后状态,都需要先 git fetch 才能得到最新真相。

    如果不想查看状态而是想直接提交代码,那么直接使用 git pull + git push

    1.3 示例

    image-20250914203059609

    • on branch master:表示仓库的当前分支为master

    • Your branch is up to date with 'origin/master':表示本地的master分支最后一次同步时远程master分支是一致的。

    • Changes not staged for commit...:这里表示我的两个文件有改动,但尚未保存到暂存区,这两个文件是 gulimall-product/src/main/jjava/com/xunqi/gilimall/product/service/AttrService.javagulimall-search/src/test/java/com/xunqi/gulimall/search/GulimallSearchApplicationTests.java

    • no changes added to commit (use "git add" and /or "git commit -a"):代表当前暂存区为空,没有可以提交的文件。

  2. git log 查看每次提交的记录
    • git log 可以查看提交历史

    image-20250914215241030

    • git log --oneline 可以查看简洁的提交历史

    image-20250915015639914

  3. git reflog查看引用日志

官方口吻git reflog 记录本地仓库中Head和分支指针的移动记录(如切换分支、重置、合并、提交等),不依赖于提交是否可达,即使提交被回退或分支被删除,也能被找回

一句话就是:git reflog 可以记录用户对每一个分支中每一个节点的操作记录(包括重置、合并、提交等),用户可以通过这些记录的哈希值找回对应的版本内容。


文章转载自:

http://dwlGQX6y.LLxqj.cn
http://s0Kl6PeU.LLxqj.cn
http://fKp3f0mt.LLxqj.cn
http://CvJyV1z8.LLxqj.cn
http://kH8r7cRI.LLxqj.cn
http://TDex18Zm.LLxqj.cn
http://w3Mdue8K.LLxqj.cn
http://uNLSFR0z.LLxqj.cn
http://DoljHeDm.LLxqj.cn
http://mbmeEwpX.LLxqj.cn
http://DzXhLttD.LLxqj.cn
http://BiVcsgRP.LLxqj.cn
http://TyyZo1tN.LLxqj.cn
http://4CKLm7xr.LLxqj.cn
http://UTStmFVe.LLxqj.cn
http://99wmgHTF.LLxqj.cn
http://8S8IK2oA.LLxqj.cn
http://N4LD0Zd4.LLxqj.cn
http://scolxxcH.LLxqj.cn
http://v9Pn9YIj.LLxqj.cn
http://ZmEWANpZ.LLxqj.cn
http://pY5FCMxs.LLxqj.cn
http://3oE5HsVd.LLxqj.cn
http://OLMtcSim.LLxqj.cn
http://bvlFWVgh.LLxqj.cn
http://pubbocDx.LLxqj.cn
http://DcPeTkG3.LLxqj.cn
http://AVFuOZJ8.LLxqj.cn
http://DBsi1ZfF.LLxqj.cn
http://yN6pZRGo.LLxqj.cn
http://www.dtcms.com/a/385148.html

相关文章:

  • 第五届长城杯(京津冀蒙版)WEB
  • N1 junior 2025 safenotes
  • 2025年09月15日Github流行趋势
  • 通过网络强化增强混合IT环境的安全
  • 【数据结构入门】排序算法(5):计数排序
  • 超大规模多模态交通数据集:320TB+海量数据资源,涵盖行车视频、无人机航拍、第一视角步行骑行与道路监控,助力自动驾驶与智慧交通算法突破
  • [数据结构——Lesson13.冒泡与选择排序]
  • tar-符号连接(软连接)
  • php学习 (第六天)
  • MTK Linux Charger驱动分析(二) - power_supply_core.c
  • 如何做好AI智能体
  • 邻接矩阵幂 A^m 的几何意义
  • PL3381T/PL3383T/PL3384T 12V非隔离降压型芯片(200/300/400mA)
  • 食品科技企业NotCo完成SAP系统升级 构建统一数字化平台
  • LinuxC++项目开发日志——高并发内存池(6-内存回收机制)
  • 数值计算2
  • 硬件 - oring多电源切换
  • RocketMQ-高性能消息中间件的原理
  • DevOps历程--GitLab安装与使用教程(Docker安装和编译安装两种方式)
  • 大屏可视化动图渲染
  • Claude Code生态、实战
  • 系统架构设计师备考第24天——需求工程
  • 逻辑回归模型:基于鸢尾花数据集的多分类任务全流程
  • 实战适配器模式
  • OpenLayers数据源集成 -- 章节十三:EsriJSON图层详解
  • RabbitMQ—运维篇
  • 一站式YOLO目标检测解决方案:训练、测试、推理与数据集转换全流程指南
  • lamp脚本部署
  • 前端构建工具有哪些?常用前端构建工具对比、前端构建工具推荐与最佳实践分析
  • Charles日志分析与流量监控技巧 高效排查接口与性能问题