• 1.分支简介

    • git保存的不是文件的差异,而是不同时刻的文件快照
    • git仓库中的对象:
      • commit对象:包含指向前一个commit的指针的所有提交信息
      • 树对象:记录目录结构和blob对象索引
      • blob对象:保存着文件快照
    • HEAD指针:指向当前所在的本地分支,可认为是当前分支的别名
      • git log --oneline --decorate 使用--decorate查看各个分支当前所指的commit对象
      • git log --oneline --decorate --graph --all ,它会输出你的提交历史、各个分支的指向以及项目的分支分叉情况。
  • 2.分支的新建与合并
    • 常用命令

      • git branch [branch-name]:创建新分支,但不切换
      • git chekcout [branch-name]:切换到分支,HEAD指针将指向指定分支
      • git checkout -b [branch-name]:创建新分支,并切换分支,相当于上面命令的和
      • git branch -d [branch-name]:删除分支
    • 分支合并
    • 冲突解决
  • 3.分支管理(完结)
    • git branch:显示所有分支,*是当前HEAD指向的分支
    • git branch -v:显示所有分支,并显示每个分支的最后一次提交(v指的是verbose)
    • 查看已合并或未合并到当前分支的分支
      • git branch --merged:查看哪些分支已经合并到当前分支

        • 通常列表中分支前没有*号的分支可以使用git branch -d删除,因为已经将其整合到另一个分支了,所以不会失去任何东西

      • git branch --no-merged:查看哪些分支尚未合并到当前分支
        • 这些分支因含有尚未合并的工作,(在当前分支)使用git branch -d删除时会失败
        • 强制删除 git branch -D [branch-name]
  • 4.分支开发工作流(完结)
    • 长期分支:仅在master分支上保留完全稳定的代码
  • 5.远程分支(完结)
    • 基本原理

      • 远程仓库:远程仓库中master分支
      • 本地仓库:
        • master为本地分支,用于保存本地主分支进度
        • origin/master为本地的跟踪分支,用于跟踪远程的master分支
        • 注意:本地的origin/master可能不与远程master相同,需使用git pull同步
    • 显示远程分支信息
      • git ls-remote:获取远程引用的完整列表
      • git remote show:显示远程分支信息
    • 推送
      • git push origin local-name:remote-name
      • 示例:git push origin aaa:bbb 推送本地aaa分支到origin仓库的bbb分支
    • 拉取
      • git pull
    • 删除远程分支
      • git push origin --delete remote-name
  • 6.变基(git rebase暂时忽略)

《Pro Git》第3章 分支的更多相关文章

  1. [Git01]Pro Git 第三章 分支 读书笔记

    [git]分支   Git 的分支模型称为“必杀技特性”,而正是因为它,将 Git 从版本控制系统家族里区分出来. Git 有何特别之处呢?Git 的分支可谓是难以置信的轻量级,它的新建操作几乎可以在 ...

  2. 【Tools】Pro Git 一二章读书笔记

    记得知乎以前有个问题说:如果用一天的时间学习一门技能,选什么好?里面有个说学会Git是个很不错选择,今天就抽时间感受下Git的魅力吧.   Pro Git (Scott Chacon) 读书笔记:   ...

  3. [Git00] Pro Git 一二章读书笔记

    记得知乎以前有个问题说:如果用一天的时间学习一门技能,选什么好?里面有个说学会Git是个很不错选择,今天就抽时间感受下Git的魅力吧.   Pro Git (Scott Chacon) 读书笔记:   ...

  4. Pro Git 第一章 起步 读书笔记

    Pro Git 笔记 第1章 起步 1.文件的三种状态. 已提交:文件已经保存在本地数据库中了.(commit) 已修改:修改了某个文件,但还没有提交保存.(vim) 已暂存:已经把已修改的文件放在下 ...

  5. 《Pro Git》笔记3:分支基本操作

    <Pro Git>笔记3:Git分支基本操作 分支使多线开发和合并非常容易.Git的分支就是一个指向提交对象的可变指针,极其轻量.Git的默认分支为master. 1.Git数据存储结构和 ...

  6. 《Pro Git》阅读随想

    之前做版本管理,我使用最多的是SVN,而且也只是在用一些最常用的操作.最近公司里很多项目都开始上Git,借这个机会,我计划好好学习一下Git的操作和原理,以及蕴含在其中的设计思想.同事推荐了一本< ...

  7. Pro Git CN Plus

    Git — The stupid content tracker, 傻瓜内容跟踪器.Linus 是这样给我们介绍 Git 的. Git 是用于 Linux 内核开发的版本控制工具.与常用的版本控制工具 ...

  8. 《Pro Git》轻松学习版本控制

    转自 https://kindlefere.com/post/333.html 什么是“版本控制”?我为什么要关心它呢?版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统.在 ...

  9. Pro Git(中文版)

    Pro Git(中文版) 返回 Git @ OSC 目录 1.起步 1.1 关于版本控制 1.2 Git 简史 1.3 Git 基础 1.4 安装 Git 1.5 初次运行 Git 前的配置 1.6 ...

随机推荐

  1. AderTemplate

    http://www.cnblogs.com/kwklover/archive/2007/07/12/815509.html 概述 AderTemplate是一个小型的模板引擎.无论是拿来直接使用还是 ...

  2. logback配置每天生成一个日志文件,保存30天的日志文件

    <?xml version="1.0" encoding="UTF-8"?> <configuration> <!-- 文件输出格 ...

  3. 初步了解 cURL

    今天需要用PHP模拟post请求,查了查资料,了解到cURL.看了一篇博客,写的很详细,就转载了,与大家分享.[原文链接] 什么是cURL?可能还有很多同学没有听说过这个工具,我先来给大家简单介绍下什 ...

  4. 《转》Win7 IIS7.5 安装

    一.进入Win7的 控制面板,选择左侧的 打开或关闭Windows功能. 二.现在出现了安装Windows功能的选项菜单,注意选择的项目,我们需要手动选择需要的功能,下面这张图片把需要安装的服务都已经 ...

  5. @Override must override a superclass method 有关问题解决

    1.Java开发环境时 如果在使用Eclipse开发Java项目时,在使用 @Override 出现以下错误: The method *** of type *** must override a s ...

  6. Java利用dom4j生成xml文件、解析XML

    package com.fq.fanqi; import java.io.File;import java.io.FileWriter;import java.io.IOException;impor ...

  7. cpp中文乱码

    中文乱码 [root@test mediaStudio]# g++ testCgi.cpp [root@test mediaStudio]# ./a.out Content-type:text/htm ...

  8. Linux(3)- 用户管理、文件与目录权限、常用命令、Linux软件包管理

    一.用户管理 现代操作系统一般属于多用户的操作系统,也就是说,同一台机器可以为多个用户建立账户,一般这些用户都是为普通用户,这些普通用户能同时登录这台计算机,计算机对这些用户分配一定的资源. 普通用户 ...

  9. RT-Thread内核之线程调度(三)

    4.RT-Thread中的线程? /**  * 线程结构  */ struct rt_thread {     /** Object对象 */     char        name[RT_NAME ...

  10. (4.9)SQL Server 数据库规范

    SQL Server 数据库规范 一.       命名规范 常用对象命名规范,使用帕斯卡命名法(Pascal,单词首字母大写),统一使用英文. 1.        表.英文单数名词,尽量写完整单词名 ...