Learn Git Branching 学习笔记

网址:Learn Git Branching

一、基础篇

1.1 git commit

1.1.1 示例(git commit)

git commit

1.1.2 题目(两次提交记录)

git commit
git commit

1.2 git branch

1.2.1 示例(git branch <>、git checkout <>、git checkout -b <>)

git branch newImage

git branch Image
git commit

git branch newImage
git checkout newImage
git commit

1.2.2 题目(创建新分支并切换到新创建的分支)

git branch bugFix
git checkout bugFix

有更简洁的方式:想创建一个新的分支同时切换到新创建的分支的话,可以通过git checkout -b<your branch name>来实现。

git checkout -b bugFix

1.3 git merge

1.3.1 示例(git merge <>)

git merge bugFix

git merge bugFix
git checkout bugFix
git merge main

1.3.2 题目

git checkout -b bugFix
git commit
git checkout main
git commit
git merge bugFix

1.4 git rebase

1.4.1 示例(git rebase <>)

git rebase main

git rebase main
git checkout main
git rebase bugFix

1.4.2 题目

git checkout -b bugFix
git commit
git checkout main
git commit
git checkout bugFix
git rebase main


二、高级篇

2.1 git checkout

2.1.1 示例

git checkout C1
git checkout main
git commit
git checkout C2

分离的HEAD

 2.1.2 题目

方式一:鼠标点击C4

方式二:命令行

git checkout C4

2.2 相对引用(^)

2.2.1 示例(git checkout <>^)

git checkout main^

git checkout C3
git checkout HEAD^
git checkout HEAD^
git checkout HEAD^

2.2.2 题目(切换到父节点)

git checkout bugFix^

2.3 相对引用2(~)

2.3.1 示例(git checkout HEAD~<num>、git branch -f <> HEAD~<num>)

git checkout HEAD~4

git branch -f main HEAD~3

2.3.2 题目

方式一:

git checkout C1
git branch -f main C6
git branch -f bugFix C0

方式二:

git checkout HEAD^
git branch -f main C6
git branch -f bugFix HEAD^

2.4 撤销变更

2.4.1 示例(git reset HEAD~<num>、git revert HEAD)

git reset HEAD~1

git revert HEAD

2.4.2 题目

git reset HEAD~1
git checkout pushed
git revert HEAD


三、移动提交记录

3.1 git cherry-pick

3.1.1 示例

git cherry-pick C2 C4

3.1.2 题目

git cherry-pick C3 C4 C7

3.2 交互式rebase

3.2.1 示例

git rebase -i HEAD~4

3.2.2 题目

git rebase -i HEAD~4


四、杂项

4.1 只取一个提交记录

git checkout main
git cherry-pick C4

4.2 提交的技巧#1

git rebase -i HEAD~2
git commit --amend
git rebase -i HEAD~2
git branch -f main HEAD

4.3 提交的技巧#2

4.3.1 示例

git cherry-pick C2

4.3.2 题目

git checkout main
git cherry-pick C2
git commit --amend
git cherry-pick C3

4.4 git tag

4.4.1 示例

git tag v1 C1

4.4.2 题目

git tag v1 C2
git tag v0 C1
git checkout C2

4.5 git describe

4.5.1 示例

git tag v2 C3

4.5.2 题目


五、高级话题

5.1 多次rebase

git rebase main bugFix
git rebase bugFix side
git rebase side another
git rebase another main

5.2 两个parent节点

5.2.1 举例

git checkout main^

git checkout main^2

git checkout HEAD~
git checkout HEAD^2
git checkout HEAD~2

git checkout HEAD~^2~2

5.2.2 题目

方式一:

git checkout HEAD~^2~
git branch bugWork
git checkout main

方式二:

git branch bugWork main~^2~

5.3 纠缠不清的分支

git checkout one
git cherry-pick C4 C3 C2
git checkout two
git cherry-pick C5 C4 C3 C2
git branch -f three C2


六、Push&Pull——Git 远程仓库!

6.1 git clone

6.1.1 示例

git clone

6.1.2 题目

git clone

6.2 远程分支

6.2.1 示例

git checkout o/main
git commit

6.2.2 题目

git commit
git checkout o/main
git commit

 

6.3 git fetch

6.3.1 示例

git fetch

6.3.2 题目

git fetch

6.4 git pull

6.4.1 示例

