GIT学习----第十一节:创建与合并分支
2023-09-14 09:15:08 时间
学习目的
- 如何查询分支列表?
- 如何创建分支?
- 如何切换分支?
- 如何将分支进行合并?
- 如何将分支进行删除?
master分支
每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。一开始的时候,master分支是一条线,Git用master指向最新的提交,再用HEAD指向master,就能确定当前分支,以及当前分支的提交点。
创建分支
创建分支git-study
$ git branch git-study
查看当前分支
$ git branch
git-study
* master
切换分支到git-study
$ git checkout git-study
Switched to branch 'git-study'
再次查看当前分支
$ git branch
* git-study
master
有两次查看分支:得到结论git branch命令会列出所有分支,当前分支前面会标一个*号。
修改readme.txt文件查看状态
- 修改readme.txt文件查看状态
$ git status
On branch git-study
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: readme.txt
no changes added to commit (use "git add" and/or "git commit -a")
可以看出在git-study分支,readme.txt文件被修改!
- 添加文件并提交文件
1. $ git add readme.txt
2. $ git commit -m "提交分支git-study测试"
[git-study c2799ed] 提交分支git-study测试
1 file changed, 2 insertions(+), 1 deletion(-)
- 切换回master分支
$ git checkout master
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
- 创建并切换分支的综合命令
$ git checkout -b study
Switched to a new branch 'study'
合并分支
- 查看master分支readme.txt文件
$ cat readme.txt
Git is a version control system.
Git is free software.
Git is a distributed version control system.
Git is free software.
添加一行测试工作区、暂存区、分支。
cat 命令测试。
测试修改文件后各区状态!
测试git diff,查看工作区和分支文件的修改情况!
再次测试git diff对比工作区和版本库最新版本的区别。
测试撤销修改!
- 合并master分支和git-study分支
$ git merge git-study
Updating c8e9e50..c2799ed
Fast-forward
readme.txt | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
- git merge命令用于合并指定分支到当前分支。合并后,再查看readme.txt的内容,就可以看到,和dev分支的最新提交是完全一样的。
- 注意到上面的Fast-forward信息,Git告诉我们,这次合并是“快进模式”,也就是直接把master指向dev的当前提交,所以合并速度非常快。
- 当然,也不是每次合并都能Fast-forward,我们后面会讲其他方式的合并。
- 再次查询master分支readme.txt文件
$ cat readme.txt
Git is a version control system.
Git is free software.
Git is a distributed version control system.
Git is free software.
添加一行测试工作区、暂存区、分支。
cat 命令测试。
测试修改文件后各区状态!
测试git diff,查看工作区和分支文件的修改情况!
再次测试git diff对比工作区和版本库最新版本的区别。
测试撤销修改!
Creating a new branch is quick.
合并完成!合并完成!合并完成!
删除分支git-study
- 查看分支列表
$ git branch
git-study
* master
- 删除git-study分支
$ git branch -d git-study
Deleted branch git-study (was c2799ed).
- 再次查询分支列表
$ git branch
* master
总结
- 查看分支列表命令:git branch
- 创建分支命令:git branch
- 切换分支命令:git checkout
- 创建+切换分支命令:git checkout -b
- 合并分支命令:git merge
- 删除分支命令:git branch -d
其他
QQ交流群: 264303060
相关文章
- [Git] git merge和rebase的区别
- [Git] git revert ( revert commit 和 revert merge)
- git基础知识学习
- git学习
- git/github学习笔记
- [Practical Git] Configure global settings with git config
- Git远程05:远程分支的删除与同步
- 【学习总结】Git学习-GIT工作流-千峰教育(来自B站)
- 【学习总结】Git学习-参考廖雪峰老师教程十-自定义Git
- [GIT] History and Configration
- svn checkout与git clone的区别:svn当项目已经checkout过自动拉取最新版本代码,而git会报错
- SAP Spartacus 的 git flow 和发布流程
- [程序员最佳实践学习] git commit 如何写 ? git 分支如何使用? bean copy 最佳实践?
- git statsh命令报错解决
- git的使用学习(九)搭建git服务器
- git的使用学习(八)自定义git
- git的使用学习(五)git的分支管理
- Git:合并分支----git merge命令应用的三种情景
- Git 撤销放弃本地修改
- 强烈推荐 git 图形化管理 连接多个不同的远程仓库 多个SSH KEYS解决方案(含windows自动化、TortoiseGit、SourceTree)
- 012-基于 git hooks 的前端代码质量控制解决方案
- git如何删除已经 add 的文件 (如何撤销已放入缓存区文件的修改)
- 爬虫学习之-git拉取远程错误
- openEuler系统安装git详细操作步骤
- 【Git技巧】第八篇 git历史提交版本回退(可切换任意已经提交的版本)
- 史上最全Git学习教程
- GIT学习----第六节:撤销修改