这是我参与「第三届青训营 -后端场」笔记创作活动的的第3篇笔记
Git分支管理
Git 保存的不是文件的变化或者差异,而是一系列不同时刻的文件快照
在进行提交操作时,Git 会保存一个提交对象(commit object)。
首次提交产生的提交对象没有父对象(null) ,之后提交操作产生的提交对象存在一个父对象,而由多个分支合并产生的提交对象有多个父对象,
其结构大致如下:
Git分支的创建
Git的分支简单来说其实是创建了一个可变指针,这也是Git可以以较低成本管理分支的原因
PS :Git 的 “master” 分支跟其它分支完全没有区别。 git init` 命令会默认创建它
# 分支创建命令,创建一个新分支指针指向提交对象
$ git branch xxx(分支名称)
Git分支的切换
Git通过双重指针来辨别当前使用的分支,它有一个名为
HEAD的特殊指针,指向当前所在的本地分支。
#分支切换命令
$ git checkout xxx(分支名称)
但分支进行切换时,切换后指向的提交对象会忽略之前分支的修改。