【Git】Git基础命令操作速记

news2024/10/6 22:34:02

【Git】Git基础命令操作速记

文章目录

  • 【Git】Git基础命令操作速记
    • 1. 初始化
      • 1.1 设置用户名和邮箱
      • 1.2 初始化仓库
    • 2. 基础命令
      • 2.1 add和commit
      • 2.2 reset
      • 2.3 查看日志
      • 2.4 删除/找回本地仓库文件
      • 2.5 找回暂存区文件
      • 2.6 diff命令(找不同)
    • 3. 分支命令
      • 3.1 查看分支
      • 3.2 创建分支
      • 3.3 切换分支
      • 3.4 合并冲突
    • 4. 远程操作
      • 4.1 创建远程仓库别名
      • 4.2 push操作
      • 4.3 clone操作
      • 4.4 pull操作
        • 4.4.1 fetch操作
        • 4.4.2 merge操作
      • 4.5 协同开发冲突问题解决

1. 初始化

1.1 设置用户名和邮箱

设置用户名命令及邮箱:

git config --global user.name "xxx"
git config --global user.email "xxx@xx.com"

查看用户名命令:

git config user.name
git config user.email

1.2 初始化仓库

初始化仓库:

git init

2. 基础命令

2.1 add和commit

在目录当中创建一个Demo.text文件,将他提交到暂存区中:

git add Demo.txt

将暂存区当中的文件添加到本地仓库:

git commit -m "第一次提交 Demo.txt" Demo.txt
  • -m:m表示message,给本次提交添加备注信息

2.2 reset

reset命令:前进或者后退历史版本。

git reset --hard 索引

参数含义:

  • --hard 参数,本地仓库的指针移动的同时,重置暂存区和工作区。
  • --mixed 参数,本地仓库的指针移动的同时,重置暂存区,但是工作区不动。
  • -soft 参数,本地仓库的指针移动的同时,暂存区和工作区都不动。

2.3 查看日志

git reflog

2.4 删除/找回本地仓库文件

1)将文件从工作区删除。

2)将删除操作同步到暂存区中。

git add Test2.txt

3)将删除操作同步到本地仓库中。

git commit -m "删除Test2.txt" Test2.txt

4)查看日志,发现并没有将原来的添加操作删除,而是直接新增了一个“删除Test2.txt”信息。

5)找回本地仓库删除文件实际上就是将历史版本切换到存在这个文件的版本。


2.5 找回暂存区文件

此时状态就是工作区和暂存区的文件都删除了,但是本地仓库还有对应的该文件。此时我们想恢复暂存区当中的文件该怎么办?

1)将指针指向有该对应文件的版本(可以自己指向自己)

git reset --hard 索引

2.6 diff命令(找不同)

git是按照行为单位管理数据。

比较工作区暂存区的不同。

//某个文件的不同
git diff 文件名
//多个文件的不同
git diff 文件名1 文件名2 ......
//所有文件的不同
git diff

比较本地仓库暂存区的不同。

git diff 索引 文件名

3. 分支命令

3.1 查看分支

查看所有分支的信息:

git branch -v

3.2 创建分支

git branch branch01

3.3 切换分支

git checkout branch01

3.4 合并冲突

当我们有两个分支branch01和master时,branch01和master的版本不同,如果合并则会发生冲突,此时就需要我们想办法合并冲突。

1)制造冲突,合并branch01和master(切换到master分支上):

git merge branch01

image-20231106231558072

2)查看Test1.txt文件的内容:

image-20231106231800679

3)决定留下哪些内容:

image-20231106231915391

4)将工作区内容添加到暂存区中:

image-20231106232057800

5)将暂存区内容提交到本地仓库:

git commit -m "解决了冲突问题"

注意:这条命令不能加文件名,否则会报错。执行完成后就自动取消了合并状态。


4. 远程操作

4.1 创建远程仓库别名

查看别名:

git remote -v

起别名:

git remote add origin https://gitee.com/xxx/xxx.git
  • origin 表示远程仓库别名

