[工具] Git版本管理(二)

一、分支

1.git中如何保存版本

在我们以往使用文件来进行版本控制的时候,都是将上一个版本复制一份,然后在其基础上进行修改。

但在git中,git只保存当前版本和上一个版本之间的差异,这样可以节省存储空间, 在生成版本的时候速度也会更快。

2.Master主线

如下图所示:

当只有一条主线Master时,新版本都是在上一个版本的基础上进行修改的,例如Version2在Version1的100个文件基础上,新增了20个文件,并修改了其中10个文件。

也就是说Version2只需要保存新增的20个文件,以及修改的10个文件的修改信息,当我们需要Version2的时候,git再去Version1中拿未修改的90个文件。

同理,Version3、Version4也是如此。

3.分支概念

当我们需要已某个版本作为基准,同时开发多个新功能,则可能在该基准版本处产生分支,如下图所示:

处理线上系统的紧急BUG:

例如,Version3是已上线的版本, 我们在Version3的基础上开发新功能:

Version3突然出现紧急BUG,需要修复,怎么办?我们可以在Version3的基础上新开一个分支,专门用作BUG修复,修复完后合并到主分支:

 而负责新功能开发的分支,可以继续研发新功能,不受影响。等到新功能开发测试完毕后,也可以合并到主分支Master中去。

4.创建分支(开发新功能)

1)查询分支信息

git branch

可以看到,我们目前只有一个master主分支。

2)创建新的分支(开发商城功能)

git branch dev_shop

使用命令创建了一个分支,叫做dev_shop。用于开发新功能,商城。

"*"号代表我们所处的分支。

3)切换分支

使用命令:

git checkout dev_shop

可以看到,我们已经切换到了dev_shop分支,我们在这个新分支下编写代码,是不会影响到其他分支的。

通过git log查看一下版本信息:

 可以看到,我们所处的版本是"修改约饭-->约",但是分支处于dev_shop。而在这个版本处存在两个分支:master和dev_shop。相当于下图所示:

如果我们在dev_shop分支上再生成一个版本,则会变成如下:

在分支中添加了商城功能后,使用git log查看版本信息:

 5.创建分支(修改BUG)

 1)切换回master分支

git checkout master

2)创建新分支(修改BUG)

git branch bug

查看分支:

git branch

3)切换到BUG分支

git checkout bug

修改代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Index</title>
</head>
<body>
    <ul>
        <li>欧美</li>
        <li>日韩</li>
        <li>港台澳</li>
        <li>直播</li>
        <li></li>
    </ul>
</body>
</html>

将"港台"修改为"港台澳"。并提交生成新的版本。

此时查看git log:

 此时的分支结构为:

6.合并分支

将bug分支合并到master分支中。

1)切换回master分支

git checkout master

2)合并bug分支

git merge bug

查看当前的版本信息:

 当前的分支结构:

7.删除分支

当Master分支将bug分支合并之后,bug分支就没用了,可以使用命令删除bug分支:

git branch -d bug

删除后,查看当前分支信息:

可以看到bug分支已经被删除。

猜你喜欢

转载自www.cnblogs.com/leokale-zz/p/12115554.html