吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3346|回复: 7
收起左侧

[其他转载] Git教程(九)

[复制链接]
NullPointer 发表于 2016-12-20 11:23
1、分支管理
1.1、什么是分支?
假设你正开发一个功能,需要2周完成,你第一周写了50%代码,因为还没开发完,所以你不能提交。等到下周开发完一起提交,又怕太乱,代码太多,这时候就需要用到分支了。你建一个自己的分支,别人看不到。还继续在原来的分支上正常工作,而你在自己的分支上干活,向提交就提交,直到开发完后,再一次性合并到主分支上,这样既安全又不影响别人工作。其他版本库也有分支,但是速度上慢的要死,所以都被忽略了,而git速度几乎在1s左右,很快!!!
2、创建与合并分支
2.1、每次提交,Git都把他们串成一条时间线,这条时间线是一个分支,在前八节的demo中,只有一条时间线,在Git里叫这个分支为主分支(master分支)。HEAD严格来说不是指向提交,而是指向master分支,master才是指向提交的,所以HEAD就是指向当前分支。一开始的时候,master分支是一条线,Git用master指向最新的提交,再用HEAD指向master。
1.png
2.2、视频演示分支的过程
http://oi5l9slpi.bkt.clouddn.com/Git-09-1.wmv
2.3、当我们创建新的分支(例如dev分支)时,Git创建了一个指针叫dev,指向master相同的提交,再把HEAD指向dev,就表示当前分支在dev上:
2.png
从上图可看出,Git创建个分支很快,因为除了增加一个dev指针,修改下HEAD指向,工作区的文件都没有任何变化。
从现在开始我们提交文件就是在dev分支上进行操作了,比如提交一次后,dev指针往前一步,master指针不变。
3.png
假如我们工作完成了,要把dev分支上的内容合并master分支上,最直接的方法是把master指向dev的当前提交,如下图
4.png
所以Git合并也特别快,就改改指针,工作区不变!!!
合并完分支后,可以删除dev分支,只剩下master,如图
5.png
完整视频演示地址:
http://oi5l9slpi.bkt.clouddn.com/Git-09-2.wmv
3、实战演示
3.1、创建dev分支并切换到dev分支,执行git checkout -b dev命令
1.gif 1.png
git checkout命令加上-b表示创建并切换,相当于以下两条命令
git branch dev
git checkout dev
3.2、用git branch 命令查看当前分支
2.gif 2.png
git branch会列出所有分支,当前分支前面会有个*号!
3.3、在以前的hello.txt上新增一行“git is good”
3.4、提交,先git add 再 git commit
3.gif 3.png
3.5、现在git分支完成,我们切换回master分支
4.gif 4.png
3.6、切换到master之后,再看hello.txt文件,发现刚才修改并提交的内容不见了,是因为刚才修改是在dev分支上进行的,现在是master分支,所以我们需要合并分支。
3.7、合并分支,将dev分支内容合并到master。执行命令git merge dev
5.gif 5.png
git merge命令用于合并指定分支到当前分支。
注意到上面的Fast-forward信息,Git告诉我们,这次合并是“快进模式”,也就是把master指向dev的当前提交,所以合并速度很快,无需动工作区内容。
3.8、再去看hello.txt文件,发现之前在dev分支对hello做的修改现在合并到master分支上了。
3.9、删除已经无用的dev分支,执行命令:git branch -d dev
6.gif 6.png
3.10、查看git分支,git branch,发现只有master了。
7.gif 7.png
小结:
(1)查看分支:git branch
(2)创建分支:git branch <name>
(3)切换分支:git checkout <name>
(4)创建+切换分支:git checkout -b <name>
(5)合并某分支到当前分支:git merge <name>
(6)删除分支:git branch -d <name>
完整视频:
http://oi5l9slpi.bkt.clouddn.com/Git-09-3.wmv

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

lengkeyu 发表于 2016-12-20 12:26
这么好的帖子,呵呵
水雨争枫 发表于 2016-12-20 18:54
 楼主| NullPointer 发表于 2016-12-20 18:56 来自手机
水雨争枫 发表于 2016-12-20 18:54
这么好的帖子,我一点都没有看懂

请从第一讲开始看起
小小欣 发表于 2016-12-21 04:58
http://www.52pojie.cn/thread-564440-1-1.html  楼主你这个帖子里的第一个视频教程  文件已损坏
 楼主| NullPointer 发表于 2016-12-21 08:07 来自手机
小小欣 发表于 2016-12-21 04:58
http://www.52pojie.cn/thread-564440-1-1.html  楼主你这个帖子里的第一个视频教程  文件已损坏

多谢提醒和关注,到公司后我更新一下!
101MHz 发表于 2017-5-17 09:21
好贴好贴,绝对好贴。。。
天使3号 发表于 2018-7-10 16:04
讲的真好,感谢。学到了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-3-29 05:59

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表