4.2 push操作

git push origin master
  • origin 是远程库的别名
  • master 是远程库的分支名,如果远程库不存在该库则会自动创建

4.3 clone操作

git clone url地址

克隆操作可以帮我们完成:

  1. 初始化本地仓库
  2. 将远程仓库内容完全克隆到本地
  3. 替我们创建远程仓库的别名

4.4 pull操作

pull操作相当于fetch操作 + merge操作。将远程库origin的master拉取过来。

git pull origin master
4.4.1 fetch操作

将远程库中的内容fetch到本地仓库的主分支当中。

git fetch origin master

在抓取操作执行后,只是将远程库的内容下载到本地,但是工作区中的文件并没有更新。工作区当中的内容不变。


4.4.2 merge操作

经过上一次的fetch操作之后,我们就可以进行合并/merge操作了。

git merge origin/master

4.5 协同开发冲突问题解决

  1. 当push操作发生冲突时,我们首先pull远程仓库代码到本地
  2. 在本地解决冲突
  3. 冲突解决后,操作从 3.4 第三步开始继续执行
  4. 最后push结果到远程仓库

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

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

相关文章

深度学习之基于YoloV5的火灾检测系统

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 火灾检测系统基于YoloV5的介绍 火灾检测是一项重要的安全任务,它旨在及时发现和报警火灾风险。基于深度…

postgresql|数据库|提升查询性能的物化视图解析

前言: 我们一般认为数字的世界是一个虚拟的世界,OK,但我们其实有些需求是和现实世界一模一样的,比如,数据库尤其是关系型数据库,希望在使用的数据库能够更快(查询速度),…

《008.Springboot+vue之自习室选座系统》

[火]《008.Springbootvue之自习室选座系统》 项目简介 [1]本系统涉及到的技术主要如下: 推荐环境配置:DEA jdk1.8 Maven MySQL 前后端分离; 后台:SpringBootMybatisredis; 前台:vueElementUI; [2]功能模块展示: 前端…

云端生成式 AI – 基于 Amazon EKS 的 Stable Diffusion 图像生成方案

Stable Diffusion 是当下生成式 AI 领域最受欢迎的开源多模态语言-图像模型,由于其易用的接口和良好的使用体验,受到了开源社区和广大设计行业从业者的追捧。Stable Diffusion 模型版本正在快速迭代,并带动了各行各业的生产力变革。目前市场上…

vmware16.1.2安装 windows7后 VMVMware tools 灰色 需要手动安装操作详情

问题1: 问题描述: 在Windows7镜像安装完成后,安装"VMware Tools"时出现:安装程序无法继续,需要将操作系统更新到SP1.2 重新安装后也没办法解决。 证明问题没有出在操作系统上;那么&#xff0c…

RISC Zero的Bonsai证明服务

1. 引言 Bonsai为通用ZKP网络,其支持任意链、任意协议、以及任意应用,利用ZKP来扩容、隐私和互操作。Bonsai的目标是为每条链都提供无限计算的能力。 借助Bonsai,可仅需数天的开发,即可实现对以太坊、L1链、Cosmos app链、L2 ro…

Mybatis-Plus使用Wrapper自定义SQL

文章目录 准备工作Mybatis-Plus使用Wrapper自定义SQL注意事项目录结构如下所示domain层Controller层Service层ServiceImplMapper层UserMapper.xml 结果如下所示:单表查询条件构造器单表查询,Mybatis-Plus使用Wrapper自定义SQL联表查询不用,My…

Java进击框架:Spring-数据存取(七)

Java进击框架:Spring-数据存取(七) 前言事务管理声明式事务管理 DAO支持JDBC的数据访问使用JdbcTemplate控制数据库连接JDBC批处理操作封装 SQL 语句中的参数 使用R2DBC进行数据访问对象关系映射(ORM)数据访问HibernateJPA XML模式 前言 参考…

目标检测算法 - YOLOv1

