【Git】SourceTree学习笔记-图谱理解【2023.03.17】
创始人
2025-05-29 21:56:52
0次

本系列文章前言

  之前一直用的TeamFoundation,近期要代码迁移到Gitee,组内使用SourceTree进行代码管理。故将近期的学习内容做个总结。就我个人来说,不管啥技术基本上都是现学现用,网上看教程也都是看的最精简的版本。恨不能一篇文章就读懂整个框架,一句话就弄明白几万行代码的设计思想。实际后来认识到一句至理名言:

“慢即是快” 一一曾国藩

我意识到,越耐心的总结一篇文章,越慢的梳理一些逻辑,发现自己的“总进度”反而变快了。

摘要

本篇主要分析SourceTree的图谱。

一、本地分支之所有"分支模式"分析

观察分支图谱可以选择仅查看当前分支还是查看所有分支,仅查看当前分支可以只关心某一条分支的更新记录。查看所有分支可以观察到仓库的所有分支及所有分支的更新记录。二者都有针对的使用场景。

(1)develop分支

  1. 下图红色圈1对应Git中的分支,黑色加粗表示当前分支。注意红色矩形框框住的的分支都是本地分支。
  2. 下图红色圈2对应仓库的起始点,也就是仓库的首次提交。
  3. 下图红色圈3空心红色圈表示本地分支所在节点。
    在这里插入图片描述

(2)master分支

双击左侧master,切换到master分支。

  1. 红色圈1所指的空心绿色圈表示当前本地分支所在节点。
  2. 红色圈2所指的是这条分支的源头起点。也就是在哪些更新的基础上的更改。
    在这里插入图片描述

(3)“版本一:剪贴板方式”分支

双击左侧“版本一:剪贴板方式”,切换到该分支。

  1. 红色圈1所指的空心蓝色圈表示当前本地分支所在节点。
  2. 红色圈2所指的是commit的描述。
  3. 红色圈3所指的是标签,表明该commit对应的哪条本地分支。标签的颜色和分支线的颜色一致。
  4. 红色圈4所指的是标签,表明该commit对应的哪条远程分支。远程分支格式有前缀origin
    在这里插入图片描述

(4)总结

  1. 红色圈1所指的是“版本一:剪贴板方式”分支。
  2. 红色圈2所指的是“develop”分支。
  3. 红色圈3所指的是"master"分支。
  4. 三条分支,从最左侧开始并行向上。起点可以清晰表明分支是基于哪些更改。需注意并行向上的竖线不全是分支,但分支一定是按从左往右的方式排布。
  5. 观察时先找空心的圈,眼睛盯住整个空心圈所在的线,按图索骥,所有的实心点都是一次commit。看下commit内容是什么,从哪个分支的哪次更新merge过来的。
    在这里插入图片描述

二、本地分支之当前分支模式理解

观察分支图谱可以选择仅查看当前分支还是查看所有分支,仅查看当前分支可以只关心某一条分支的更新记录。查看所有分支可以观察到仓库的所有分支及所有分支的更新记录。二者都有针对的使用场景。

(1)develop分支

因为我这套代码是以develop为主线衍生的,所以即使切换到当前分支,其他分支也基本都能观察到。常规做法是以master为主线。

  1. 红色圈1所指的下拉框,选择到当前分支。
  2. 红色圈2所指的是一条commit记录,对应一个实心的黄点。
  3. 红色圈3所指的是一条commit记录,对应一个实心的黄点。
  4. 红色圈7所指的是一条commit记录,对应内容是把分支“版本一:剪贴板方式”合并到“master”分支。
  5. 红色圈4、5有前缀origin表示分支是远程分支,注意标签的颜色和分支线的颜色是对应的,线上的commit点和分支线的颜色是一致的。

在这里插入图片描述

(2)master分支

  1. 红色圈1所指的红色线就是master分支。
  2. 红色圈2所指的是一条commit记录,对应的操作是将master分支合并到版本一:”剪贴板方式分支“。
    在这里插入图片描述

(3)“版本一:剪贴板方式”分支

在这里插入图片描述

  1. 红色圈1所指的蓝色线就是版本一:剪贴板方式分支。
  2. 红色圈2所指的是一条commit记录,对应的操作是“update: 版本一注释掉无关代码”。

(4)总结

当前分支模式观察图谱可以先看主线分支,图谱只有一条竖线的,观察主线的更改很清晰。

三、本地仓库与远程仓库

(1)对仓库的理解

Git是分布式代码仓储管理系统。可以理解为CS架构,本地仓库对应客户端,远程仓库对应服务端。多人并行开发一套软件时,每个人都可以把仓库检出checkout到本机,在本地修改之后再更新到服务端。