git fetch
git merge o/main

git pull

6.4.2 题目

git pull

6.5 模拟团队合作

6.5.1 示例

git fakeTeamwork

git fakeTeamwork foo 3

6.5.2 题目

git clone
git fakeTeamwork 2
git commit
git pull

6.6 git push

6.6.1 示例

git push

6.6.2 题目

git commit
git commit
git push

6.7 偏离的提交历史

6.8 锁定的main(Locked Main)


七、关于origin和它的周边——Git远程仓库高级操作

7.1 推送主分支

7.2 合并远程仓库

7.3 远程追踪

7.4 git push的参数

7.5 git push的参数2

7.6 git fetch的参数

7.7 没有source的source

7.8 git pull的参数


完结撒花!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/923724.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

设计模式:责任链实现数据流风格的数据处理

数据流风格 数据流风格是软件架构中的一种风格&#xff0c;主要是面向数据&#xff0c;用于进行流式的数据处理&#xff1b;数据流风格的代表有管道-过滤器风格和批处理序列风格&#xff0c;这里主要是指管道-过滤器风格。 管道-过滤器风格就像其名字一样&#xff0c;是以一个…

BERT简单理解;双向编码器优势

目录 BERT简单理解 一、BERT模型简单理解 二、BERT模型使用举例 三、BERT模型的优势 双向编码器优势 BERT简单理解 (Bidirectional Encoder Representations from Transformers)模型是一种预训练的自然语言处理(NLP)模型,由Google于2018年推出。以下是对BERT模型的简…

摄像头原始数据读取——V4L2(mmap模式,V4L2_MEMORY_MMAP)

摄像头原始数据读取——V4L2(mmap模式,V4L2_MEMORY_MMAP) 内存映射模式&#xff0c;是将设备在内核态申请的用于存储视频数据的物理内存映射到用户空间&#xff0c;使得用户应用程序可以直接访问和操作设备数据物理内存&#xff0c;避免了数据的拷贝。因此采集速度较快&#x…

SpringCloud框架学习(第五部分:SpringCloud Alibaba入门和 nacos)

目录 十二、SpringCloud Alibaba入门简介 1. 基本介绍 2.作用 3.版本选型 十三、 SpringCloud Alibaba Nacos服务注册和配置中心 1.简介 2.各种注册中心比较 3.下载安装 4.Nacos Discovery服务注册中心 &#xff08;1&#xff09; 基于 Nacos 的服务提供者 &#xf…

Ubuntu下用Docker部署群晖系统---Virtual DSM --zerotier实现连接

Ubuntu下用Docker部署群晖系统—Virtual DSM --zerotier实现连接 1. Docker 安装 安装最新docker curl -fsSL get.docker.com -o get-docker.sh sudo sh get-docker.sh sudo docker run hello-world2.docker-compose 安装 sudo pip install docker-compose测试安装是否成功…

【排版教程】Word、WPS 分节符(奇数页等) 自动变成 分节符(下一页) 解决办法

毕业设计排版时&#xff0c;一般要求每章节的起始页为奇数页&#xff0c;空白页不显示页眉和页脚。具体做法如下&#xff1a; 1 Word 在一个章节的内容完成后&#xff0c;在【布局】中&#xff0c;点击【分隔符】&#xff0c;然后选择【奇数页】 这样在下一章节开始的时&…

241125学习日志——[CSDIY] [InternStudio] 大模型训练营 [17]

CSDIY&#xff1a;这是一个非科班学生的努力之路&#xff0c;从今天开始这个系列会长期更新&#xff0c;&#xff08;最好做到日更&#xff09;&#xff0c;我会慢慢把自己目前对CS的努力逐一上传&#xff0c;帮助那些和我一样有着梦想的玩家取得胜利&#xff01;&#xff01;&…

JVM类加载和垃圾回收算法详解

文章目录 JVM一、JVM运行流程1. JVM执行流程 二、JVM运行时数据区1. 程序计数器&#xff08;线程私有&#xff09;2. 虚拟机栈 &#xff08;线程私有&#xff09;3. 本地方法栈&#xff08;线程私有&#xff09;4. 堆&#xff08;线程共享&#xff09;5. 元空间&#xff08;线程…

1、正则表达式

