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

 

 

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

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

相关文章

Open3D 最小二乘拟合平面(SVD分解法)

目录 一、算法原理二、代码实现三、结果展示1、点云2、拟合结果四、优秀博客本文由CSDN点云侠原创,原文链接。爬虫网站自重。 一、算法原理 本文实现矩阵奇异值分解方法的最小二乘拟合平面。原理如下: 对于得到的 n n

在Visual Studio上,使用OpenCV实现人脸识别

1. 环境与说明 本文介绍了如何在Visual Studio上&#xff0c;使用OpenCV来实现人脸识别的功能 环境说明 : 操作系统 : windows 10 64位Visual Studio版本 : Visual Studio Community 2022 (社区版)OpenCV版本 : OpenCV-4.8.0 (2023年7月最新版) 实现效果如图所示&#xff0…

【BASH】回顾与知识点梳理(三十一)

【BASH】回顾与知识点梳理 三十一 三十一. 进程的管理31.1 给进程发送讯号kill -signal PIDlinux系统后台常驻进程killall -signal 指令名称 31.2 关于进程的执行顺序Priority 与 Nice 值nice &#xff1a;新执行的指令即给予新的 nice 值renice &#xff1a;已存在进程的 nice…

uniapp微信小程序消息订阅快速上手

一、微信公众平台小程序开通消息订阅并设置模板 这边的模板id和详细内容后续前后端需要使用 二、uniapp前端 需要是一个button触发 js&#xff1a; wx.getSetting({success(res){console.log(res)if(res.authSetting[scope.subscribeMessage]){// 业务逻辑}else{uni.request…

软考A计划-系统集成项目管理工程师-法律法规-上

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列点击跳转>蓝桥系列 &#x1f449;关于作者 专注于Android/Unity和各种游…

HLK-LD105/2410B/2420模块测试

HLK105/2410B/2420模块测试 &#x1f4cc;模块资料地址&#xff1a;https://h.hlktech.com/Mobile/download &#x1f33f;HLK-LD105模块&#xff1a; 10G微波雷达 &#x1f33f;HLK-LD2420-24G&#xff1a;24G毫米波雷达 &#x1f33f;HLK-LD2410B-24G&#xff1a;24…

stm32红绿灯源代码示例(附带Proteus电路图)

本代码不能直接用于红路灯&#xff0c;只是提供一个思路 #include "main.h" #include "gpio.h" void SystemClock_Config(void); void MX_GPIO_Init(void) {GPIO_InitTypeDef GPIO_InitStruct {0};/* GPIO Ports Clock Enable */__HAL_RCC_GPIOB_CLK_ENAB…

webshell绕过

文章目录 webshell前置知识进阶绕过 webshell 前置知识 <?phpecho "A"^""; ?>运行结果 可以看到出来的结果是字符“&#xff01;”。 为什么会得到这个结果&#xff1f;是因为代码的“A”字符与“”字符产生了异或。 php中&#xff0c;两个变…

MTK Android非常用分辨率修改充电动画

非标准分辨率的屏,配置MTK Android的关机充电动画. 环境 芯片 MTK 系统 Android 服务器 ubuntu 屏幕分辨率356*400,不是常见的分辨率. 原始充电动画显示异常,画面扭曲. 方法 确定使用的图片 vendor/mediatek/proprietary/bootable/bootloader/lk/dev/logo 这个目录下…

[GitOps]微服务版本控制:使用ArgoCD 部署Grafana Loki

背景介绍 请回答&#xff1a;你们是如何保证线上部署的服务&#xff0c;从服务版本到参数配置&#xff0c;都是和测试通过的版本是一致的呢&#xff1f; 本文将介绍GitOps的基本原理以及ArgoCD的使用&#xff1a;ArgoCD部署Grafana Loki 到k8s集群。 本文项目地址&#xff1…

Hugging News #0814: Llama 2 学习资源大汇总

