1.概念

分支:

  指向最新提交对象的一个指针(HEAD),分支的本质其实就是一个提交对象。几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。

HEAD:

  是一个指针 它默认指向master分支 切换分支时其实就是让HEAD指向不同的分支,每次有新的提交时 HEAD都会带着当前指向的分支 一起往前移动。

2.一些分支命令

查看整个项目的分支图

$ git  log --oneline --decorate --graph --all

查看分支列表

$ git branch

查看分支指向的最新的提交

$ git branch -v

在当前提交对象上创建新的分支

$ git branch name

在指定的提交对象上创建新的分支

$ git branch name commithash

切换分支

$ git checkout name

删除空的分支 删除已经被合并的分支

$ git branch -d name

强制删除分支

$ git branch -D name

创建&切换分支

$ git checkout -b branchname

合并分支

$ git merge branchname

3.切换分支遇到的坑

  在切换分支时,如果当前分支上有未提交的暂存(第一次)或者有 未暂存的修改(第一次),分支切换成功,但是这种操作可能会污染其他分支。最好的操作是在每次切换分支前,当前分支一定是已提交状态,采用命令 git status 检查一下。分支上所有的内容处于已修改状态或第二次以后的已暂存状态,是不允许切换的。

posted on 2021-03-11 19:41  李起桉  阅读(51)  评论(0编辑  收藏  举报