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. systick 理解

    systick 中断的优先级往往设置为最低值,而不是最高值:如果设置为最低值不会发生上图标号[6]处的情况,设置为最低可能会被其他中断抢占,延长systick的响应时间,但是这个延迟不会累计,因为sy ...

  2. 2003031118—李伟—Python数据分析第四周作业—第二次作业

    项目 matplotlib的使用 课程班级博客链接 班级博客 这个作业要求链接 作业要求 博客名称 2003031118-李伟-Python数据分析第四周作业-第二次作业 要求 每道题要有题目,代码( ...

  3. SpringBoot+MybatisPlus 多数据源问题

    SpringBoot+Mybatis 多数据源报错 使用了2个数据源 @Bean("dataSource") @ConfigurationProperties(prefix = & ...

  4. 扫描线总结【线段树特殊性质,没有pushdown、query操作】

    扫描线 题意 多个矩阵求交集,线段树的特殊操作,非常特殊的情况,一堆证明之后,就没有pushdown操作. 没有pushdown操作,也没有query操作,直接tr[1].len. 亚特兰蒂斯 由于点 ...

  5. 反射(Reflect)

    反射摘要: 反射是java中非常强大的工具,利用反射可以书写框架,而框架就是半完成的代码.反射就是对类中的各个部分进行封装为其它对象,并且可以随时提取出Class或Object成员的属性,例如成员变量 ...

  6. Spring AOP @before@after@around@afterreturning@afterthrowing执行顺序

    public Object aop(Method method,Object object) { try { try { /*doAround start*/ doBefore(); method.i ...

  7. Matlab %补充---用的多的函数

    Input  promat = 'This is a sentence.' x = input(prompt) %显示prompt中的文本并等待用户输入数值或者表达式后按Return %如果用户什么都 ...

  8. C#清空控件的值

    /// 清除容器里面某些控件的值 /// </summary> /// <param name="parContainer">容器类控件</param ...

  9. JSON常见用法

    https://blog.csdn.net/weixin_43631296/article/details/105253434

  10. classload加载机制

    BootstrapClassLoader.ExtClassLoader.AppClassLoader实际是查阅相应的环境属性sun.boot.class.path.java.ext.dirs和java ...