1 git reflog

git reflog : 可查看所有分支的所有操作记录(含: commit / reset / merge / checkout等操作)

1-1 查看分支的所有变更记录(含: commit / reset / merge / checkout等)

Johnny@LAPTOP-RFPOFJM7 MINGW64 /i/Workspace-I/gitDemo (master)
$ git reflog
cbd0c2f (HEAD -> master) HEAD@{0}: reset: moving to cbd0c2ff834f267876e5c0f5267c42499ce735b6
343ff9b HEAD@{1}: reset: moving to 343ff9b
343ff9b HEAD@{2}: reset: moving to 343ff9ba021a4cebffdc03950f61669e5be51f7f
343ff9b HEAD@{3}: reset: moving to HEAD
343ff9b HEAD@{4}: reset: moving to HEAD
343ff9b HEAD@{5}: reset: moving to HEAD
343ff9b HEAD@{6}: commit: modified file5 - 2th
cbd0c2f (HEAD -> master) HEAD@{7}: commit: modified file5 - 1th
8b8044f HEAD@{8}: commit: add file5 - init
df27a4c (gitDemo-tagV1.1) HEAD@{9}: merge gitDemo-tagV1.1: Fast-forward
055244b (tag: v1.1) HEAD@{10}: checkout: moving from gitDemo-tagV1.1 to master
df27a4c (gitDemo-tagV1.1) HEAD@{11}: checkout: moving from gitDemo-tagV1.1 to gitDemo-tagV1.1
df27a4c (gitDemo-tagV1.1) HEAD@{12}: commit: add file4.txt
055244b (tag: v1.1) HEAD@{13}: checkout: moving from master to gitDemo-tagV1.1
055244b (tag: v1.1) HEAD@{14}: checkout: moving from gitDemo-tagV1.1 to master
055244b (tag: v1.1) HEAD@{15}: checkout: moving from 055244b34aa42178da034d1f5eb32989ca72a80d to gitDemo-tagV1.1
055244b (tag: v1.1) HEAD@{16}: checkout: moving from gitDemo2-dev to v1.1
45b5306 (tag: v1.0, gitDemo2-dev) HEAD@{17}: checkout: moving from master to gitDemo2-dev
055244b (tag: v1.1) HEAD@{18}: commit: add file3.txt on master branch
45b5306 (tag: v1.0, gitDemo2-dev) HEAD@{19}: merge gitDemo2-dev: Fast-forward
6ad753e HEAD@{20}: checkout: moving from gitDemo2-dev to master
45b5306 (tag: v1.0, gitDemo2-dev) HEAD@{21}: checkout: moving from master to gitDemo2-dev
6ad753e HEAD@{22}: checkout: moving from master to master
6ad753e HEAD@{23}: checkout: moving from gitDemo2-dev to master
45b5306 (tag: v1.0, gitDemo2-dev) HEAD@{24}: merge master: Merge made by the 'recursive' strategy.
e1d54b3 HEAD@{25}: checkout: moving from gitDemo2-dev to gitDemo2-dev
e1d54b3 HEAD@{26}: checkout: moving from master to gitDemo2-dev
6ad753e HEAD@{27}: commit: modified file1 -2 on master
7ebed5d HEAD@{28}: checkout: moving from gitDemo2-dev to master
e1d54b3 HEAD@{29}: commit: modified file2 on gitDemo2-dev
c476bfc HEAD@{30}: checkout: moving from master to gitDemo2-dev
7ebed5d HEAD@{31}: checkout: moving from gitDemo2-dev to master
c476bfc HEAD@{32}: commit: add file2 on gitDemo2-dev branch
7ebed5d HEAD@{33}: checkout: moving from master to gitDemo2-dev
7ebed5d HEAD@{34}: commit: modified file1 on master branch
e03aabe HEAD@{35}: commit (initial): init and add file1.txt

1-2 查看分支是基于哪个分支checkout出来的

git reflog --date=local | grep '<分支名>'

2 git log

2-1 查询分支的变化过程

--decorate 标记会让git log显示每个commit的引用(如:分支、tag等)

--oneline 一行显示

--simplify-by-decoration 只显示被branch或tag引用的commit

--all 表示显示所有的branch,这里也可以选择,比如指向显示分支ABC的关系,则将--all替换为branchA branchB branchC

Johnny@LAPTOP-RFPOFJM7 MINGW64 /i/Workspace-I/gitDemo (master)
$ git log --graph --oneline
* e9afde4 (HEAD -> master) modified file5 - 5th
* c085c9a modified file5 - 4th
* c09d26c modified file5 - 3th
* e2f910f modified file5 - 2.2th
* cbd0c2f modified file5 - 1th
* 8b8044f add file5 - init
* df27a4c (gitDemo-tagV1.1) add file4.txt
* 055244b (tag: v1.1) add file3.txt on master branch
* 45b5306 (tag: v1.0, gitDemo2-dev) Merge branch 'master' into gitDemo2-dev
|\
| * 6ad753e modified file1 -2 on master
* | e1d54b3 modified file2 on gitDemo2-dev
* | c476bfc add file2 on gitDemo2-dev branch
|/
* 7ebed5d modified file1 on master branch
* e03aabe init and add file1.txt
# git log --graph --decorate --oneline --simplify-by-decoration --all

