【git】3.1git分支-分支简介
资料来源
(1) https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%AE%80%E4%BB%8B
1.分支的作用
(1) 使用分支可以将工作从开发主线上分离开来,以免影响开发主线;
2.分支介绍
(1) git的分支,本质上仅仅是指向提交对象的可变指针;
(2) git的默认分支名字是master; master分支在每次提交时,自动向前移动;
(3) git的master分支并不是一个特殊分支,和其他分支完全没有区别; 之所以几乎每个仓库都有master分支,是因为git init命令默认创建它;
2.1 分支创建git branch
(1) git branch 分支名,如git branch branch1;
(2) git branch会在当前所在的提交对象上创建一个指针;
注1:git怎么知道当前在哪个分支上? git有一个名为HEAD的特殊指针,该指针指向当前所在的本地分支;
2.2 分支切换git checkout
(1) git checkout 分支名,如git checkout branch1;
(2) 执行该命令后,HEAD指向分支branch1;
(3) 在分支branch1上执行git commit操作后, 分支branch1会向前移动,但是master分支并没有, master分支依然指向运行git checkout时所指的对象; 此时,执行git checkout master,会有两个影响,一是使HEAD指回master分支,二是将工作目录恢复成master分支所执行的快照内容(本质上讲,是忽略branch1分支所作的修改,以便于向另一个方向进行开发);
注1:分支切换会改变工作目录中的文件;
(4) 项目的分叉:创建一个新分支branch1,并切换过去进行一些工作; 随后又切换回master分支,进行另外一些工作;这两次改动针对的是不同分支,可以在不同分支间不断来回切换和工作,并在适当时将它们合并起来;
注1:使用git log --oneline --decorate --graph --all可以查看分叉历史;
2.3 分支创建同时切换git checkout -b
(1) git checkout -b 分支名,如git checkout -b branch1,等同于git branch branch1 + git checkout branch1;
【git】3.1git分支-分支简介的更多相关文章
- 7.Git分支-分支简介、分支创建、分支切换
1.分支简介 几乎所有的版本控制系统都支持某种形式的分支.使用分支意味着可以把你的工作从开发主线上分离开来,以免影响开发主线.Git的分支是其必杀技,它相对于其它版本控制系统来说,具有难以置信的轻量性 ...
- Git(12)-- Git 分支 - 分支简介
@ 目录 1.分支简介 1.1.初始化并首次提交 首次提交对象及其树结构: git 的 cat-file 的命令用法: 1.2.修改并第二次提交 第二次提交对象及其树结构: 1.3.修改并第三次提交 ...
- ###Git 基础图解、分支图解、全面教程、常用命令###
一.Git 基础图解 转自:http://www.cnblogs.com/yaozhongxiao/p/3811130.html Git 图解剖析 git中文件内容并没有真正存储在索引(.git/in ...
- VS2013中使用git发布解决方案master分支的时候出现错误
VS2013GIT基础用法请自行参考:不会Git命令,照样玩转Git 环境:VS2013+ 码云错误描述:在VS2013中使用git发布解决方案master分支的时候出现“无法将本地分支 master ...
- git学习4:分支管理
每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支.截止到目前,只有一条时间线,这个分支叫主分支,即master分支,HEAD指向master,master指向提交,所以,HEAD指向的就 ...
- Git tag 给当前分支打标签
原文已经找不到出处,重新整理格式,仅作个人收藏! 标签(Tag)可以针对某一时间点的版本做标记,常用于版本发布. 列出tag $ git tag # 在控制台打印出当前仓库的所有tag $ git t ...
- git命令之git tag 给当前分支打标签
git tag - 标签相关操作 发表于 2011年06月29日 由 机器猫 标签可以针对某一时间点的版本做标记,常用于版本发布. 列出标签 $ git tag # 在控制台打印出当前仓库的所有标签$ ...
- 【Git】笔记4 分支管理1
1.创建与合并分支 一开始的时候,master分支是一条线,Git用master指向最新的提交,再用HEAD指向master,就能确定当前分支,以及当前分支的提交点: 每次提交,master分支都会向 ...
- 3.2 Git 分支 - 分支的新建与合并
分支的新建与合并 现在让我们来看一个简单的分支与合并的例子,实际工作中大体也会用到这样的工作流程: 开发某个网站. 为实现某个新的需求,创建一个分支. 在这个分支上开展工作. 假设此时,你突然接到一个 ...
- git 克隆项目 与 分支简单操作
git clone http://abcde.com/myproject/abc.git 克隆远程项目到本地githome文件夹git branch -a 查看所有分支 包括远程和本地 *号开头表示当 ...
随机推荐
- OS-HACKNOS-2.1
HACKNOS: RECONFORCE (V1.1) 目录 HACKNOS: RECONFORCE (V1.1) 1 信息收集 1.1 端口扫描 1.2 ftp分析 1.3 后台目录扫描 1.2.1 ...
- Linux:grep 查找文件内容
在 Windows 中打开文件用查找功能可以查找我们想要的字符,前提是要打开文件.Linux 有一个指令不用打开文件就可以查询字符,而且支持正则表达式-- grep 指令.不仅如此,grep 还支持在 ...
- 计网学习笔记二 Link Layer Service
在上一周的计网学习了network和Internet的总论.在这一周开始的未来几讲将集中在链路层link layer,并且会有相应的计网lab完成.在这一讲中,我们主要关注链路层提供的服务. 课程资料 ...
- z order curve
https://www.cnblogs.com/tgzhu/p/8286616.html
- Verilog设计指定寄存器数组在综合时使用block memory资源
自己用verilog代码写的rom或ram会被综合成查找表LUT+REG构建,并没有使用到block memory资源. 资料:https://www.intel.com/content/www/us ...
- qt_2d画图
qt中如何画图? 使用Qpainter类进行2D绘画 例如以下代码进行直线的绘制 QPainter painter(this);painter.setPen(Qt::red);painter.draw ...
- Ubuntu 安装 PHP
Ubuntu版本:20.04.1 LTS PHP版本:8.2.3 下载地址: https://www.php.net/downloads 官方文档:https://www.php.net/manual ...
- 信息学奥赛介绍-CSP
什么是信息学奥赛 信息学奥赛,全称为信息学奥林匹克竞赛,是教育部和中国科协委托中国计算机 学会举办的一项全国青少年计算机程序设计竞赛.主要分为NOIP(全国联赛),夏令营 NOI比赛的扩展赛,也称全国 ...
- CF1404D 题解
题意 传送门 给定 \(2n\) 个数 \(1,2,\dots,2n\),A 和 B 进行交互,如下规则: A 需要将元素分成 \(n\) 组 \(\texttt{pair}\): B 从每组 \(\ ...
- QueryObject
1 package com.ygm.aa.page.qo; 2 3 import lombok.Getter; 4 import lombok.NoArgsConstructor; 5 import ...