Git版本控制系统-分支介绍及操作(六)

简介: git分支介绍首先项目建立,会有主干master,每一个开发人员从主干上拉取代码到本地,形成一个分支,一个开发可以使用无数个分支,首先在自己的分支上修改代码,当代码写的没问题后,要先将master上的代码拉到分支上,与分支进行测试后没问题,在将分支的代码与maste代码进行合并。

git分支介绍

首先项目建立,会有主干master,每一个开发人员从主干上拉取代码到本地,形成一个分支,一个开发可以使用无数个分支,首先在自己的分支上修改代码,当代码写的没问题后,要先将master上的代码拉到分支上,与分支进行测试后没问题,在将分支的代码与maste代码进行合并。


image.png

1.git分支操作

1.1.创建分支

git branch 分支名

git branch -d 分支名

1)使用git branch创一个分支
[root@192 ~]# cd /data_git/
[root@192 data_git]# git branch bug
2)查看所有分支,带*号表示当前在哪一个分支
[root@192 data_git]# git branch
  bug
* master
3)删除一个分支
[root@192 data_git]# git branch -d bug
已删除分支 bug(曾为 a5fe3d8)。

1.2.切换分支

1)进入刚刚创建的bug分支
[root@192 data_git]# git checkout bug
切换到分支 'bug'
[root@192 data_git]# git branch 
* bug
  master
bug分支会记录有master上的所有文件内容

1.3.在分支上创建新功能并提交至本地仓库

[root@192 data_git]# vim file1
[root@192 data_git]# cat file1
jiangxl
sadj
sdjl;a
akjskl
dsjj
sdalk
sdajlkl
[root@192 data_git]# git add .
[root@192 data_git]# git commit -m "修改了file1"
[bug 8a57ed8] 修改了file1
 1 file changed, 3 insertions(+)

1.4.分支代码合并

合并分支首先要将master分支拉取到本地,测试没问题后再将matser代码与分支进行合并

合并分支,基于dev分支,将master分支的内容合并至dev分支,在dev上进行测试功能

要时刻保持与master上的代码是一致的

合并代码语法:

master合并bug就需要在master分支执行合并命令

bug合并master就需要在bug分支执行命令

1)当前分支
[root@192 data_git]# git branch 
* bug
  master
2)在bug分支合并master代码
[root@192 data_git]# git merge master 
Already up-to-date.         #此输出表示master无最新代码
3)在master分支合并bug分支,首先切回到master,在使用merge命令进行合并
[root@192 data_git]# git checkout master
切换到分支 'master'
[root@192 data_git]# git merge bug
更新 a5fe3d8..8a57ed8
Fast-forward
 file1 | 3 +++
 1 file changed, 3 insertions(+)      1个文件改动,3行插入

1.5.分支合并时出现冲突

分支合并冲突会出现在两个开发同时修改同一个代码文件的同一行,提交时会提示合并冲突

1)首先进入bug分支新建一个file7并提交到本地仓库
[root@192 data_git]# git branch
* bug
  master
[root@192 data_git]# vim file7
[root@192 data_git]# cat file7
jiangxl.com
docx.jiangxl.com
www.jiangxl.com
[root@192 data_git]# git add .
[root@192 data_git]# git commit -m "file7--3hang"
[bug 884a629] file7--3hang
 2 files changed, 3 insertions(+), 1 deletion(-)
 delete mode 100644 file4.txt
 create mode 100644 file7
2)切换到master也建一个file7并提交
[root@192 data_git]# git checkout master 
切换到分支 'master'
[root@192 data_git]# vim file7
[root@192 data_git]# cat file7
jiangxl
jiangxl
jiangxl
jiangxl
[root@192 data_git]# git add .
[root@192 data_git]# git commit -m "file7"
[master 2bf2d7f] file7
 1 file changed, 4 insertions(+)
 create mode 100644 file7
3)切换到bug分支在进行合并会报错冲突
[root@192 data_git]# git checkout bug 
切换到分支 'bug'
[root@192 data_git]# git merge master 
自动合并 file7
冲突(添加/添加):合并冲突于 file7
自动合并失败,修正冲突然后提交修正的结果。
4)解决冲突,与对应的开发协商好保留哪些代码,如果都保留则把1/5/10行删掉
[root@192 data_git]# vim file7
<<<<<<< HEAD        #当前分支的
jiangxl.com
docx.jiangxl.com
www.jiangxl.com
=======
jiangxl
jiangxl
jiangxl
jiangxl
>>>>>>> master        #master分支的
修改完文件重新提交至本地仓库
[root@192 data_git]# git add .
[root@192 data_git]# git commit -m "merge解决"
5)切回到master进行合并
[root@192 data_git]# git checkout master 
切换到分支 'master'
[root@192 data_git]# git merge bug 
更新 22fddd3..e7821a1
Fast-forward
 file8 | 3 +++
 1 file changed, 3 insertions(+)
