zl程序教程

您现在的位置是:首页 >  工具

当前栏目

《Git学习指南》——1.3 分支的创建与合并很简单

Git 简单 创建 分支 合并 1.3 学习指南
2023-09-11 14:17:34 时间
对于大多数版本控制系统来说,分支的创建与合并通常会因其特殊性而被认为是高级拓展操作。但由于Git最初就是为了方便那些散落在世界各地的Linux内核开发者而创建的,合并多方努力的结果一直都是其面临的最大挑战之一,所以Git的设计目标之一就是要让分支的创建与合并操作变得尽可能地简单且安全。

本节书摘来自异步社区《Git学习指南》一书中的第1章,第1.3节,作者: 【德】René Preißel(普莱贝尔) , Bjørn Stachmann(斯拉赫曼)著,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.3 分支的创建与合并很简单

对于大多数版本控制系统来说,分支的创建与合并通常会因其特殊性而被认为是高级拓展操作。但由于Git最初就是为了方便那些散落在世界各地的Linux内核开发者而创建的,合并多方努力的结果一直都是其面临的最大挑战之一,所以Git的设计目标之一就是要让分支的创建与合并操作变得尽可能地简单且安全。

在下面的图1.4中,我们向你展示了开发者是如何通过创建分支的方式来进行并行开发的。图中的每一个点都代表了该项目的一个版本(即commit)。而由于在Git中,我们只能对整个项目进行版本化,所以每个点同时也代表了属于同一版本的各个文件。

screenshot

图1.4 因开发者的并行开发而出现的分支创建操作

如上所示,图中两位开发者的起点是同一个版本。之后两人各自做了修改,并提交了修改。这时候,对于这两位开发者各自的版本库来说,该项目已经有了两个不同的版本。也就是说,他们在这里创建了两个分支。接下来,如果其中一个开发者想要导入另一个人的修改,他/她就可以用Git来进行版本合并。如果合并成功了,Git就会创建一个合并提交,其中会包含两位开发者所做的修改。这时如果另一位开发者也取回了这一提交,两位开发者的项目就又回到了同一个版本。

在上面的例子中,分支的创建是非计划性的,其原因仅仅是两个开发者在并行开发同一个软件罢了。在Git中,我们当然也可以开启有针对性的分支,即显式地创建一个分支(见图1.5)。显式分支通常主要用于协调某一种功能性的并行开发。

screenshot

图1.5 针对不同任务的显式分支

版本库在执行拉回和推送操作时,可以具体指定其针对的是哪一些分支。当然,除了这些简单的分支创建和合并处理外,我们也可以对分支执行以下动作。

移植分支:我们可以直接将某一分支中的提交转移到另一个版本库中。
只传送特定修改:我们可以将某一分支中的某一次或某几次提交直接复制到另一个分支中。这就是所谓的捡取处理。
清理历史:我们可以对分支历史进行改造、排序和删除。这有利于为该项目建立更好的历史文档。我们称这种处理为交互式重订(interactive rebasing)。


git rebase -i合并多次提交 写作目的 自己写代码的时候修改了bug就提交一次,发现提交日志很乱,所以有必要合并多次提交,这个点有必要学习一下
git将master合并到分支 1.切换到master主分支上 2.将master更新的代码pull到本地 3.切换到自己的分支上 4.合并master到自己的分支 5.用idea或者sublime text解决冲突 6.add、commit
团队开发中git的基本使用和多人协作合并管理 最近忙于公司内部流程审批系统,团队在我未入职公司前,一直未使用版本控制,导致多数人不会使Git,开发人员对Git不熟练,项目版本控制受阻(开发人员普遍觉得sftp方便); 由我编写开发文档规范: 开发规范文档(包括:Php、Git、Mysql);
异步社区 异步社区(www.epubit.com)是人民邮电出版社旗下IT专业图书旗舰社区,也是国内领先的IT专业图书社区,致力于优质学习内容的出版和分享,实现了纸书电子书的同步上架,于2015年8月上线运营。公众号【异步图书】,每日赠送异步新书。