一.了解分支
Git分支可以将主线任务(项目)分为若干个分支,一个或若干个人操控一个分支,在同一时间点各司其职,完成相对应的工作,各分支完成之后总汇在主线任务上,在最短的时间内完成项目需求,实现多人协作开发
多人协作开发不仅仅节省时间,还能防止互相干扰,每一个具体的开发模块都对应着一个具体的分支,提高开发效率
在初始化本地Git仓库时,其实Git已近默认帮我们创建了一个名为main的主分支,这个主分支可以用来保存和记录整个项目完成的功能代码,我们不能直接在main主分支上进行修改代码,会有一定的风险导致整个项目崩溃,所以我们在这个mian主分支上开发新分支(功能分支),是从主分支上零时分叉出来的分支,当我们项目完成之后,最终会合并到主分支上
二.Git分支的操作
1.查看分支
在创建分支前,我们需要学会怎样去查看现有的分支:
git branch
#查看当前Git仓库中所有分支列表
我们来做一个演示,当查询出来时会有某一个分支前带有 * 这个意思是你当前所处的分支
看图知道我们现在处于main主分支上(conp1是我之前创建的分支)
2.创建分支
接下来我们创建一个自定义名称的分支:
git branch 分支名称
#基于当前所处的分支(我当前在main主分支中)创建了一个自定义名称的分支
#此时新分支中的代码和当前所处分支代码相同
tips:我们创建完成之后,会多出来一个新的功能分支,但是不会默认的切换到该分支,也就是说,我们现在还身处于main主分支中
3.切换分支
git checkout news
#切换到指定分支上
现在我们切换到了指定的分支上,其实还有更加简便的方法,我们在创建的同时一并切换到新功能分支上
git checkout -b 分支名称
#创建指定名称的分支并且立即切换到新分支上
4.合并分支
当我们的功能分支开发并测试完毕之后将会合并到主分支上,形成一个完整的项目或模块
git merge news
#在main主分支上将指定功能分支进行合并
我们刚才的切换到了news分支上,不在主分支,所以我们还不能直接进行合并,需要先切换到主分支:
5.删除分支
好了,现在我们合并完成,那这个功能分支也就没用了,我们过河拆桥,删除掉它:
git branch -d 分支名称
#删除对应分支,但是如果这个分支没有合并的话,会报错,不让你删
git branch -D 分支名称
#强制删除对应分支,就算没有合并也会强制删除
tips:我们不能处在要删除的分支上,我们应该先切换到其他分支,然后再删除,我们要做的是过河拆桥,千万不要把自己也搭进去了
因为我们处于main主分支上,所以直接-d删除news分支就可以了
6.遇到冲突时我们应该怎么进行分支合并
假如在俩个不同的分支中,对同一个文件进行了不同的修改,那么我们合并的时候就会出现冲突,Git不明白我们需要怎么操作,所以没有办法合并它们,此时,我们可以手动操作打开这些包含冲突的文件,根据实际需求删除或者修改代码,来解决冲突
tips:解决完成冲突之后需要再次将文件放到暂存区并提交更新,完成这些,我们才可以再次执行合并操作
三.与远程仓库同步操作
1.本地分支同步推送到云端远程仓库
如果我们只是在本地分叉出来分支没有进行任何操作的话,是不会被自动同步到云端的,需要我们手动同步之后,再进行远程仓库的操作
目前我们只有一个分支(main主分支),我们的本地仓库还有一个conp1分支,现在我们和云端同步一下:
git push -u 远程仓库别名 本地分支名称:远程分支别名
#远程仓库别名默认为origin(我们在上一章节提到过修改方法,这里不做解释)
#远程分支别名待我们自定义,如果想和本地分支名称一样的话,那就不需要添加 :远程分支别名
#只有第一次同步推送才会使用上面的指令,以后我们可以直接使用:
git push
好,我们上传成功:
2.查看远程仓库所有分支列表
git remote show 远程仓库名称
获取成功,我们发现远程的仓库中有main主分支和我们新建的conp1分支:
3.跟踪分支
我们想要把远程仓库中的分支下载到本地仓库中(可能一个人开发是不会用到,但是多人协作开发时非常的常用):
git checkout 远程分支名称
git checkout -b 本地分支名称 远程仓库名称/远程分支名称
#下载到本地并把下载的分支进行重命名(只是在你的本地重命名)
4.拉取远程分支最新文件内容
拉取当前分支在远程仓库的最新代码或内容,保持当前分支文件和远程分支文件一致文章来源:https://www.toymoban.com/news/detail-402113.html
git pull
tips:需要切换到当前分支才可以进行此操作文章来源地址https://www.toymoban.com/news/detail-402113.html
5.删除远程仓库指定分支
git push 远程仓库名称 --delete 远程分支名称
到了这里,关于Git分支——多人协作开发的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!