grep匹配 grep用来过滤文本内容&#xff0c;以匹配要查询的结果。 grep root /etc/passwd&#xff1a;匹配包含root的行 -m 数字&#xff1a;匹配几次后停止 -v&#xff1a;取反-i&#xff1a;忽略字符的大小写&#xff0c;默认的&#xff0c;可以不加-n&#xff1a…

Java学习笔记--继承的介绍,基本使用,成员变量和成员方法访问特点

目录 一&#xff0c;继承 1.什么是继承 2.怎么去继承: 3.注意: 4.继承怎么学 二&#xff0c;继承基本使用 三&#xff0c;成员变量和成员方法访问特点 1.成员变量访问特点 1&#xff0c;子类和父类中的成员变量不重名: 总结: 2&#xff0c;子类和父类中的成员变量重…

初级数据结构——二叉树题库(c++)

这里写目录标题 前言[1.——965. 单值二叉树](https://leetcode.cn/problems/univalued-binary-tree/)[2.——222. 完全二叉树的节点个数](https://leetcode.cn/problems/count-complete-tree-nodes/)[3.——144. 二叉树的前序遍历](https://leetcode.cn/problems/binary-tree-…

redmi 12c 刷机

刷机历程 一个多月前网购了redmi 12c这款手机, 价格只有550,用来搞机再适合不过了, 拆快递后就开始倒腾,网上有人说需要等7天才能解锁,我绑定了账号过了几天又忍不住倒腾,最后发现这块手机不用等7天解锁成功了,开始我为了获取root权限, 刷入了很火的magisk,但是某一天仍然发现/…

Python 爬虫入门教程:从零构建你的第一个网络爬虫

网络爬虫是一种自动化程序&#xff0c;用于从网站抓取数据。Python 凭借其丰富的库和简单的语法&#xff0c;是构建网络爬虫的理想语言。本文将带你从零开始学习 Python 爬虫的基本知识&#xff0c;并实现一个简单的爬虫项目。 1. 什么是网络爬虫&#xff1f; 网络爬虫&#x…

计算机毕业设计Hadoop+Spark音乐推荐系统 音乐预测系统 音乐可视化大屏 音乐爬虫 HDFS hive数据仓库 机器学习 深度学习 大数据毕业设计

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…

JAVA题目笔记(二十)Stream流综合练习+方法引用

一、数据过滤 import java.util.*; import java.util.stream.Collectors;public class Co {public static void main(String[] args) {List<Integer> listnew ArrayList<>();Collections.addAll(list,1,2,3,4,5,6,7,8,9,10);List<Integer> newlist list.str…

Python学习34天

import random class Game: peo0 rob0 # # def __init__(self,peo,rob): # self.peopeo # self.robrob def Play(self): """ 石头剪刀布游戏&#xff0c;0代表石头&#xff0c;1代见到&#xff0c;2代表石头 …

MATLAB支持的距离度量

距离度量是用于量化两个点或样本之间差异的一种方法。在不同的领域和应用场景中&#xff0c;距离度量的选择可能会有所不同。 欧几里得距离&#xff08;Euclidean Distance&#xff09;&#xff1a;这是最直观的距离定义&#xff0c;适用于n维空间中的两点。对于二维空间中的点…

Jmeter中的测试片段和非测试原件

1&#xff09;测试片段 1--测试片段 功能特点 重用性&#xff1a;将常用的测试元素组合成一个测试片段&#xff0c;便于在多个线程组中重用。模块化&#xff1a;提高测试计划的模块化程度&#xff0c;使测试计划更易于管理和维护。灵活性&#xff1a;可以通过模块控制器灵活地…

【1.2 Getting Started--->Installation Guide】

NVIDIA TensorRT DOCS 此 NVIDIA TensorRT 10.6.0 安装指南提供安装要求、TensorRT 包中包含的内容列表以及安装 TensorRT 的分步说明。 安装指南 摘要&#xff1a; 本 NVIDIA TensorRT 10.3.0 安装指南提供了安装要求、TensorRT 软件包中包含的内容列表以及安装 TensorRT 的…

ubuntu设置程序开机自启动

文章目录 1、概述2、图形界面设置3、设置为Systemd服务 1、概述 测试环境&#xff1a;ubuntu22.04 带图形界面 实现方式1&#xff1a;通过图形界面的【启动应用程序】设置开机自启动&#xff1b; 实现方式2&#xff1a;通过配置为服务实现开机自启动。 2、图形界面设置 优点&am…