Git命令详解
1 常用命令
1)初始化本地仓库
git init <directory>
是可选的,如果不指定,将使用当前目录。
2)克隆一个远程仓库
git clone <url>
3)添加文件到暂存区
git add <file>
要添加当前目录中的所有文件,请使用 . 代替,代码如下:
git add .
4)提交更改
git commit -m "<message>"
如果要添加对跟踪文件所做的所有更改并提交。
git commit -a -m "<message>"
5)从暂存区删除一个文件
git reset <file>
6)移动或重命名文件
git mv <current path> <new path>
7)从存储库中删除文件
git rm <file>
也可以仅使用 --cached 标志将其从暂存区中删除
git rm --cached <file>
8)显示分支
git branch
有用的标志:
- -a:显示所有分支(本地和远程)
- -r:显示远程分支
- -v:显示最后一次提交的分支
9)创建一个分支
git branch <branch>
可以创建一个分支并使用 checkout 命令切换到它。
git checkout -b <branch>
10)切换到一个分支
git checkout <branch>
11)删除一个分支
git branch -d <branch>
还可以使用 -D 标志强制删除分支。
git branch -D <branch>
12)合并分支
git merge <branch to merge into HEAD>
有用的标志:
- --no-ff:即使合并解析为快进,也创建合并提交
- --squash:将指定分支中的所有提交压缩为单个提交
快进合并
非快进合并
建议不要使用 --squash 标志,因为它会将所有提交压缩为单个提交,从而导致提交历史混乱。
13)变基分支
变基是将一系列提交移动或组合到新的基本提交的过程。
git rebase <branch to rebase from>
14)查看之前的提交
git checkout <commit id>
15)恢复提交
git revert <commit id>
16)重置提交
git reset <commit id>
还可以添加 --hard 标志来删除所有更改,但请谨慎使用。
git reset --hard <commit id>
17)查看存储库的状态
git status
18)显示提交历史
git log
19)显示对未暂存文件的更改
git diff \
还可以使用 --staged 标志来显示对暂存文件的更改。
git diff --staged
20)显示两次提交之间的变化
git diff <commit id 01> <commit id 02>
21)存储更改
stash 允许您在不提交更改的情况下临时存储更改。
git stash
还可以将消息添加到存储中。
git stash save "<message>"
22)列出存储
git stash list
23)申请一个藏匿处
应用存储不会将其从存储列表中删除。
git stash apply <stash id>
如果不指定,将应用最新的 stash(适用于所有类似的 stash 命令)
还可以使用格式 stash@{} 应用存储(适用于所有类似的存储命令)
git stash apply stash@{0}
24)删除一个藏匿处
git stash drop <stash id>
25)删除所有藏匿处
git stash clear
26)应用和删除存储
git stash pop <stash id>
27)显示存储中的更改
git stash show <stash id>
28)添加远程仓库
git remote add <remote name> <url>
29)显示远程仓库
git remote
添加 -v 标志以显示远程存储库的 URL。
git remote -v
30)删除远程仓库
git remote remove <remote name>
31)重命名远程存储库
git remote rename <old name> <new name>
32)从远程存储库中获取更改
git fetch <remote name>
33)从特定分支获取更改
git fetch <remote name> <branch>
34)从远程存储库中拉取更改
git pull <remote name> <branch>
35)将更改推送到远程存储库
git push <remote name>
36)将更改推送到特定分支
git push <remote name> <branch>
以上命令中,[tag name]是标签名称。
注:标签名称不能与分支名冲突。
2 误删除恢复
在使用GitLab命令行时,可能会不小心误删除文件或目录。在Git中,误删除文件和目录的情况是比较普遍的。下面是一些处理误删除的命令:
# 恢复删除的文件
git checkout [file name]# 恢复删除的目录
git checkout [dir name/]# 恢复删除的所有文件和目录
git checkout .
3 基本 Git 概念
- 默认分支名称:main
- 默认远程名称:origin
- 当前分支参考:HEAD
- HEAD 的父级:HEAD^ 或 HEAD~1
- HEAD 的祖父母:HEAD^^ 或 HEAD~2
相关文章:

Git命令详解
1 常用命令 1)初始化本地仓库 git init <directory> 是可选的,如果不指定,将使用当前目录。 2)克隆一个远程仓库 git clone <url> 3)添加文件到暂存区 git add <file> 要添加当前目录中的所…...

【STM32RT-Thread零基础入门】 4. 线程介绍(理论)
文章目录 前言一、线程的概念二、线程的调度三、上下文切换四、线程的重要属性1. 线程栈2. 线程的状态3. 线程优先级4. 线程时间片5. 线程的入口函数 五、RT-Thread命令查看系统线程信息总结 前言 前文中的最后一个任务发现,一个main()函数很难同时实现按键功能和闪…...

css学习3(三种样式表与样式控制优先级)
1、外部样式表:当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用 <link> 标签链接到样式表,也要放到<head>中。 2、外部…...
【JS深层解析】内存
前言 接触过 C 语言的小伙伴应该了解:C语言拥有底层最原始的内存管理办法,例如:malloc() 和 free()方法,它们被开发者用来从操作系统中分配和释放内存。 然而在JavaScript这门语言中,当我们创建了一个东西(可以被读写、传递的数据),浏览器中的 js 引擎会根据创建这个…...
第二章:25+ Python 数据操作教程(第十四节NUMPY 教程与练习)
NumPy(“Numerical Python”或“Numeric Python”的缩写)是 Python 中对数组和矩阵进行快速数学计算的最基本的软件包之一。在处理多维数据时它也非常有用。集成C、C++和FORTRAN工具是一件幸事。它还提供了许多傅里叶变换 (FT) 和线性代数函数。 为什么使用 NumPy 而不是列…...

