git 语法学习小记

这篇具有很好参考价值的文章主要介绍了git 语法学习小记。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、基础:git commit、git branch、git merge、git rebase

//创建新的提交记录
git commit
//创建新的分支(如图1)
git branch newImage
git checkout newImage;git commit

合并分支法一:

//如图2,把 【bugFix】 合并到 main 里
git merge bugFix   (前者,带星号)
//把【main】 分支合并到 bugFix
git checkout bugFix;git merge main

合并分支法二:

//把 bugFix 分支里的工作直接移到 【main】 分支上,图3
git rebase main  (后者,无星号)
//把main分支rebase到【bugFix】
git rebase bugFix

练习(6步?)

git branch bugFix;
git checkout bugFix;git commit;
git checkout main;git commit;(切换出两条分支) 
git checkout bugFix;git rebase main。

2、高级:分离HEAD、相对引用^、相对引用2~(可强制移动分支)、撤销变更

HEAD指向正在进行工作的提交记录,通过指向分支名——通过cat .git/HEAD、git symbolic-ref HEAD查看HEAD指向。(HEAD指向本身)

git checkout C1;   //由HEAD->main->C1,变成HEAD->C1
# git checkout main;git commit; git checkout C2

git log查看提交记录的哈希值,使用^向上移动一个提交记录,~2或n向上移动多个提交记录;

main相当于main的父节点,main^相当于main的第二个父节点。(HEAD指向上一级)

git checkout bugFix^
git checkout bugFix~3
#  !!! 移动分支:-f让分支指向另一个提交。以下将main分支强制指向HEAD的第3级父提交。
git branch -f main HEAD~3

练习:

git branch -f bugFix HEAD~2;
git branch -f main C6;
git checkout HEAD^
#退回上一个(删去C2,保留C1)——本地分支
git reset HEAD~1
#引入C2'相当于C1的状态——远程分支
git revert HEAD

3、移动提交:自由修改提交树——git cherry-pick、交互式rebase

//(1)已知提交记录的哈希值
git cherry-pick C2 C6 C4
//(2)未知哈希值,有一系列的提交记录。使用带参数--interactive的rebase命令,简写为-i;UI窗口用VIM打开。
git  rebase -i HEAD~4

备注:鼠标拖放调整顺序,(omit)切换 pick 的状态删除提交,合并提交(暂不支持)。

4、杂项:Git技术、技巧与贴士大集合——只取一个提交记录、提交的技巧#1/2、git tag、git describe。

(1)本地栈式提交

# main分支得到bugFix的相关提交
git rebase -i HEAD~3;
git cherry-pick;

(2)提交的技巧1

#相当于上次提交错误的信息被覆盖了,重新加了个信息(C'')
git commit --amend

5、级话题:多次rebase、两个父节点、纠缠不清的分支

(1)多分支rebase(4条?)

git checkout bugFix
git rebase main
git checkout side
git rebase bugFix
git checkout another
git rebase side
git branch -f main another

备注:HEAD大写,其他git命令小写。使用undo和reset可以恢复原样。文章来源地址https://www.toymoban.com/news/detail-609335.html

到了这里,关于git 语法学习小记的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 后端框架flask学习小记

    最近在和几个伙伴尝试搭建一个新闻推荐系统, 算是一个推荐算法的实战项目, 里面涉及到了前后端交互, 该项目里面,使用了Flask作为后台框架, 为了理清楚整个系统的交互,所以就快速参考着资料学习了下flask, 主要还是参考伙伴们写的flask简介和基础的内容, 加上了

    2023年04月27日
    浏览(47)
  • Java学习小记——多线程&Socket编程

    在创建一个线程时存在一定的开销,创建线程的开销相比于一般的算法来说较大。首先需要建立一个调用栈,接着操作系统还需要建立很多数据结构来维护线程的状态等等。为了解决每次都需要临时创建线程带来开销的问题,引入了线程池。 线程池会预先建立好线程,等待任

    2024年02月20日
    浏览(25)
  • conda学习小记(conda虚拟环境构建和常见命令)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 Conda是用Python语言开发,但能管理其他编程语言的项目,包括多语言项目。conda属于Anaconda中的一个包。Conda 是一个运行在 Windows、macOS 和 Linux 上的开源包管理系统和环境管理系统。Conda 可以快速安装、运

    2024年02月02日
    浏览(40)
  • 一台 ZXHN F650(GPON ONU) 学习小记

    设备类型 天翼网关 生产厂家 ZTE中兴 设备型号 ZXHN F650(GPON ONU) 设备标识号 ECF0FE-46841ECF0FE3F8E00 硬件版本 V3.0 软件版本 V2.0.3P2T12 区域码信息 区域码配置正常 在用设备, 计划进入 telnet 了解工作情况, 目的,可以更改 设备工作 地区,更改SN MAC 相关信息。 普通用户  user 密码

    2024年02月04日
    浏览(25)
  • 业务建模学习笔记(1)——CBF Studio和行业建模标准小记

      在解答标题内容前,需要了解传统业务需求的提出到落地的实施过程。一般来说它分为以下几个阶段: 业务人员提出需求 IT人员根据需求进行设计 设计完成后交付测试中心进行部署测试 测试通过后交付数据中心进行部署投产   在未来这样的实施过程会发生一些变化,

    2024年02月13日
    浏览(37)
  • 【算法小记】深度学习——循环神经网络相关原理与RNN、LSTM算法的使用

    文中程序以Tensorflow-2.6.0为例 部分概念包含笔者个人理解,如有遗漏或错误,欢迎评论或私信指正。 卷积神经网络在图像领域取得了良好的效果,卷积核凭借优秀的特征提取能力通过深层的卷积操作可是实现对矩形张量的复杂计算处理。但是生活中除了图像这样天然以矩阵形

    2024年01月25日
    浏览(55)
  • 【算法小记】——机器学习中的概率论和线性代数,附线性回归matlab例程

    内容包含笔者个人理解,如果错误欢迎评论私信告诉我 线性回归matlab部分参考了up主DR_CAN博士的课程 在回归拟合数据时,根据拟合对象,可以把分类问题视为一种简答的逻辑回归。在逻辑回归中算法不去拟合一段数据而是判断输入的数据是哪一个种类。有很多算法既可以实现

    2024年01月24日
    浏览(45)
  • 神经网络学习小记录73——Pytorch CA(Coordinate attention)注意力机制的解析与代码详解

    CA注意力机制是最近提出的一种注意力机制,全面关注特征层的空间信息和通道信息。 Github源码下载地址为: https://github.com/bubbliiiing/yolov4-tiny-pytorch 复制该路径到地址栏跳转。 该文章的作者认为现有的注意力机制(如CBAM、SE)在求取通道注意力的时候,通道的处理一般是采

    2024年02月06日
    浏览(46)
  • uni-app学习小记--问题1-Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-

    问题描述: Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js): 问题原因: 代码中存在语法错误,譬如说多了某个符号,或者引用的双引号中置空等; 解决方法: v-model中不可以置空,此问题首先定位问题页面,其次检查语法;  

    2024年04月25日
    浏览(101)
  • RTT学习笔记12-KConfig 语法学习

    KConfig 语法学习 RTT 官方教程 https://www.rt-thread.org/document/site/#/development-tools/build-config-system/Kconfig

    2024年02月14日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包