文章目录 1. 作者简介2. 目标检测综述3. YOLOv1算法3.1 预测阶段3.2 预测阶段后处理3.3 训练阶段 YOLO的全称是you only look once,指只需要浏览一次就可以识别出图中的物体的类别和位置。 YOLO是目标检测模型。目标检测是计算机视觉中比较简单的任务,用…

10-26 maven配置

打开idea 打开setting 基于Idea创建idea项目 加载jar包:(一般需要自己去手动加入,本地仓库是没有的)

【HarmonyOS】HarmonyOS备案获取公钥和指纹

【关键字】 HarmonyOS应用、鸿蒙应用、元服务、应用备案 HarmonyOS应用在华为云等平台进行应用备案时,平台需要提供用公钥和签名指纹的信息,Android可以直接通过keystore或jks签名文件进行签名信息获取,HarmonyOS签名方式与Android不同&…

LangChain之关于RetrievalQA input_variables 的定义与使用

最近在使用LangChain来做一个LLMs和KBs结合的小Demo玩玩,也就是RAG(Retrieval Augmented Generation)。 这部分的内容其实在LangChain的官网已经给出了流程图。 我这里就直接偷懒了,准备对Webui的项目进行复刻练习,那么…

Spring Cloud - 手写 Gateway 源码,实现自定义局部 FilterFactory

目录 一、FilterFactory 分析 1.1、前置知识 1.2、分析源码 1.2.1、整体分析 1.2.2、源码分析 1.3、手写源码 1.3.1、基础框架 1.3.2、实现自定义局部过滤器 1.3.3、加参数的自定义局部过滤器器 一、FilterFactory 分析 1.1、前置知识 前面的学习我们知道&#xff0c…

云服务器搭建flink集群

文章目录 1.集群配置2.修改集群配置3. 访问Web UI4. 提交作业方式5.Yarn部署模式配置5.1 会话模式部署(Session Mode)5.2 单作业模式(Per-job Mode)5.3 应用模式部署(推荐)5.3.1 上传HDFS提交(推荐) 5.4 历…

SpringCloudAlibaba——Sentinel

Sentinel也就是我们之前的Hystrix,而且比Hystrix功能更加的强大。Sentinel是分布式系统的流量防卫兵,以流量为切入点,从流量控制、流量路由、熔断降级等多个维度保护服务的稳定性。 Sentinel采用的是懒加载,这个接口被访问一次&a…

爬取Elastic Stack采集的Nginx内容

以下是一个简单的Go语言爬虫程序,用于爬取Elastic Stack采集的Nginx内容。请注意,这只是一个基本的示例,实际使用时可能需要根据具体情况进行修改和扩展。 package mainimport ("fmt""net/http""io/ioutil" )…

高效接口重试机制的实现

实现一个高效的接口重试机制对于保证系统的稳定性和可靠性至关重要。在面对网络不稳定、服务端故障或者高负载的情况下,接口重试机制能够确保请求的成功执行,同时也需要保证在重试过程中不会造成额外的负担或不必要的延迟。本文将为您介绍高效接口重试机…

工业相机基本知识理解:靶面尺寸、像元尺寸、分辨率

1、靶面尺寸:由Sensor对角线长度表示,单位英寸,这里的1英寸16mm 2、像元尺寸:单个感光元件的大小,一般都是正方形,边长单位um 3、分辨率: Sensor长边像元数 Sensor短边像元数,俗称像…

220v插座led指示灯维修

由于220v是交流电,有反向电压的情况,而led反向通电的时候电阻无穷大,所以分压也无穷大,220v一导通就击穿,即使加了很大的电阻也没用,串联电阻只能作用于二极管正向的时候。 目前有两种方案: 方…

EM@解三角形@正弦定理@余弦定理

文章目录 abstract解三角形基本原理不唯一性 正弦定理直角三角形中的情形推广锐角三角形钝角情形 小结:正弦定理 余弦定理直角三角形中的情形非直角情形小结:余弦定理公式的角余弦形式 abstract 解直角三角形问题正弦定理和余弦定理的推导 对于非直角情形,都是直角情形的推广同…