你的位置:首页 > 操作系统

[操作系统]Git分支学习简记

简介

开始过了两遍Git的内容,第二天就已经忘记了分支(branch)的概念,开始还觉得不太用的到。然后又看了第二遍,才发现为什么大家说这个是Git里边极其重要的一个东西。

所谓branch,就类似于树的枝干,有一个主干,在Git里成为master,意思也很好理解;这个是必须存在的,然后你可以分出去其他的树干(但是都不是主干)。像树的分枝都会回到主干那里一样,Git里的分支也会汇聚到master那里。

比方我们现在有现成的代码,A想自己修改一下,但是不能直接改动,做法可以是copy过来修改一下,在Git里我们直接创建分支就可以了。再觉得完美了之后上传过去,这个时候直接合并分支就可以搞定了。

分支常用命令和功能介绍

通过git branch命令可以看到现在的分支情况,*代表我们目前所在的分支

# git branch* master  test

可以看到我们有两个分支,有master还有一个test

通过git checkout test我们可以切换到test分支

#git checkout testSwitched to branch 'test'
#git branch
master
*test

通过git checkout -b  xx命令我们可以创建xx分支,-b 代表创建并直接切换到xx分支

通过git merge xx可以把xx分支合并到master分支上

完成合并之后可以删除xx分支,使用git branch -d xx命令,需要注意的是合并的时候需要解决冲突(即内容不一致的问题)

 

下面通过一个完整的例子(代码高亮不理想,凑合看吧)演示一下:

07:02:01wang@~/Documents/git >> git branch master* test07:02:11wang@~/Documents/git >> git checkout masterSwitched to branch 'master'Your branch is ahead of 'origin/master' by 1 commit. (use "git push" to publish your local commits)07:02:21wang@~/Documents/git >> git branch* master test07:02:27wang@~/Documents/git >> lsreadme.txt Spoon-Knife test07:02:45wang@~/Documents/git >> cat readme.txtmaster branch`07:02:51wang@~/Documents/git >> git checkout -b test1Switched to a new branch 'test1'07:03:02wang@~/Documents/git >> git branch master test* test107:03:05wang@~/Documents/git >> lsreadme.txt Spoon-Knife test07:03:07wang@~/Documents/git >> vi readme.txt07:03:18wang@~/Documents/git >> git add readme.txt07:03:23wang@~/Documents/git >> git commit -m "branch test1"[test1 3a09722] branch test1 1 file changed, 2 insertions(+)07:03:38wang@~/Documents/git >> git checkout masterSwitched to branch 'master'Your branch is ahead of 'origin/master' by 1 commit. (use "git push" to publish your local commits)07:03:53wang@~/Documents/git >> git branch* master test test107:03:56wang@~/Documents/git >> git merge test1Updating c7ac8a8..3a09722Fast-forward readme.txt | 2 ++ 1 file changed, 2 insertions(+)07:04:02wang@~/Documents/git >> cat readme.txtmaster branch`test1 branch07:04:07wang@~/Documents/git >> git branch -d test1Deleted branch test1 (was 3a09722).07:04:18wang@~/Documents/git >> git branch* master test

 


什么时候去贵州旅游最好贵州跟团旅游报价多少贵州旅游必去的地方是贵州旅游必去景点排名贵州旅游地图线路大全郑州世纪欢乐园夜场_世纪欢乐园夜场门票价格 黄河游览区门票_郑州黄河游览区门票 深圳世界之窗图片_深圳世界之窗风景图片 天津塘沽洋货市场_天津洋货市场怎么去_天津洋货市场在哪里 猴子节 吴卿:为西安世园会带来18件金雕作品 价值亿元 海南单价五千免税商品不到成交额一成 微博直播! 全程报道世园会开园仪式演出精彩盛况 磐安龙溪漂流儿童可以漂吗?金华磐安龙溪漂流适合多大的小孩玩? 龙池曼风景区住宿怎么样?嵩县龙池曼附近酒店介绍? 龙池曼风景区线路?嵩县龙池曼旅游攻略? 龙池曼风景区网站?嵩县龙池曼漂流预订多少钱? 深圳野生动物园乘几路车直达?深圳海洋天地几点有车? 在浙江最销魂的9种跨年姿势 你属于哪一类(组图) 搭乘巴士带你私奔到庐山西海 雪花啤酒古道探秘宁波桃花岭古道(组图) FQD2N60CTM Datasheet FQD2N60CTM Datasheet FQU2N60CTU Datasheet FQU2N60CTU Datasheet FQB12N60TM_AM002 Datasheet FQB12N60TM_AM002 Datasheet 这个时候吃什么好 这个时候吃什么好 这个时候吃什么好 这个时候去哪旅游好 这个时候去哪旅游好 这个时候去哪旅游好 这个暑假去哪里旅游 这个暑假去哪里旅游 这个暑假去哪里旅游