Learn Git Branching 学习笔记

news2024/11/28 4:44:46

网址: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的参数


完结撒花!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Unity类银河战士恶魔城学习总结(P145 Save Skill Tree 保存技能树)

【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili 教程源地址&#xff1a;https://www.udemy.com/course/2d-rpg-alexdev/ 本章节实现了技能树的保存 警告&#xff01;&#xff01;&#xff01; 如果有LoadData&#xff08;&#xff09;和SaveData(&#xff09;…

从 App Search 到 Elasticsearch — 挖掘搜索的未来

作者&#xff1a;来自 Elastic Nick Chow App Search 将在 9.0 版本中停用&#xff0c;但 Elasticsearch 拥有你构建强大的 AI 搜索体验所需的一切。以下是你需要了解的内容。 生成式人工智能的最新进展正在改变用户行为&#xff0c;激励开发人员创造更具活力、更直观、更引人入…

社团管理新工具:SpringBoot框架

3系统分析 3.1可行性分析 通过对本社团管理系统实行的目的初步调查和分析&#xff0c;提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本社团管理系统采用SSM框架&#xff0c;JAVA作为开发语言&#…

Vue3 源码解析(三):静态提升

什么是静态提升 Vue3 尚未发布正式版本前&#xff0c;尤大在一次关于 Vue3 的分享中提及了静态提升&#xff0c;当时笔者就对这个亮点产生了好奇&#xff0c;所以在源码阅读时&#xff0c;静态提升也是笔者的一个重点阅读点。 那么什么是静态提升呢&#xff1f;当 Vue 的编译器…

8款Pytest插件助力Python自动化测试

当测试用例变得复杂&#xff0c;或者需要处理大量测试数据时&#xff0c;插件通过使测试更加简洁和结构化而变得非常有用。Python凭借其简洁性和多功能性&#xff0c;成为自动化测试的热门选择&#xff0c;而pytest是最广泛使用的测试框架之一。虽然pytest本身功能强大&#xf…

【spark-spring boot】学习笔记

目录 说明RDD学习RDD介绍RDD案例基于集合创建RDDRDD存入外部文件中 转换算子 操作map 操作说明案例 flatMap操作说明案例 filter 操作说明案例 groupBy 操作说明案例 distinct 操作说明案例 sortBy 操作说明案例 mapToPair 操作说明案例 mapValues操作说明案例 groupByKey操作说…

Spring Boot 3 集成 Spring Security(2)授权

文章目录 授权配置 SecurityFilterChain基于注解的授权控制自定义权限决策 在《Spring Boot 3 集成 Spring Security&#xff08;1&#xff09;》中&#xff0c;我们简单实现了 Spring Security 的认证功能&#xff0c;通过实现用户身份验证来确保系统的安全性。Spring Securit…

Apache OFBiz xmlrpc XXE漏洞(CVE-2018-8033)

目录 1、漏洞描述 2、EXP下载地址 3、EXP利用 1、漏洞描述 Apache OFBiz是一套企业资源计划&#xff08;ERP&#xff09;系统。它提供了广泛的功能&#xff0c;包括销售、采购、库存、财务、CRM等。 Apache OFBiz还具有灵活的架构和可扩展性&#xff0c;允许用户根据业务需求…

【Android】ARouter的使用及源码解析

文章目录 简介介绍作用 原理关系 使用添加依赖和配置初始化SDK添加注解在目标界面跳转界面不带参跳转界面含参处理返回结果 源码基本流程getInstance()build()navigation()_navigation()Warehouse ARouter初始化init帮助类根帮助类组帮助类 completion 总结 简介 介绍 ARouter…

springboot整合hive

springboot整合hive pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.…

IntelliJ IDEA 中,自动导包功能

在 IntelliJ IDEA 中&#xff0c;自动导包功能可以极大地提高开发效率&#xff0c;减少手动导入包所带来的繁琐和错误。以下是如何在 IntelliJ IDEA 中设置和使用自动导包功能的详细步骤&#xff1a; 一、设置自动导包 打开 IntelliJ IDEA&#xff1a; 启动 IntelliJ IDEA 并打…

