Git(四):理解和使用分支
假设你跳过了前面章节直接进入本章。能够从Github上克隆这个版本号库:
什么叫分支
我们为什么要使用分支? 1. 在项目功能任务较多的情况下,能够利用分支进行功能点的切分。2. 在团队协作的情况下,假设Git仅仅使用一条版本号演进的轨迹。那么这条轨迹中代码将可能很混乱,很多成员会上去实时的提交自己的代码,而自身的代码也与轨迹中的代码常常不一致,使用分支则能减少这样的混乱,成员仅仅有在自己已开发完毕自己的功能代码后。才会将代码合并到主分支。
- 试验性更改:比方想測试新算法,看看是否够快;或者为某个特别的模式重构部分代码。
- 添加新功能:为每一个新功能的开发创建新分支,完毕该功能的开发后。就能够合并回主分支。这时就能够选用一般方法合并该分支上的全部的历史记录,或者将全部历史记录压合在一份提交中。
关于不同的合并策略,后面会具体讲到。
- Bug修复:无论是修复未公布代码中的Bug。还是修复已经标记公布代码中的Bug,都能够创建新分支来跟踪对该Bug的改动。
创建新分支
合并分支间的改动
- 直接合并(straight merge):把两条分支上的历史轨迹合并,交汇到一起。
- 压合合并(squashed commits):将一条分支上的若干个提交条目压合成一个提交条目,提交到还有一条分支的末梢。
- 拣选合并(cherry-picking):拣选还有一条分支上的某个提交条目的修改带到当前分支上。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVHJveV9f/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
在这里是主分支。
首先导出到contact分支下。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVHJveV9f/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
以下将它拣选合并到主分支上:
这就告诉Git在创建提交前须要连续进行合并操作。以下介绍详细步骤。
后面会具体讲到该命令。
冲突解决
冲突总是发生在对不同分支上的同一文件的同一文本块以不同的方式改动,并试图合并的时候。以下演示怎样处理冲突。
然后保存并提交改动。
第一,<<<<<<<后面尾随的是当前分支中的代码。而>>>>>>之前的则是还有一条分支上的代码;第二。在<<<<<<和>>>>>>行文件名称之前。是所在分支的名称。本例中是HEAD,请记住,HEAD指向当前分支末梢的那个提交。它和about2分支有冲突。
删除分支
分支重命名
将參数-m改为-M,就能够覆盖已有分支名称了。大写"M"通知Git,假设当前的分支名称已经存在。则强制覆盖现有分支。这样的操作要小心使用。
Git(四):理解和使用分支的更多相关文章
- git 四个基本对象、分支、三个存储区、reset-revert-变基、cherry-pick
1:git四个基本对象 2:工作区.缓存去.历史区 3:Git 分支介绍 https://blog.csdn.net/wh_19910525/article/details/7470964 ...
- Git(四):Git远程操作详解
转: http://www.ruanyifeng.com/blog/2014/06/git_remote.html Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多 ...
- 对git的理解及常用指令
以前总听说git[分布式版本控制系统]自己愣是搞不懂它到底要干哈-什么叫版本控制系统根本理解不了.现在工作需要必须要用到,结果好像就突然懂了git是干什么滴. 所以!原理这个东西的理解是要建立在大量的 ...
- 《Pro Git》笔记3:分支基本操作
<Pro Git>笔记3:Git分支基本操作 分支使多线开发和合并非常容易.Git的分支就是一个指向提交对象的可变指针,极其轻量.Git的默认分支为master. 1.Git数据存储结构和 ...
- git学习整理(1)git clone 理解
1.git clone 的理解 git clone默认会把远程仓库整个给clone下来 ,只能clone远程库的master分支并在本地默认创建一个master分支 ,无法clone所有分支,若想要其 ...
- Git 学习(六)分支管理
Git 学习(六)分支管理 几乎每一种版本控制系统都支持分支.使用分支意味着你可以从开发主线上分离开来,然后不影响主线的同时继续工作.在很多版本控制系统中,这是个昂贵的过程,常常需要创建一个源代码目录 ...
- Git中从远程的分支获取最新的版本到本地方式
Git中从远程的分支获取最新的版本到本地方式如下, 如何更新下载到代码到本地,请参阅ice的博客基于Github参与eoe的开源项目指南 方式一 . 查看远程仓库 $ git remote -v eo ...
- Git学习教程三之分支管理
实战流程: 1:代码库克隆一份至本地 2:新分支操作 2.1 在需要的文件中创建并指向新的分支方便写代码 git checkout -b <name> 2 ...
- 【Git的基本操作六】分支管理
分支管理 1. 什么是分支? 在版本控制过程中,使用对条线同时推进多个任务. 2. 分支的好处 同时并行推进多个功能开发,提高开发效率 各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任 ...
随机推荐
- HDU 1171.Big Event in HDU-动态规划0-1背包
Big Event in HDU Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- Properties文件工具读取类
import java.io.IOException;import java.io.InputStream;import java.util.Properties; public class Comm ...
- 新疆大学ACM-ICPC程序设计竞赛五月月赛(同步赛)- 勤奋的杨老师(最长递增子序列)
链接:https://www.nowcoder.com/acm/contest/116/C来源:牛客网 题目描述 杨老师认为他的学习能力曲线是一个拱形.勤奋的他根据时间的先后顺序罗列了一个学习清单,共 ...
- JQuery里面的下啦菜单
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...
- noip数论复习总结
(上不了p站我要死了,侵权度娘背锅) 勉勉强强算是把数论复习的差不多了. 总结一下吧. 其实数论的知识大部分是结合在一起的,勉强分类总结 组合数 求法 组合数的求法根据不同情况选用不同的方法 2.3都 ...
- 打包工具 使用帮助 inno setup
http://wenku.baidu.com/link?url=0VRJ8n9am1KgVAAqwz-AU1htXamo7Vh0d4QIdGG6_LcTrZBdb7lRim8Jx6M8KaLJDQm1 ...
- top显示的内存各项参数解析
top观察进程数据时,会有如下几个内存参数(可以用f选择显示哪些参数): VIRT, RES, SHR, SWAP, CODE, DATA top实际上是从/proc/<pid>/stat ...
- 去掉wget烦人的 “eta(英国中部时间)” 提示
gentoo 里的 wget ,从1.12版本开始,就一直有个不影响功能的小毛病:由于中文翻译的失误,进度提示的时候,会被拉成很多行.原因就是原来英文的ETA这3个字母,被翻译成了 “eta(英国中部 ...
- Shell--变量键盘读取、数组与声明:read,array,declare
1.read read [-pt] variable -P:后面可以接提示信息 -t:后面可以接等待的秒数,时间到后等待结束 read后面不加任何参数,直接加变量名称,那么就会主动出现一个空白行等待你 ...
- ES6里关于正则表达式的拓展
一.构造函数 在 ES5 中,RegExp构造函数的参数有两种情况. 第一种情况是,参数是字符串,这时第二个参数表示正则表达式的修饰符(flag) var regex = new RegExp('xy ...