6)查看文件,已经合并
[root@192 data_git]# cat file7
jiangxl.com
docx.jiangxl.com
www.jiangxl.com
jiangxl
jiangxl
jiangxl
jiangxl
目录
相关文章
|
28天前
|
开发工具 git
图解Git——分支的新建与合并《Pro Git》
在Git开发中,新建与合并分支是常见的操作。以实际开发为例:为实现新需求创建分支`iss53`进行开发;遇紧急Bug时,切换至线上分支创建`hotfix`修复并合并回线上分支,再切换回`iss53`继续工作。完成`iss53`后,切换到`master`合并。若出现冲突,使用`git status`查看,手动编辑解决冲突后标记为已解决并提交。图形化工具如`git mergetool`也可辅助解决冲突。
44 9
|
28天前
|
开发工具 git 开发者
图解Git——分支简介《Pro Git》
Git 分支是其核心特性之一,允许开发者从主开发线分离工作,避免干扰主线。传统版本控制系统创建分支效率低,而Git的分支创建和切换非常轻量高效。
70 9
|
2天前
|
开发工具 git 开发者
vscode+git解决远程分支合并冲突
通过这些详细步骤,您可以掌握如何使用VSCode和Git高效地解决远程分支合并冲突,提高开发效率和代码质量。希望这些内容对您的学习和工作有所帮助。
125 86
|
28天前
|
存储 项目管理 开发工具
图解Git——分支开发工作流《Pro Git》
分支开发工作流利用Git的分支功能,支持灵活的项目管理。长期分支如`master`和`develop`分别保存稳定和开发中的代码;短期主题分支用于开发单一特性或修复问题,完成后合并到主分支。此模式确保代码稳定性,支持并行开发、便于审查和灵活调整。建议维护明确的长期分支,保持主题分支短小精悍,并定期清理无用分支。配置上可保护关键分支,遵循命名规范。
54 7
|
28天前
|
存储 缓存 Java
图解Git——远程分支《Pro Git》
远程分支是 Git 中用于管理分布式协作的关键概念。远程引用指向远程仓库中的分支和标签,常用 `git ls-remote` 或 `git remote show` 查看。日常开发中,通常使用远程跟踪分支(如 `origin/main`)与远程分支交互,简化远程仓库状态的管理和使用。远程跟踪分支记录远程分支的状态,但本身只读。
27 6
|
3月前
|
测试技术 持续交付 开发工具
Git版本控制在团队协作中具有重要作用
Git版本控制在团队协作中具有重要作用
49 1
|
3月前
|
数据可视化 开发工具 git
如何解决 Git 版本控制系统中冲突的问题?
在Git版本控制系统中,冲突是指在合并或拉取操作时,两个或多个开发者对同一文件的同一部分进行了不同的修改,导致Git无法自动确定应该采用哪种修改。
70 1
|
4月前
|
开发工具 git
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
这篇文章是关于Git常用命令的总结,包括初始化配置、基本提交、分支操作、合并、压缩历史、推送和拉取远程仓库等操作的详细说明。
173 1
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
|
3月前
|
Ubuntu 开发工具 git
Git高手必备:掌握这些版本控制最佳实践,让你的代码管理效率翻倍!
【10月更文挑战第25天】使用 Git 进行版本控制是现代软件开发的重要部分。本文详细介绍了 Git 的安装、配置、基本操作、分支管理、冲突解决及常用命令,帮助开发者提高工作效率,确保代码质量和团队协作的顺利进行。通过合理使用 Git,可以有效管理代码变更,支持多人协作,并追踪历史记录。
168 4
|
3月前
|
开发工具 C# git
C#一分钟浅谈:Git 版本控制与 GitFlow 工作流
【10月更文挑战第22天】本文介绍了 Git 和 GitFlow 的结合使用,从基础概念到具体操作,涵盖了安装配置、基本命令、GitFlow 工作流的核心分支和流程示例。同时,文章还讨论了常见的问题和易错点,如忽略文件、冲突解决、回退提交和分支命名规范,并提供了代码案例。通过学习本文,读者可以更好地理解和应用 Git 及 GitFlow,提高团队协作效率。
89 1