Git 分支管理

目录

分支管理

创建合并分支

使用TortoiseGit实现分支管理

创建分支

合并分支

删除分支


分支管理

创建合并分支

  • 在我们每次的提交,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD指针严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。
  • 一开始的时候,master分支是一条线,Git用master指向最新的提交,再用HEAD指向master,就能确定当前分支,以及当前分支的提交点:

Git 分支管理_第1张图片

  • 每次提交,master分支都会向前移动一步,这样,随着你不断提交,master分支的线也越来越长。
  • 当我们创建新的分支,例如dev时,Git新建了一个指针叫dev,指向master相同的提交,再把HEAD指向dev,就表示当前分支在dev上:

Git 分支管理_第2张图片

  • Git创建一个分支很快,因为除了增加一个dev指针,改改HEAD的指向,工作区的文件都没有任何变!
  • 不过,从现在开始,对工作区的修改和提交就是针对dev分支了,比如新提交一次后,dev指针往前移动一步,而master指针不变:

Git 分支管理_第3张图片

  • 假如我们在dev上的工作完成了,就可以把dev合并到master上。Git怎么合并呢?
    • 最简单的方法,就是直接把master指向dev的当前提交,就完成了合并:

Git 分支管理_第4张图片

  • 所以Git合并分支也很快!就改改指针,工作区内容也不变!
  • 合并完分支后,甚至可以删除dev分支。删除dev分支就是把dev指针给删掉,删掉后,我们就剩下了一条master分支
     

Git 分支管理_第5张图片

  • 示意图
    • 在V3版本时创建分支dev

Git 分支管理_第6张图片

  • 在V3版本分别进行开发

Git 分支管理_第7张图片

Git 分支管理_第8张图片

  • 合并

Git 分支管理_第9张图片

  • 合并后继续开发

Git 分支管理_第10张图片

  • 再次合并

Git 分支管理_第11张图片

使用TortoiseGit实现分支管理

创建分支

  • 方法1:
    • 在工作区右键,选择Swith/checkout(切换/检出)

Git 分支管理_第12张图片

  • 点击Create New Branch

Git 分支管理_第13张图片

Git 分支管理_第14张图片

  • 方法2:
    • create branch(创建分支)

Git 分支管理_第15张图片

Git 分支管理_第16张图片

  • 切换到dev2

Git 分支管理_第17张图片

  • 版本分支图查看

Git 分支管理_第18张图片

Git 分支管理_第19张图片

合并分支

  • 在master 分支下,修改mytest.txt文件,并建立master_test文件

Git 分支管理_第20张图片

Git 分支管理_第21张图片

  • 切换到dev1 分支下,修改mytest.txt文件,并建立dev1_test文件

Git 分支管理_第22张图片

Git 分支管理_第23张图片

  • 将dev1分支合并到master 分支下,即先切换到master分支下,右键选择Merge(合并)

Git 分支管理_第24张图片

  • 选择dev1合并到master

Git 分支管理_第25张图片

Git 分支管理_第26张图片

  • 解决冲突:

Git 分支管理_第27张图片

Git 分支管理_第28张图片

Git 分支管理_第29张图片

Git 分支管理_第30张图片

  • 提交合并内容

Git 分支管理_第31张图片

Git 分支管理_第32张图片

删除分支

  • 点击Swith/checkout(切换/检出)

Git 分支管理_第33张图片

  • 在不需要的的分支上右键,delete

Git 分支管理_第34张图片

  • 删除dev1 、dev2后

Git 分支管理_第35张图片

【注】:参考黑马程序员git教程

你可能感兴趣的:(Git/SVN)