1. 分支
在 Git 中,分支(Branch)是用于在项目中创建独立开发线路的机制。分支使得开发者可以在不影响主干(main 或 master)的情况下进行实验、开发新功能或修复 Bug。
举个例子:
分⽀就好像是科幻电影⾥⾯的平⾏宇宙,当你正在电脑前努⼒学习 C++ 的时候,另⼀个你正在另⼀个平⾏宇宙⾥ 努⼒学习 Python。
如果两个平⾏宇宙互不⼲扰,那对现在的你也没啥影响。不过,在某个时间点,两个平⾏宇宙合并了,结果,你既学会了 C++ ⼜学会了 Python!

现实世界,在Git分支对应得就是主分支,而平行时间,在Git里面对应得就是新创建得另一个分支。
在Git中,每进行一次提交(commit操作),Git都把它们串成⼀条时间线,这条时间线就可以理解为是⼀个分⽀。如果只有一条分支,在Git里,这个分支就是主分支,即master分支。

而HEAD,HEAD 严格来说不是指向提交,⽽是指向master,master才是指向提交的,所以,HEAD 指向的就是当前分⽀。
每次提交,master分⽀都会向前移动⼀步,这样,随着你不断提交,master分⽀的线也越来越⻓,⽽ HEAD只要⼀直指向master分⽀即可指向当前分⽀

1.1 创建分支
Git ⽀持我们查看或创建其他分⽀,在这⾥我们来创建第⼀个⾃⼰的分⽀ dev ,对应的命令为:
git branch 分支名
使用示例
- 创建dev分支
git branch dev

然后使用git branch可以查看所有分支。

当我们创建新的分⽀后,Git 新建了⼀个指针叫 dev, * 表⽰当前 HEAD 指向的分⽀是 master分⽀。另外,可以通过⽬录结构发现,新的 dev分⽀和 master 指向同⼀个提交。

图解:

1.2 切换分支
使用 git checkout 分支名 命令切换到指定分支。
使用示例
比如切换到dev分支。
git checkout dev

切换到dev分支后,就可以看到*在dev分支前,表明当前分支是dev分支。
切换分支后,HEAD就指向到切换得分支下面了。

可以使用cat .git/HEAD进行验证

切换分支后,在dev分支下进行操作,比如新建一个文件test.txt,然后向其进行随便写入一些东西。
写入完成后,在dev分支下面进行一次提交操作
git add .
git commit

最低0.47元/天 解锁文章
1011

被折叠的 条评论
为什么被折叠?



