分支管理

一、分支推进

  • 主分支

    单线分支,随着代码的提交而形成的一条直线,HEAD 随着commit提交之后的节点移动而移动。

  • 子分支

    • 当切换到子分支的时候,HEAD 则指向子分支的节点。

    • 在子分支上commit提交,则子分支到下一个节点,主分支不变。

    • 切换到主分支上,HEAD 则指向主分支。

    • 当主分支合并子分支后,并提交,HEAD依然指向主分支并到下一节点。

    • 当整个项目结束后,只保留主分支

二、创建分支

1
2
3
4
5
# 第一种方式 创建dev分支  -b 创建并切换分支
$ git checkout -b dev
# 第二种方式
$ git branch dev # 创建dev分支,但没有切换分支
$ git checkout dev # 切换dev分支

三、查看分支

1
2
3
4
# * dev 表示当前在dev分支上
$ git branch
* dev 
  master

四、合并分支

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#切换到dev 分支
$ git checkout dev
# 创建一个文件
$ touch index.html
# 提交到工作区
$ git add index.html
# 提交到版本库
$ git commit -m'[+ add index.html file]'
# 切换到master分支
$ git checkout master
# 查看当前文件
$ ls
# 合并分支
$ git merge dev
# 查看当前文件
$ ls
# 删除dev 分支
$ git branch -d dev 

五、解决冲突

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 切换到master分支
$ git checkout master
# 创建一个文件 readme.txt,写入 this is a readme.txt file
$ touch readme.txt
$ git add readme.txt
# 创建一个分支并切换
$ git checkout -b fuqiang
# 写入readme.txt 文件 testing is now ! 并保存
$ vim readme.txt
# 提交到分支fuqiang的工作区
$ git add readme.txt
# 提交到分支fuqiang的版本库
$ git commit -m'[* 制造bug]'
# 切换到master分支
$ git checkout master
# 合并分支
$ git merge fuqiang
# 合并出错,打开 readme.txt 把 >>> 之类的东西删除掉
# 提交到master分支的工作区
$ git add readme.txt
# 提交到master分支的版本库中
$ git commit -m'[+ add readme.txt file]' 

GIT之分支管理的更多相关文章

  1. Git的分支管理

    0.引言 本文参考最后的几篇文章,将git的分支管理整理如下.学习git的分支管理将可以版本进行灵活有效的控制. 1.如何建立与合并分支 1.1分支的新建与合并指令 新建分支 newBranch,并进 ...

  2. 你真的了解git的分支管理跟其他概念吗?

    现在前端要学的只是太多了,你是不是有时会有这个想法,如果我有两个大脑.一个学Vue,一个学React,然后到最后把两个大脑学的知识再合并在一起,这样就能省时间了. 哈哈,这个好像不能实现.现实点吧!年 ...

  3. git的介绍、git的功能特性、git工作流程、git 过滤文件、git多分支管理、远程仓库、把路飞项目传到远程仓库(非空的)、ssh链接远程仓库,协同开发

    Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理. [1] 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码 ...

  4. 引入git flow分支管理

    git flow是Vincent Driessen提出了一个分支管理的策略,非常值得借鉴.它可以使得版本库的演进保持简洁,主干清晰,各个分支各司其职.井井有条. 先看下Vincent Driessen ...

  5. git branch分支管理用法总结

    查看分支(远程和本地) 1 查看本地分支: $ git branch 2 查看远程分支: $ git branch -r 3.查看本地和远程分支 $ git branch -a 创建分支 1.创建本地 ...

  6. git(二) 分支管理

    概念 分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 如果两个平行宇宙互不干扰,那对现在的你也没啥影响.不过,在某个时间点,两个平行宇 ...

  7. Git Flow 分支管理简述

    概述 Git 是什么 Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的 ...

  8. git flow分支管理

    阅读目录 两种核心分支 三种临时分支 Git Flow流程示例代码 Git Flow工具 分支命名规范 总结 git flow是Vincent Driessen提出了一个分支管理的策略,非常值得借鉴. ...

  9. Git(四)Git的分支管理

    一. 创建合并分支原理 在我们每次的提交,Git都把它们串成一条时间线,这条时间线就是一个分支.截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支.HEAD指针严格来说不是指 ...

  10. 139.00.005 Git学习-分支管理

    @(139 - Environment Settings | 环境配置) 一.Why? 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交, ...

随机推荐

  1. 20190923-09Linux磁盘分区类 000 017

    df 查看磁盘空间使用情况 df: disk free 空余硬盘 1.基本语法 df  选项 (功能描述:列出文件系统的整体磁盘使用量,检查文件系统的磁盘空间占用情况) 2.选项说明 表1-32 选项 ...

  2. 原生JDK网络编程- NIO

    什么是NIO? NIO 库是在 JDK 1.4 中引入的.NIO 弥补了原来的 I/O 的不足,它在标准 Java 代码中提供了高速的.面向块的 I/O.NIO翻译成 no-blocking io 或 ...

  3. 2019UNCTF

    Easyshellcode: 不说了,都是没有工具的血泪史,直接上exp: from pwn import * from numbers import * from ae64 import AE64 ...

  4. Java使用Filter用户权限控制

    package com.mvc.test; import javax.servlet.ServletException; import javax.servlet.annotation.WebServ ...

  5. shell 文件判断

    文件判断参数 -e,文件是否存在 -f,文件存在且为普通文件 -d,文件存在且为文件夹 #!/bin/bash [ -e test.sh ] && echo "test.sh ...

  6. SpringCloud-config分布式配置

    为什么要统一管理微服务配置? 随着微服务不断的增多,每个微服务都有自己对应的配置文件.在研发过程中有测试环境.UAT环境.生产环境,因此每个微服务又对应至少三个不同环境的配置文件.这么多的配置文件,如 ...

  7. Java SPI详细的例子

    先翻一个来自于Baeldung的介绍: 为了更通俗易懂我就没有直译,如果有不严谨的地方请大神指教. JavaSPI的定义 Java SPI defines four main components S ...

  8. 掌控安全less6 靶场简易--盲注

    1.判断是否存在sql注入 http://injectx1.lab.aqlab.cn:81/Pass-11/index.php?id=1"  and "1"=" ...

  9. [计算机网络]图解HTTP阅读笔记

    总述 书的定位:一本十分浅显的HTTP书籍,主要介绍了HTTP与HTTPS.适合入门了解,很多地方都是蜻蜓点水,但稍微深入的地方能让人了解重点在哪,后面应该有针对性地阅读深入书籍. 主要内容:介绍了T ...

  10. Python接口自动化测试01

    1)环境准备: 接口测试的方式有很多,比如可以用工具(jmeter,postman)之类,也可以自己写代码进行接口测试,工具的使用相对来说都比较简单,重点是要搞清楚项目接口的协议是什么,然后有针对性的 ...