建设银行平潭招聘网站,天津市建设工程监理公司网站,WordPress 移动文件夹,全球网站建设服务商目录 前言一、git分支管理基本命令1.1 基本命令2.1 实例 二、git分支合并冲突解决三、git merge命令与git rebase命令对比 前言
本篇文章介绍git分支管理的基本命令#xff0c;并说明如何解决git分支合并冲突#xff0c;最后说明git merge命令与git rebase命令的区别。
一、… 目录 前言一、git分支管理基本命令1.1 基本命令2.1 实例 二、git分支合并冲突解决三、git merge命令与git rebase命令对比 前言
本篇文章介绍git分支管理的基本命令并说明如何解决git分支合并冲突最后说明git merge命令与git rebase命令的区别。
一、git分支管理基本命令
1.1 基本命令 查看本地仓库的分支 git branch对于一个新建的空本地仓库需要进行一次commit操作本地仓库才会自动生成一个主分支 新增一个分支 git branch 分支名删除一个分支 git branch -d 分支名
删除已被合并的分支git branch -D 分支名
删除未被合并的分支切换分支 git switch 分支名合并分支 git merge 被合并分支名
将当前分支与被合并分支进行合并查看合并过程 git log --graph --oneline --all2.1 实例 step1 创建一个本地仓库用于分支管理练习
1. 在当前目录创建一个目录
mkdir git_branch
2. 切换到git_branch目录
cd ./git_branch/
3. 初始化一个仓库
git initstep2 在主分支创建main1.txt和main2.txt文件
1. 创建main1并提交
echo I am main1 main1.txt
git add .
git commit -m main1:1
2. 创建main2并提交
echo I am main2 main2.txt
git add .
git commit -m main2:1step3 创建一个分支dev并在这个分支上创建dev1.txt和dev2.txt文件
创建分支dev
git branch dev切换到dev分支
git switch dev创建dev1并提交
echo I am dev1 dev1.txt
git add .
git commit -m dev1:1
创建dev2并提交
echo I am dev2 dev2.txt
git add .
git commit -m dev2:1
step4 再切换分支到主分支再创建main3.txt
git switch master
ehco I am main3 main3.txt
git add .
git commit -m main3:1step5 在主分支下合并dev分支
git merge dev二、git分支合并冲突解决
分支合并冲突是指当两个分支操作同一文件的同一行时git仓库无法决定保留哪个分支的内容 以上面的例子为例 主分支在main1.txt第二行添加内容new content is added by master branch dev分支在main1.txt第二行添加内容new content is added by dev branch
1. master修改main1.txt
git switch master
echo new content is added by master branch
git add .
git commit -m main1:2 by master
2. dev修改main1.txt
git switch dev
git add .
git commit -m main1:2 by dev
3. 合并
git switch master执行结果发送了冲突 查看main1.txt文件内容 手动编辑main1.txt文件 再次提交修改后的main1.txt文件
git add .
git commit -m main1:3 fix conflict在master分支查看合并后的main1.txt 在dev分支查看合并后的main1.txt 以上则解决分支合并冲突的问题
三、git merge命令与git rebase命令对比
git merge命令执行过程如下 优点不会破坏原分支的提交历史方便回溯和查看 缺点会产生额外的提交节点分支图比较复杂
git rebase 命令执行过程如下 优点不会新增额外的提交记录形成线性历史比较直观和干净 缺点会改变提交历史避免在共享分支使用