/*游戏或者运动才能让我短暂的忘记心痛,现如今感觉学习比游戏和运动还重要——曾少锋*/

如果对git基础不太熟悉的可以参考:http://www.cnblogs.com/zengsf/p/7506219.html

想把文件推到github中的过程可以参考:http://www.cnblogs.com/zengsf/p/7511370.html

分支其实很好理解,就是中间插入进来,就如同大树一样一条主干,多条分支。

HEAD就是当前提交点,当你操作次分支,那么HEAD就在当前提交次分支处,当你在操作

主分支是,HEAD就在当前提交主分支处。

git branch <name>创建一个次分支,这时我们就有两个分支了,那么肯定要切换主分支

和次分支。这是就利用git checkout <name>进行切换。其实也可以将上面两步变成一步,

git checkout -b <name>就直接创建好了并且切换到了这个分支上。

当你在zsf分支时,你修改了编辑器里面的内容,然后提交了(git add <file>,

git commit -m <file>)。然后在查看编辑器的内容时,就是你修改后的内容,

但是回到master分支时,查看的内容却是修改之前的内容。自己实践一下就

知道了。

既然可以分,那当然可以合并。但要注意的是要合并分支,那你当前要处于

主分支才能合并分支,通过git merge <分支名>。

合并好了,那么分支也就没必要了。就可以删掉了。通过git branch -d <name>

就可以删掉想删除的分支了。

分支也会有冲突的时候,在分支状态下,修改好了内容提交了。然后回到主分支,

也修改了里面的内容并且都提交了。这是在合并时就会有冲突。

在编辑器中就会变成这样:

为了解决冲突,我们可以修改为:

在利用git add <name>和git commit -m <name>,之后在查看提交过程:

git log --graph的命令是查看分支合并图。将两个合并成了一个,并且图中也很详细的整个过程。

合并分支时,Git使用用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。

意思就是合并后在利用git log --graph时并不会出现历史记录。

当然,你可以让其显示出来,并且不会丢失分支信息。就是利用--no-ff来禁止使用Fast forward模式。

这样你在利用git log --graph时就跟上面不一样了。

或者这样更简洁

你将可以看到分支合并到主分支上的图了。

git中的分支管理的更多相关文章

  1. Git如何进行分支管理?

    Git如何进行分支管理?     1.创建分支     创建分支很简单:git branch <分支名>     2.切换分支     git checkout <分支名>   ...

  2. Git中的分支

    具体请参考:https://git-scm.com/book/zh/v1/Git-%E5%88%86%E6%94%AF-%E4%BD%95%E8%B0%93%E5%88%86%E6%94%AF Git ...

  3. Git 远程仓库分支管理

    目录 目录 速查表 关联远程代码仓库 克隆远程仓库 分支管理 创建分支 切换分支 合并分支 删除分支 解决冲突 速查表 指令 作用 git branch 查看分支 git branch newBran ...

  4. 五、git学习之——分支管理策略、Bug分支、feature分支、多人协作

    一.分支管理策略 通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息. 如果要强制禁用Fast forward模式,Git就会在merge时生 ...

  5. python使用git进行版本控制-分支管理

    1.远程克隆 最好的方式是先创建远程库,然后,从远程库克隆: 首先在github上创建一个新的仓库,名字叫gitskills 我们勾选Initialize this repository with a ...

  6. Git远程和分支管理

    一.远程       Git是分布式版本控制系统,最重要的优点就是远程仓库托管代码.不用自己搭建一个服务器,在github上面注册一个账户就可免费获取远程仓库.      首先需要先在github上面 ...

  7. Git教程之分支管理之二

    分支管理策略 通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息.如果要强制禁用Fast forward模式,Git就会在merge时生成一个 ...

  8. 史上最浅显易懂的Git教程3 分支管理

    假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了.如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险 ...

  9. 【Git教程】Git教程之分支管理

      在前一篇文章中,主要针对Git本地仓库和远程仓库的基本操作命令进行了简要介绍,本文主要集中介绍Git的另一个主要的特点:分支管理和多人协作. 什么是分支管理   当一个任务需要多人协作完成时,每个 ...

随机推荐

  1. django URL路由基础

    URL是Web服务的入口,用户通过浏览器发送过来的任何请求,都是发送到一个指定的URL地址,然后被响应. 在Django项目中编写路由,就是向外暴露我们接收哪些URL的请求,除此之外的任何URL都不被 ...

  2. 在ANE插件中启动AIR开发的Android应用

    在Android原生应用开发中,启动一个应用非常容易: Intent __intent = new Intent(this, YourAppActivity.class); startActivity ...

  3. 【Python】给图片添加水印的Python及Golang实现

    前言 不知道大家有没有这样的习惯,一篇比较得意的博客在发表一段时间之后会特别关注,前段时间一篇写到凌晨的博客被 码迷 这个网关爬取之后发表了,因为搜索引擎先爬取码迷的,所以我的博客无法被搜索到,即使直 ...

  4. Spring AMQP 源码分析 08 - XML 配置

    ### 准备 ## 目标 通过 XML 配置文件使用 Spring AMQP ## 前置知识 <Spring AMQP 源码分析 07 - MessageListenerAdapter> ...

  5. C# DataTable按指定列排序

    C#提供的内置对象DataTable功能特别的强大,如果我们需要对DataTable中的某一列进行排序怎么处理呢,具体代码如下: DataTable dt = new DataTable(); dt. ...

  6. spring boot 2.0 + 静态资源被拦截,怎么办?

    问题描述:使用springboot 2.0后,按照springboot 1.5版本(以下简称旧版)的方式去配置项目.结果发现静态资源访问不到了,本文对此情况分析.处理 项目结构: 直接上图 如果是在旧 ...

  7. 雷林鹏分享:C# 枚举(Enum)

    C# 枚举(Enum) 枚举是一组命名整型常量.枚举类型是使用 enum 关键字声明的. C# 枚举是值数据类型.换句话说,枚举包含自己的值,且不能继承或传递继承. 声明 enum 变量 声明枚举的一 ...

  8. WPF如何给窗口Window增加阴影效果

    https://blog.csdn.net/w_sx12553/article/details/45072861

  9. 1月4日编程基础hash

    早上git加星了webapp的教程 > h = Hash.new('Go Fishing')       => {}  // 创建一个空hash,设定"Go Fishing&qu ...

  10. Confluence 6 使用 LDAP 授权连接一个内部目录 - 拷贝用户到登录

    在登录时拷贝用户(Copy User on Login) 这个选项在用户尝试登录的时候将会被触发.如果这个选择框被选择的话,当用户使用 LDAP 授权的用户名和密码登录系统的时候,用户将会在内部目录自 ...