Git --》分支操作与团队协作

简介: 分支操作与团队协作

Git 分支操作

在版本控制过程中,同时推进多个任务,为每个任务我们可以创建每个任务的单独分支,使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候不会影响主线分支的运行,对于初学者而言,说白了,分支可以简单理解为副本,一个分支就是一个单独的副本。

分支优点

同时并行推送多个功能开发,提高开发效率;各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响,失败的分支删除重新开始即可。

分支操作命令

命令名称 作用
git branch 分支名 创建分支
git branch -v 查看分支
git checkout 分支名 切换分支
git merge 分支名 把指定的分支合并到当前分支

我们可以查看当前分支并创建新的分支

图片.png

创建新的分支可以进行文件的修改,修改之后仍要再进行一次提交本地库过程。

图片.png

将指定的分支合并到当前分支上

图片.png

合并分支可能会产生冲突,其原因是:合并分支时,两个分支在同一个文件的同一位置有两套完全不同的修改。Git 无法替我们决定使用哪一个,必须人为决定新代码内容。 (通俗理解为:只要两个分支对同一个文件做了修改,则合并会出现conflict,因为Git不知道保留哪一个版本)

我们先把要进行合并的分支内容进行一定的修改

图片.png

修改完成后切换到 master 分支进行合并,出现了冲突日志,提示我们自动合并失败,因为在say.txt文件里面有合并代码冲突

图片.png

因为git对两个分支都进行了修改,git不知道我们要保存哪一个,所以出现合并冲突。

图片.png

接下来需要我们进行手动合并。直接编辑 say.txt 将我们要保留的内容留下了。:wq 保存即可。

图片.png

图片.png

保存之后,还需要将我们人为修改的文件再一次提交到本地库上 。注意:再一次提交本地库的时候不需要在写文件名,否则会报错。

图片.png

总结: 创建分支的本质就是多创建一个指针;HEAD如果指向 master,那么我们现在就在 master 分支上;HEAD如果执行hot-fix,那么我们现在就在hot-fix指针上。

Git中分支常用命令步骤:

# 列出本地所有分支

git branch

# 列出所有远程分支

git branch -r

# 新建一个分支,但依然停留在当前分支

git branch [branch-name]

# 新建一个分支,并切换到该分支

git checkout -b [branch]

# 合并指定分支到当前分支

git merge [branch]

# 删除分支

git branch -d [branch-name]

# 删除远程分支

git push origin --delete [branch-name]

git branch -dr [remote/branch]

如果同一个文件在合并时都被修改了则会引起冲突,解决办法是我们可以修改冲突文件后重新提交!选择要保留他的代码还是你的代码!master主分支应该非常稳定,用来发布新版本,一般情况下不允许在上面工作,工作一般情况在新建的分支如dev上工作,工作完之后比如要发布,dev分支代码稳定后可以合并到主分支 master 上来。

分支在Git中相对较难,分支就是科幻电影里面的平行宇宙,如果两个平行宇宙互不干扰,那对现在的你也没啥影响,在某个时间点一旦两个平行宇宙合并了,我们就需要处理一些问题了。

图片.png

补充知识

我们可以在gitee网站末尾查看一些 Git 相关知识,这里简单的说一下。

图片.png

图片.png

gitee中 Git 命令学习,通过游戏的方式来学习,真的挺香的了。

图片.png

Git 团队协作

团队内协作

图片.png

跨团队协作

图片.png

相关文章
|
4月前
|
存储 安全 开发工具
深度解决 Git “fatal: refusing to merge unrelated histories” 错误解析什么是历史分支优雅草卓伊凡
深度解决 Git “fatal: refusing to merge unrelated histories” 错误解析什么是历史分支优雅草卓伊凡
329 4
深度解决 Git “fatal: refusing to merge unrelated histories” 错误解析什么是历史分支优雅草卓伊凡
|
1月前
|
开发工具 git
Git版本控制工具合并分支merge命令操作流程
通过以上步聚焦于技术性和操作层面指南(guidance), 可以有效管理项目版本控制(version control), 并促进团队协作(collaboration).
195 15
|
9月前
|
开发工具 git
图解Git——分支的新建与合并《Pro Git》
在Git开发中,新建与合并分支是常见的操作。以实际开发为例:为实现新需求创建分支`iss53`进行开发;遇紧急Bug时,切换至线上分支创建`hotfix`修复并合并回线上分支,再切换回`iss53`继续工作。完成`iss53`后,切换到`master`合并。若出现冲突,使用`git status`查看,手动编辑解决冲突后标记为已解决并提交。图形化工具如`git mergetool`也可辅助解决冲突。
204 9
|
9月前
|
开发工具 git 开发者
图解Git——分支简介《Pro Git》
Git 分支是其核心特性之一,允许开发者从主开发线分离工作,避免干扰主线。传统版本控制系统创建分支效率低,而Git的分支创建和切换非常轻量高效。
488 9
|
8月前
|
开发工具 git 开发者
vscode+git解决远程分支合并冲突
通过这些详细步骤,您可以掌握如何使用VSCode和Git高效地解决远程分支合并冲突,提高开发效率和代码质量。希望这些内容对您的学习和工作有所帮助。
1798 86
|
9月前
|
存储 项目管理 开发工具
图解Git——分支开发工作流《Pro Git》
分支开发工作流利用Git的分支功能,支持灵活的项目管理。长期分支如`master`和`develop`分别保存稳定和开发中的代码;短期主题分支用于开发单一特性或修复问题,完成后合并到主分支。此模式确保代码稳定性,支持并行开发、便于审查和灵活调整。建议维护明确的长期分支,保持主题分支短小精悍,并定期清理无用分支。配置上可保护关键分支,遵循命名规范。
374 7
|
9月前
|
存储 缓存 Java
图解Git——远程分支《Pro Git》
远程分支是 Git 中用于管理分布式协作的关键概念。远程引用指向远程仓库中的分支和标签,常用 `git ls-remote` 或 `git remote show` 查看。日常开发中,通常使用远程跟踪分支(如 `origin/main`)与远程分支交互,简化远程仓库状态的管理和使用。远程跟踪分支记录远程分支的状态,但本身只读。
178 6
|
开发工具 git
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
这篇文章是关于Git常用命令的总结,包括初始化配置、基本提交、分支操作、合并、压缩历史、推送和拉取远程仓库等操作的详细说明。
305 1
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
|
开发工具 git 开发者
关于git 解决分支冲突问题(具体操作,包含截图,教你一步一步解决冲突问题)
本文通过具体操作和截图,详细讲解了如何在Git中解决分支冲突问题,包括如何识别冲突、手动解决冲突代码、提交合并后的代码,以及推送到远程分支。
2865 3
关于git 解决分支冲突问题(具体操作,包含截图,教你一步一步解决冲突问题)
|
11月前
|
测试技术 持续交付 开发工具
Git版本控制在团队协作中具有重要作用
Git版本控制在团队协作中具有重要作用
158 1