Pycharm与Anaconda Python的开发环境搭建
目录 一:下载 二:安装python 三:设置Pycharm 一:下载 下载Anaconda: Anaconda | The World’s Most Popular Data Science Platform 安装好以后,设置一下环境变量: 打开命令行,…...

2.创建小程序
创建 在开发工具中,选择小程序,点击加号 填写小程序信息,模板使用的是TS+Sass 编辑器的工作区 目录结构 项目使用的是ts的模板,目录结构和js的有一点差异,目录结构如下: miniprogram:小程序根目录 —pages:小程序页面目录 ——xxx:页面目录,一个页面对应一个目…...

XenDesktop5.6如何连接数据库
Citrix在数据库的连接方式上一直不统一,但是也还是有迹可循的。 经过了好长时间的下载以后,今天终于有时间来测试一下最新版本的XenDesktop 5 SP1,由于结合了其他组件和环境的需要,所以,选择了独立部署数据库…...

OAuth2.0一 Spring Security OAuth2.0
这里主讲OAuth2.0 学习OAuth2前提: 掌握Spring Security Spring Security学习 一 OAuth2.0介绍 OAuth(Open Authorization)是一个关于授权(authorization)的开放网络标准,允许用户授权第三方应用访问他们…...
【linux】kernel编译时相关报错
文章目录 1. 问题现象及解决方式1. cc1: error: code model kernel does not support PIC mode 1. 问题现象及解决方式 1. cc1: error: code model kernel does not support PIC mode 问题:编译module时报错 原因:未指定交叉编译器,导致默认…...

C语言 功能型API --------------------strcat()
NAME strcat, strncat - concatenate two strings 头文件 SYNOPSIS #include <string.h> 函数原型: char *strcat(char *dest, const char *src); 功能: 在字符串dest的末尾将字符串src拼接上去 #include <stdio.h> #inc…...

企业展示小程序搭建指南
如今,移动互联网的快速发展,为企业展示提供了更多元化的方式。除了传统的宣传手段,企业还可以借助小程序来展示自己的实力和产品。本文将为大家介绍一种简单的DIY小程序的方法,让企业能够快速打造自己的展示平台。 首先࿰…...

大模型技术实践(一)|ChatGLM2-6B基于UCloud UK8S的创新应用
近半年来,通过对多款主流大语言模型进行了调研,我们针对其训练方法和模型特点进行逐一分析,方便大家更加深入了解和使用大模型。本文将重点分享ChatGLM2-6B基于UCloud云平台的UK8S实践应用。 01各模型结构及特点 自从2017年6月谷歌推出Transf…...

Flink状态和状态管理
1.什么是状态 官方定义:当前计算流程需要依赖到之前计算的结果,那么之前计算的结果就是状态。 这句话还是挺好理解的,状态不只存在于Flink,也存在生活的方方面面,比如看到一个认识的人,如何识别认识呢&am…...

【3Ds Max】布料命令的简单使用
简介 在3ds Max中,"布料"(Cloth)是一种模拟技术,用于模拟物体的布料、织物或软体的行为,例如衣物、帆布等。通过应用布料模拟,您可以模拟出物体在重力、碰撞和其他外力作用下的变形和动态效果。…...

用 VB.net,VBA 两种方式 读取单元格内的 换行数据,并出力到 CSV文件
用 VB.net,VBA 两种方式 读取单元格内的 换行数据,并出力到 CSV文件 需求 如下图所示,为了生成csv文件导入数据库,需要将下图 的 1 和 2 拼接成 如下 3 所示的一行数据, 开头为 1 ,往后为 2 的换行数据 将换…...

kafka线上问题优化
如何防止消息丢失 生产者: 使用同步发送把ack设成1或者all(非0,0可能会出现消息丢失的情况),并且设置同步的分区数>2 消费者:把自动提交改成手动提交 如何防止重复消费 在防止消息丢失的方案中&#…...
FifthOne:用于矢量搜索的计算机视觉接口
一、说明 数据太多了。数据湖和数据仓库;广阔的像素牧场和充满文字的海洋。找到正确的数据就像大海捞针一样!如果你喜欢开源机器学习库 FiftyOne,矢量搜索引擎通过将复杂数据(图像的原始像素值、文本文档中的字符)转换为称为嵌入矢…...
认识Axios
axios中文网 一. 为什么会诞生Axios 最初浏览器页面向服务器请求数据时,返回的是整个页面,整个页面都会刷新ajax的出现,它可以在页面无刷新的情况下请求数据原生的XMLHttpRequest,jQuery封装的ajax,以及axios都可以实…...

系统架构设计专业技能 · 信息安全技术
系列文章目录 系统架构设计专业技能 网络技术(三) 系统架构设计专业技能 系统安全分析与设计(四)【系统架构设计师】 系统架构设计高级技能 软件架构设计(一)【系统架构设计师】 系统架构设计高级技能 …...
Vim 调用外部命令学习笔记
Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...

linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...

MySQL的pymysql操作
本章是MySQL的最后一章,MySQL到此完结,下一站Hadoop!!! 这章很简单,完整代码在最后,详细讲解之前python课程里面也有,感兴趣的可以往前找一下 一、查询操作 我们需要打开pycharm …...
Python网页自动化Selenium中文文档
1. 安装 1.1. 安装 Selenium Python bindings 提供了一个简单的API,让你使用Selenium WebDriver来编写功能/校验测试。 通过Selenium Python的API,你可以非常直观的使用Selenium WebDriver的所有功能。 Selenium Python bindings 使用非常简洁方便的A…...

Axure 下拉框联动
实现选省、选完省之后选对应省份下的市区...