前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >代码合并分支

代码合并分支

作者头像
星哥玩云
发布2022-09-15 19:33:57
发布2022-09-15 19:33:57
47900
代码可运行
举报
文章被收录于专栏:开源部署开源部署
运行总次数:0
代码可运行

合并分支 ,A分支上合并另一分支B,则B的所有内容都合并到了A上,如果分支和主干相差太多,合并就会容易报错,所以通常的操作就是分支合并后就删除分支然后再重新创建分支(完全拷贝主支信息)后再进行后续的合并,依次循环

代码语言:javascript
代码运行次数:0
复制
[root@zutuanxue git_data]# git branch 
  master
* test
[root@zutuanxue git_data]# git checkout master
切换到分支 'master'
[root@zutuanxue git_data]# git branch 
* master
  test
[root@zutuanxue git_data]# git merge test #提示输入描述信息
Merge made by the 'recursive' strategy.
 test | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 test
[root@zutuanxue git_data]# git log --oneline 
e96f03c (HEAD -> master) Merge branch 'test'
a6302d6 touch master
003e619 (test) touch test
f3d6391 add haha
2add75e add hello
ff77333 aaa
dd7925f test head
e2e2131 head test
644d678 test head
326e57a v2 a
8f01c62 version2 a
a714e37 a
47a267c a.txt
6ac34be a
[root@zutuanxue git_data]# ls
a  master  test

冲突合并

代码语言:javascript
代码运行次数:0
复制
[root@zutuanxue git_data]# echo master >> a
[root@zutuanxue git_data]# git commit -am "add master to a"
[master 801ff9a] add master to a
 1 file changed, 1 insertion(+)
[root@zutuanxue git_data]# git checkout test 
切换到分支 'test'
[root@zutuanxue git_data]# git branch 
  master
* test
[root@zutuanxue git_data]# cat a
haha
hello
haha
[root@zutuanxue git_data]# echo test >> a
[root@zutuanxue git_data]# git commit -am "add test to a"
[test 1cab1b9] add test to a
 1 file changed, 1 insertion(+)
[root@zutuanxue git_data]# git checkout master	
切换到分支 'master'
[root@zutuanxue git_data]# git merge -m "master&test" test#提示冲突
自动合并 a
冲突(内容):合并冲突于 a
自动合并失败,修正冲突然后提交修正的结果。
[root@zutuanxue git_data]# cat a
haha
hello
haha
<<<<<<< HEAD
master
=======
test
>>>>>>> test
[root@zutuanxue git_data]# vim a	#手动更改冲突内容
haha
hello
haha
master
test
[root@zutuanxue git_data]# git commit -am "merge test to master" #再次提交
[master d8aeb13] merge test to master
[root@zutuanxue git_data]# cat a
haha
hello
haha
master
test
[root@zutuanxue git_data]# git log --oneline 
d8aeb13 (HEAD -> master) merge test to master
1cab1b9 (test) add test to a
801ff9a add master to a
e96f03c Merge branch 'test'
a6302d6 touch master
003e619 touch test
f3d6391 add haha
2add75e add hello
ff77333 aaa

如果分支和主干相差太多,合并就会容易报错,所以通常的操作就是分支合并后就删除分支然后再重新创建分支(完全拷贝主支信息)后再进行后续的合并,依次循环

删除分支git branch -d

代码语言:javascript
代码运行次数:0
复制
[root@zutuanxue git_data]# git branch -d test
已删除分支 test(曾为 1cab1b9)。
[root@zutuanxue git_data]# git branch 
* master

git tag 标签

标签也是指向了一次commit提交,是一个里程碑式的标签,回滚打标签直接加标签号,不需要加唯一字符串,不用记唯一字符串,与指针的变动(reset)原理相似,也能通用git reset --hard命令

代码语言:javascript
代码运行次数:0
复制
[root@zutuanxue git_data]# git log --oneline 
d8aeb13 (HEAD -> master) merge test to master
1cab1b9 add test to a
801ff9a add master to a
e96f03c Merge branch 'test'
a6302d6 touch master
003e619 touch test
f3d6391 add haha
2add75e add hello
[root@zutuanxue git_data]# git tag -a V1.0  f3d6 -m "add haha to V1.0"
#为“add haha”加上一个V1.0的标签 -a指定标签 f3d6为对应的哈希值,-m定义描述信息
[root@zutuanxue git_data]# git tag -a V2.0  a630 -m "touch master to V2.0"
#为“touch master”定义一个V2.0的标签
[root@zutuanxue git_data]# git tag	#查看已有的标签
V1.0
V2.0
[root@zutuanxue git_data]# git show V1.0	#查看指定标签的具体内容
tag V1.0
Tagger: aaa <hello@localhost>
Date:   Mon Apr 6 04:35:18 2020 -0400

add haha to V1.0

commit f3d6391659db69a5c9fec610b94dd42f827b39e9 (tag: V1.0)
Author: aaa <hello@localhost>
Date:   Mon Apr 6 02:56:34 2020 -0400

    add haha

diff --git a/a b/a
index 5c06d49..ec4f51e 100644
--- a/a
+++ b/a
@@ -1,2 +1,3 @@
 haha
 hello
+haha
[root@zutuanxue git_data]# git reset --hard V1.0	#数据回滚到V1.0标签的位置
HEAD 现在位于 f3d6391 add haha
[root@zutuanxue git_data]# ls
a
[root@zutuanxue git_data]# cat a
haha
hello
haha
[root@zutuanxue git_data]# git tag -d V2.0	#删除标签
已删除标签 'V2.0'(曾为 df79ae8)
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 删除分支git branch -d
  • git tag 标签
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档