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

git-显示顺序与提交顺序不一致的问题

问题流程

a分支

  1. 初始记录:分支的提交记录是 c1 -> c2 -> c3
  2. 第一次修改提交记录但并未push:a1(20:18)
  3. 第二次修改提交记录:a2(20:20)

b分支

  1. 初始记录: c1 -> c2 -> c3

  2. 第一次修改提交记录但并未push:b1(20:17)

  3. 第二次修改提交记录:b2(20:19)

现在将b分支合并到a分支
期望顺序: c1 -> c2 -> c3 -> a1(20:18)-> a2(20:20)-> b1(20:17)-> b2(20:19)
但实际结果却是: c1 -> c2 -> c3 -> b1(20:17)-> a1(20:18)-> b2(20:19)-> a2(20:20)

问题和分析

为什么呢?
答:因为显示是按时间排序的,并不是按照提交顺序显示的。这种情况显示顺序和提交顺序是不一致的,并不影响代码的合并顺序,虽然我们查看所有记录时显示是:c1 -> c2 -> c3 -> b1(20:17)-> a1(20:18)-> b2(20:19)-> a2(20:20),当时当我们执行一下命令:

git log --oneline --graph --all --decorate

查看提交记录时,记录仍然是按照我们的预期顺序: c1 -> c2 -> c3 -> a1(20:18)-> a2(20:20)-> b1(20:17)-> b2(20:19),因此并不影响代码,仅影响显示顺序,所以并不用担心。

此时不要用以下命令进行查看提交记录,因为它默认是按照提交的时间顺序从最新到最旧排序的。

git log -n 30 --pretty=oneline

解决方案

怎么解决这种呢?
方案一:改变显示排序规则。
方案二:规范化自己的开发流程。


http://www.kler.cn/a/411834.html

相关文章:

  • Spring框架使用xml方式配置ThreadPoolTaskExecutor线程池,并且自定义线程工厂
  • Spring Boot中配置Flink的资源管理
  • Ubuntu安装不同版本的opencv,并任意切换使用
  • 簡單易懂:如何在Windows系統中修改IP地址?
  • 使用ENSP实现默认路由
  • 什么是 WPF 中的依赖属性?有什么作用?
  • unity3d——基础篇2刷(Mathf练习题)
  • RabbitMQ的预取值详解
  • 泷羽sec-linux进阶
  • postman的简单使用
  • 【mac】终端左边太长处理,自定义显示名称(terminal路径显示特别长)
  • 前端小练习——星辰宇宙(JS没有上限!!!)
  • 51单片机从入门到精通:理论与实践指南(一)
  • Hadoop的MapReduce详解
  • 详细描述一下Elasticsearch更新和删除文档的过程?
  • 【Linux】Ubuntu:轻量级Xfce桌面及远程连接
  • 对比C++,Rust在内存安全上做的努力
  • shell数组 Linux分文件 make工具
  • 金铲铲S13双城之战自动拿牌助手
  • emotion2vec语音情感识别 - python 实现
  • 什么是 C++ 中的 Lambda 表达式?Lambda 表达式可以捕获哪些类型的变量?有哪些捕获方式?
  • python的交互式编程
  • 触想工业显示器应用于光伏自动化设备,助力绿色低碳能源发展
  • YOLOv8模型pytorch格式转为onnx格式
  • js.二叉树的层序遍历2
  • [C++]:IO流