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

如果对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. 使用uWSGI和nginx来设置Django和你的web服务器

    本教程针对那些想要设置一个生产web服务器的Django用户.它介绍了设置Django以使得其与uWSGI和nginx工作良好的必要步骤.它涵盖了所有三个组成部分,提供了一个web应用和服务器软件的完 ...

  2. Linux : 密码正确不能正常登陆,日志提示Could not get shadow information for user

    今天,再玩Centos7的时候,尝试修改了下ssh的端口.因为默认开启了SELinux,如果没有修改这个文件配置就修改端口sshd服务就不能正常启动了. 但是,当我修改会22端口的时候还是不能正常登陆 ...

  3. Knapsack CodeForces - 1132E (多重背包)

    可以将大量同种物品合并为$lcm$来优化, 复杂度$O(nlcm^2)$, 好像可以用bitset优化到$O(nlcm^2/\omega)$, 但是没看太懂 const int L = 840, M ...

  4. 『PyTorch』第四弹_通过LeNet初识pytorch神经网络_下

    『PyTorch』第四弹_通过LeNet初识pytorch神经网络_上 # Author : Hellcat # Time : 2018/2/11 import torch as t import t ...

  5. 72. Edit Distance *HARD*

    Given two words word1 and word2, find the minimum number of steps required to convert word1 to word2 ...

  6. intel python加速效果初探

    python3安装intel的加速库: conda config --add channels intel conda create --name intelpy intelpython3_full ...

  7. python的日志模块logging和syslog

    syslog模块是在unix环境下工作的模块,不能用于windows,在windows环境下可以使用logging模块. 一.syslog syslog模块可以用于记录系统运行的信息,这个模块提供的方 ...

  8. module_param和module_param_array用法

    如何向模块传递参数? Linux kernel 提供了一个简单的框架.利用module_param和module_param_arra来实现. 1. module_param(name, type, ...

  9. C#托管代码是什么?非托管代码是什么?

    C#托管代码是什么? 托管代码(Managed Code)实际上就是中间语言(IL)代码.代码编写完毕后进行编译,此时编译器把代码编译成中间语言(IL),而不是能直接在你的电脑上运行的机器码.程序集( ...

  10. 告别.NET生成报表统计图的烦恼

    告别.NET生成报表统计图的烦恼 标签: 报表.netstatistics图形数据库文档 2009-10-09 12:00 635人阅读 评论(0) 收藏 举报  分类: .net程序设计(C#)(2 ...