* df08309 (dev) 节目信息的反馈
| * 09a3601 (origin/master, origin/HEAD, master) 心跳修复
|/
| * aced49f (test) 计算逻辑调整
|/
| * 22f18e5 (HEAD, upgrade, new_branch) 机器调整
|/
* 6cefafe (tag: 0.6.2, 242/10.26) pid空处理
* 680a169 (tag: 0.6.0) tag: 0.6.0
* da9228e (tag: 0.5.3) recommit missing codes
* c66e1e0 (origin/dev) bitrate check

所有的tag和历史branch都会被列出来,即使branch被delete了

X 参考文献

[Git]git分支查询——图像化[转载]的更多相关文章

  1. git图像化界面GUI的使用

    GIT学习笔记 一.        基础内容 1.git是一个版本控制软件,与svn类似,特点是分布式管理,不需要中间总的服务器,可以增加很多分支. 2.windows下的git叫msysgit,下载 ...

  2. 【github&&git】3、git图像化界面GUI的使用

    GIT学习笔记 一.        基础内容 1.git是一个版本控制软件,与svn类似,特点是分布式管理,不需要中间总的服务器,可以增加很多分支. 2.windows下的git叫msysgit,下载 ...

  3. Git超级菜鸟学习--> 社区化协作以及分支操作

    1 先将主库的url添加到本地上面, git remote add <RepoName> <URL> 2 获取主库的修改记录 git fetch --获取服务器上的修改 git ...

  4. git创建分支并提交项目

    git 创建分支, 切换分支, 合并分支, 删除分支及提交[commit提交到本地仓库push名利提交到远程服务器], 检出[pull], 冲突修改, 本地仓库同步远程服务器[pul和push命令l] ...

  5. 我的Git使用-资料查询,名博笔记

    1.首先您要知道什么是GIT 2.然后对其GIT的历史有所了解(吹牛b的时候用得着,如果还不知道 linux 脱袜子 Linus Torvalds  o(︶︿︶)o ) Git 常用资料查询站点. 官 ...

  6. Git Flow 分支管理简述

    概述 Git 是什么 Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的 ...

  7. 理解git的分支原理,更好地使用git

    文章内容转载于git-scm. 部分内容涉嫌枯燥 一.git分支概念 几乎每一种版本控制系统都以某种形式支持分支.使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作.在很多版本控 ...

  8. git在eclipse中的配置 转载

    git在eclipse中的配置 转载 一_安装EGIT插件 http://download.eclipse.org/egit/updates/ 或者使用Eclipse Marketplace,搜索EG ...

  9. Git合并分支或者冲突

     假设冲突文件是 test/TestCase.php  下面分5种情况讨论. 1.本地不变.   然后远程别人有更新.   git pull   这种最简单,没有冲突,本地工作区直接更新   2.我本 ...

  10. git学习(3)----git 新建分支并提交本地代码到远程分支

    一.步骤 1.在gitlab上创建一个issue,issue一般来说是版本发布说明.比如本次更新了什么功能,修复了什么bug什么的. 2.然后在本地创建一个branch,或者直接在gitlab上申请m ...

随机推荐

  1. 【python】第一模块 步骤四 第一课、初始正则表达式

    第一课.初始正则表达式 一.课程介绍 1.1 课程概要 步骤介绍 正则表达式入门及应用 正则的进阶 案例 综合项目实战 二.正则表达式的基本操作(多敲代码多做练习) 2.1 什么是正则表达式 什么是正 ...

  2. 如何运用Vue自定义组件以及组件的传值

    Vue自定义组件 引入组件 首先在项目内的components新建.vue文件. 创建完成之后搭建完整的框架.其实就是新建组件,在此之前,需要在VScode中引入一个插件(vue 2 snippets ...

  3. 记一次线上DB被打挂

    这周刚新上了需求,在慢慢写代码的时候,突然报警群的消息多了,组长让我看看咋回事. 一开始没当回事,因为faas任务的错误日志一直很多,但是发现新的日志和以前大不相同,显示的是上游faas实例的连接被m ...

  4. C语言初级阶段7——指针1

    C语言初级阶段7--指针1 地址与指针 1.地址:数据在内存中的存储位置编号,是一个常量. 2.指针:指针的本质就是地址. 指针变量的定义和声明 1.指针变量:存储的数据是地址. 2.定义方法:类型* ...

  5. Java中接口相关知识

    1.接口 1.1接口概述 接口就是一种公共的规范标准,只要符合标准,大家都可以通用 Java中的接口更多的体现在对行为的抽象 1.2接口的特点 接口用关键字interface修饰,格式:public ...

  6. js中的占位函数

    String.prototype.signMix= function() { if(arguments.length === 0) return this; var param = arguments ...

  7. vue中的普通函数与箭头函数以及this关键字

    普通函数 普通函数指的是用function定义的函数 var hello = function () { console.log("Hello, Fundebug!"); } 箭头 ...

  8. ASP.NET WEBAPI 获取微信Access token

    /// <summary> /// 获取Access token /// </summary> /// <param name="appid"> ...

  9. FLINK集群搭建

    常用命令总结 启动/停止 flink 集群 ./bin/start-cluster.sh./bin/stop-cluster.sh 启动或停止JOBMANAGER bin/jobmanager.sh ...

  10. MQ(部署模式)

    MQ部署模式 1.master-slave部署模式 1)shared filesystem Master-Slave部署方式 主要是通过共享存储目录来实现master和slave的热备,所有的Acti ...