(2)SourceTree获取远程分支

SourceTree获取远程分支可以双击分支,弹出对话框,选择检出即可。下图矩形框住的地方就是远程服务端所维护的仓库。总共四个分支:develop、HEAD、master、版本一:剪贴板方式。注意到远程分支四个而我们本地分支仅有三个,这是怎么回事?
在这里插入图片描述
双击HEAD尝试检出,发现报错,”fatal: 'HEAD' is not a valid branch name“。实际上因为HEAD类似于链表数据结构的头结点,它不存管数据,仅是指向当前的分支节点。我们切换到哪个分支,HEAD就指向哪个分支。
在这里插入图片描述

(3)本地仓库与远程仓库的关系

抛开分布式不谈,假设程序员只有一个,显然本地与远程仓库应该是实时保持一致的。程序员多了之后不可能做到每个人的开发内容,开发进度都保持一致,但是目标是要尽可能的一致。也就是Git提交代码要及时,拉取代码也要及时。本地与远程除了正在开发的内容其余都要尽可能保持一致。

四、删除分支

相关内容

热门资讯

在大吉订购APP订购交易亏损被...   近期,不少投资者反映在“大吉订购App”上投资白银、铂金等商品遭遇严重亏损。该平台宣称提供现货订...
铂银壹号APP商品订购交易亏损...   许多中小投资者误以为网上的“商品现货订购”是合规合法的理财渠道,殊不知这背后隐藏着巨大的合规风险...
兴鑫淘金APP贵金属订购交易亏...   白银、贵金属或其他商品类投资,除国家批准的正规期货交易场所及持牌期货公司外,市面上大量第三方交易...
铂银掘金APP无资质的违规平台...   铂银掘金等平台的投资者,往往是被“注册送现金”“充值返现券”“首单免亏”等广告话术吸引,进而下载...
八方淘金APP订购交易不合规,...   “八方淘金APP”“铂银掘金APP”“铂银壹号APP”等软件被指以“现货订购”为名,实际采用高杠...
在指尖订购APP订购商品亏损被...   指尖订购APP这类平台,表面是“订购交易”,实则是披着电商外衣的非法期货陷阱。绝大多数投资者被蒙...
在犀贝易购APP做商品订购交易...   市面上打着“现货投资”“贵金属交易”旗号的APP并不少,但真正合规、受监管的平台并不多。犀贝易购...
易达淘金APP虚假商品订购交易...   易达淘金APP存在严重的虚假宣传与违规交易行为。该平台打着“商品订购”的旗号,实则通过不合规的交...
大浪淘金APP白银订购亏损被骗...   大浪淘金APP最隐蔽的套路,在于其完全封闭的内盘交易系统。表面上,它宣称与国际贵金属市场接轨;实...
一品好购APP上订购白银出现亏...   一品好购APP原名“一品订购”,运营方为上海宝智未来信息技术有限公司。近期不少投资者反映在该平台...
九州订购APP贵金属订购投资骗...   九州订购APP正通过抖.音、快手、今日头条等平台大量投放投资广告,用“5元起投”“充值返现”“0...
坚锅淘金APP交易软件并不正规...   当前,市面上大量所谓的“现货商城订购”交易软件,早已偏离了正常的实物商品买卖,演变为高杠杆、高手...
斗金订购APP贵金属期货交易骗...   斗金订购APP的投资者往往被铺天盖地的广告宣传所诱导——注册即送现金、充值返现券等看似诱人的福利...
警惕!云启购APP违规经营,披...   "5元起投、充值返现、稳赚不赔"——这些诱人的广告语背后,可能是一个精心设计的金融陷阱。  近期...
量子淘金APP贵金属投资不合规...   "4元起投""充值返券""月入过万"——这些极具诱惑力的广告语在短视频平台、社交软件上铺天盖地。...
鑫汇智投APP贵金属商品订购骗...   鑫汇智投APP非法期货投资骗局,受害者在投资过程中根本不懂交易,也不去研究和验证这个平台是否正规...
矅光智策APP平台违规经营非法...   矅光智策APP对外宣称是“商城订购”“现货交易”,但查询其经营范围,并未显示具备开展现货期货交易...
黄金珠宝怎么选?内侧刻字都代表... 潮新闻客户端 记者 马焱 通讯员 任倩影 9月8日下午,“云游杭州 乐购金秋”——“浙城·浙放心”活...
原创 冰... 最近全球国债市场正在上演魔幻一幕: 美债、日债、欧债遭遇猛烈抛售,收益率冲到几十年新高,美国财政部都...
日韩股市开盘表现分化 上证报中国证券网讯 9月9日,日韩股市开盘表现分化,韩国综合指数开盘上涨0.26%,报6972.87...