idea git log git轨迹图 学习笔记

目录

    • 图解
      • 标签
      • 小圆点
      • 分支关系
      • 箭头
      • 支线
    • 分支
    • 远程分支和本地分支
    • 工作区,缓存区,提交记录
    • Soft、mixed、hard、keep之间的区别
        • soft只会改变head位置,不会改变工作区和缓存区(此时可以提交),只会改变head即当前分支的位置的位置,会产生分叉。
        • mixed会将分支回滚到修改之前
        • Hard和Keep
    • 参考

图解

idea git log git轨迹图 学习笔记_第1张图片

标签

黄色表示当前分支
绿色表示本地存在这个分支
紫色代表远端分支

黄绿紫代表这个各分支是当前分支,在本地,远端分支。

小圆点

仓库是一可追溯的文件集合,该文件的任意一个历史状态就是一个单位,一个小圆点,即一个commit对象。

分支关系

多个分支可以合并为一个新的历史节点。
eg:当前分支为master,合并a到master,a节点停滞,master节点产生一个新的历史变更状态(小节点)

箭头

折叠功能
根据箭头可以找到当前节点的上一个/下一个提交

支线

  • 新建分支会出现支线。
    因为开发需要新的特性,但是没有测试不能在当前分支上修改,所以需要从主 分支拉取新分支在新分支上修改,修改后,合并到主分支。
  • 新分支commit差异,产生支线。
  • 同一分支,不同仓库的commit差异,产生支线。
  • merge合并支线。

分支

分支是指向叶子节点的指针,每个节点都是一次历史状态变更。叶子节点可以理解为最新的历史状态变更。

远程分支和本地分支

远程分支和本地分支对应。
本地a分支push到master,a是master的子节点,master的修改a都有
本地a分支pull/fetch/merage--------master分支,a是master的父节点

工作区,缓存区,提交记录

工作区就是修改代码的地方
缓存区就是git add,rollback的地方
提交记录就是讲缓存区提交上去(不会通过工作区提交)
git提交是根据分支的hash值来计算分支有没有改变从而判定是否可以提交

Soft、mixed、hard、keep之间的区别

idea git log git轨迹图 学习笔记_第2张图片

soft只会改变head位置,不会改变工作区和缓存区(此时可以提交),只会改变head即当前分支的位置的位置,会产生分叉。

idea git log git轨迹图 学习笔记_第3张图片
idea git log git轨迹图 学习笔记_第4张图片
此时,再提交一次
idea git log git轨迹图 学习笔记_第5张图片
当前分支的hash值和远端不一样,产生新的分支

mixed会将分支回滚到修改之前

idea git log git轨迹图 学习笔记_第6张图片
idea git log git轨迹图 学习笔记_第7张图片

Hard和Keep

这两种回滚后会对工作区进行改变,回到开始的时候
soft和mixed修改缓存区,hard和keep修改工作区

参考

Idea 中的 Git 操作看这一篇就够了

IDEA可视化Log理解Git仓库\历史状态\commit\分支

因为水平不足,整理笔记可能出现错误,仅供参考。

你可能感兴趣的:(工具,idea,git,java)