【MySQL课程学习】:MySQL安装,MySQL如何登录和退出?MySQL的简单配置

&#x1f381;个人主页&#xff1a;我们的五年 &#x1f50d;系列专栏&#xff1a;MySQL课程学习 &#x1f337;追光的人&#xff0c;终会万丈光芒 &#x1f389;欢迎大家点赞&#x1f44d;评论&#x1f4dd;收藏⭐文章 目录 MySQL在Centos 7环境下的安装&#xff1a; 卸载…

Easyexcel(7-自定义样式)

相关文章链接 Easyexcel&#xff08;1-注解使用&#xff09;Easyexcel&#xff08;2-文件读取&#xff09;Easyexcel&#xff08;3-文件导出&#xff09;Easyexcel&#xff08;4-模板文件&#xff09;Easyexcel&#xff08;5-自定义列宽&#xff09;Easyexcel&#xff08;6-单…

(计算机网络)期末

计算机网络概述 物理层 信源就是发送方 信宿就是接收方 串行通信--一次只发一个单位的数据&#xff08;串行输入&#xff09; 并行通信--一次可以传输多个单位的数据 光纤--利用光的反射进行传输 传输之前&#xff0c;要对信源进行一个编码&#xff0c;收到信息之后要进行一个…

uniapp跨域问题解决方案

uniapp跨域问题解决方案 引言 在使用 uni-app 本地开发 H5> 平台时&#xff0c;需要使用浏览器进行调试&#xff0c;而浏览器会有跨域的问题。比如直接通过本地IP地址去访问开发中的页面&#xff0c;同时这个页面会调一些现有的接口时&#xff0c;就面临着跨域的问题。 解决…

Android 基于Camera2 API进行摄像机图像预览

前言 近期博主准备编写一个基于Android Camera2的图像采集并编码为h.264的应用&#xff0c;准备分为三个阶段来完成&#xff0c;第一阶段实现Camera2的摄像机预览&#xff0c;第二阶段完成基于MediaCodec H.264编码&#xff0c;第三阶段完成基于MediaCodec H.264解码,针对不同…

设计模式:11、迭代器模式(游标)

目录 0、定义 1、迭代器模式的四种角色 2、迭代器模式的UML类图 3、示例代码 4、迭代器的next()方法与集合的get(int index)方法的效率对比&#xff08;LinkedList为例&#xff09; 0、定义 提供一种方法顺序访问一个聚合对象中的各个元素&#xff0c;而又不需要暴露该对象…

UE5连接VR(pico,quest)进行PC VR开发(没有废话全是干货)

一、PICO VR连接UE 首先picoVR&#xff0c;不管是pico neo3还是pico4&#xff0c;用到的软件就只有三个 分别是pico互联助手PICO 互联 | PICO (picoxr.com)、steam VR&#xff0c;虚幻引擎5 pico互联助手 在pico互联助手中你需要选择两种连接方式&#xff08;推荐USB连接&a…

《UnityShader 入门精要》更复杂的光照

代码&示例图见&#xff1a;zaizai77/Shader-Learn: 实现一些书里讲到的shader 到了这里就开启了书里的中级篇&#xff0c;之后会讲解 Unity 中的渲染路径&#xff0c;如何计算光照衰减和阴影&#xff0c;如何使用高级纹理和动画等一系列进阶内容 Unity 中的渲染路径 在U…

用nextjs开发时遇到的问题

这几天已经基本把node后端的接口全部写完了&#xff0c;在前端开发时考虑时博客视频类型&#xff0c;考虑了ssr&#xff0c;于是选用了nextJs&#xff0c;用的是nextUi,tailwincss,目前碰到两个比较难受的事情。 1.nextUI个别组件无法在服务器段渲染 目前简单的解决方法&…