每一周&#xff0c;我们的同事都会向社区的成员们发布一些关于 Hugging Face 相关的更新&#xff0c;包括我们的产品和平台更新、社区活动、学习资源和内容更新、开源库和模型更新等&#xff0c;我们将其称之为「Hugging News」。本期 Hugging News 有哪些有趣的消息&#xff0…

06_布隆过滤器BloomFilter_副本

06——布隆过滤器BloomFilter 一、是什么 由一个初始值都为零的bit数组和多个哈希函数构成&#xff0c;用来快速判断集合中是否存在某个元素 设计思想&#xff1a; 1. 目的&#xff1a;减少内存占用 1. 方式&#xff1a;不保存数据信息&#xff0c;只是在内存中做一个是否存…

类之间的比较

作者简介&#xff1a; zoro-1&#xff0c;目前大一&#xff0c;正在学习Java&#xff0c;数据结构等 作者主页&#xff1a; zoro-1的主页 欢迎大家点赞 &#x1f44d; 收藏 ⭐ 加关注哦&#xff01;&#x1f496;&#x1f496; 类之间的比较 固定需求式比较器 固定需求式 通过…

css学习2(利用id与class修改元素)

1、id选择器可以为标有特定id的html元素指定特定的样式。 2、选择器以#开头&#xff0c;后跟某id的属性值。 3、class选择器用于描述一组元素的样式&#xff0c;class可以在多个元素使用。 4、类选择器用.选择。 5、指定特定的元素使用class。 6、元素的多个类用空格分开&…

若依项目的介绍(前后端分离版本)

目录 一、若依介绍 &#xff08;一&#xff09;简单介绍 &#xff08;二&#xff09;若依版本 &#xff08;三&#xff09;Git远程拉取步骤 二、项目的技术介绍 &#xff08;一&#xff09;后端技术 1.spring boot 2.Spring Security安全控制 3.MyBatis 4.MySQL和R…

npm install ffi各种失败,换命令npm i ffi-napi成功

网上各种帖子安装ffi&#xff0c;基本上到了windows build tools这里会卡住。 使用命令npm install --global --production windows-build-tools 安装报错信息如下&#xff1a; PS E:\codes\nodejsPath\tcpTest> npm install --global --production windows-build-tools …

超声波传感器(HC-SR04)按时序图手撕驱动

目录 1、简介 2、传感器介绍 2.1 引脚介绍 2.2 时序图介绍 3、 需求与接线 3.1 任务需求 3.2 接线 4、Cubemax配置 4.1 SYS配置 4.2 RCC配置 4.3 时钟树配置 4.4 GPIO初始化 4.5 定时器配置 4.6 生成代码 5、 keil端代码编写 5.1 微妙函数封装 5.2 超声波驱动封装…

html | 基于iframe的简易富文本编辑器

效果图 支持: 选中后 ctrlI 斜体 代码 思路就是在iframe种嵌套html和css。 <pre> - 支持: 选中后 ctrlI 斜体 - todo: 鼠标实现单击斜体 </pre> <iframe name"richedit" style"height:30%; width:100%;"></iframe><script…

【论文解读】Hybrid-SORT: Weak Cues Matter for Online Multi-Object Tracking

因为Hybrid-SORT的baseline是基于OCSORT进行改进的&#xff0c;在这之前建议先了解byteTrack和【】的相关知识 1.介绍 1.1 基本框架 多目标跟踪(MOT)将问题分为两个子任务。第一个任务是检测每个帧中的对象。第二个任务是将它们在不同的框架中联系起来。关联任务主要通过显式…

回归预测 | MATLAB实现CSO-SVM布谷鸟优化算法优化支持向量机多输入单输出回归预测(多指标,多图)

回归预测 | MATLAB实现CSO-SVM布谷鸟优化算法优化支持向量机多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#xff09; 目录 回归预测 | MATLAB实现CSO-SVM布谷鸟优化算法优化支持向量机多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#xff09;效果一…