分支管理

🍃以前我们在学习Git的时候没有提到分支的概念,我们始终在使用一个分支,即Master分支

😁当多人协同开发时,我们需要完成自己的任务同时不耽误它人开发,每个人都需要有自己的分支。

🐷当我们Debug、实验开发时,我们需要单独一个分支用来修改并测试,稳定后再推送至主分支。

根据以往的流程图,Head即当前版本,它实际指向Master分支,而Master分支指向最新提交的版本:

master

git switch -c

😋现在,我们使用git switch -c命令创建切换到dev分支:

1
2
3
Administrator@LAPTOP-89OP7KJM MINGW64 ~/Desktop/LearnGit (master)
$ git switch -c dev
Switched to a new branch 'dev'

dev

(Head即当前版本指向dev指针,dev指针指向最新版本。)

git branch

😝我们可以使用 git branch 命令查看分支星号后的是当前分支):

1
2
3
4
Administrator@LAPTOP-89OP7KJM MINGW64 ~/Desktop/LearnGit (dev)
$ git branch
* dev
master

git switch

😀还可以使用git switch命令切换分支

1
2
3
Administrator@LAPTOP-89OP7KJM MINGW64 ~/Desktop/LearnGit (dev)
$ git switch master
Switched to branch 'master'

😁我们切回dev分支创建新的版本:

1
2
3
4
5
6
7
8
9
10
11
Administrator@LAPTOP-89OP7KJM MINGW64 ~/Desktop/LearnGit (master)
$ git switch dev
Switched to branch 'dev'

Administrator@LAPTOP-89OP7KJM MINGW64 ~/Desktop/LearnGit (dev)
$ git add Readme.txt

Administrator@LAPTOP-89OP7KJM MINGW64 ~/Desktop/LearnGit (dev)
$ git commit -m "updata"
[dev b20a57f] updata
1 file changed, 1 insertion(+), 1 deletion(-)

dev

😋创建新版本后,Head依旧指向dev,dev指向最新的版本。而Master由于是另外一个分支并没有变动

git merge

😀在dev分支更新版本后,我们切回master会发现文件还是老版本,这是因为master分支并没有更新。

dev

(切换版本实际是修改Head指针,令他指向Master指针。)

😁如果经过我们测试,dev分支没问题,我们可以将它合并到Master分支:

1
2
3
4
5
6
Administrator@LAPTOP-89OP7KJM MINGW64 ~/Desktop/LearnGit (master)
$ git merge dev
Updating 1a1f981..b20a57f
Fast-forward
Readme.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Fast-forward快进模式,这里是将master版本指针指向dev指针指向的版本。

dev

git branch -d

🐷如上图所示,Master和dev指向了同一个版本,如果我们不再需要dev,可以将其删除

1
2
3
Administrator@LAPTOP-89OP7KJM MINGW64 ~/Desktop/LearnGit (master)
$ git branch -d dev
Deleted branch dev (was b20a57f).

标签管理

使用git tag [标签名]命令即可打标签:

1
git tag [标签名]

使用git tag命令可以查看所有标签:

1
git tag

使用git tag [标签名] [id]可以给指定版本打标签:

1
git tag [标签名]  [id]

使用git show [标签名]可以查看标签详细信息:

1
git show [标签名]

总结

😜本节学习了Git关于分支和标签的基本知识,具体细节可以在实践中学习。

🚩创作不易,本人保证所发文章均为精心筹备。

💌如需转载,请保留作者信息和博客地址。

📡如果感觉博客对你略有帮助,欢迎转发给你的朋友,让他们加入到技术风暴中来吧!