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

【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.mzph.cn/news/134277.shtml

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

相关文章

ArcGIS Pro设置谷歌影像(无水印)

1 打开软件,命名工程文件,底图(Basemap)选择【天地图】。 2 点击【视图(View)】——>【目录面板(Catalog pane)】,在【门户(Portal)】中搜索【…

redis: 记录一次线上redis内存占用过大问题解决过程

引言 记录一次线上redis占用过大的排查过程,供后续参考 问题背景 测试同事突然反馈测试环境的web系统无法登陆,同时发现其他子系统也存在各类使用问题 排查过程 1、因为首先反馈的是测试环境系统无法登陆,于是首先去查看了登陆功能的报错…

Linux 进程控制

进程地址空间的收尾 task_struct有一个结构体成员叫mm_struct,也就是进程地址空间。 为什么要有进程地址空间:进程内存地址管理,保护物理内存,进行权限审查,从无序变有序,让我们从统一的视角看待进程代码…

ModuleNotFoundError: No module named ‘torchvision.models.utils‘

如图报错:No module named torchvision.models.utils解决方案:由于当前python环境高版本的torch, 代码用的是低版本的语法 将 from torchvision.models.utils import load_state_dict_from_url换成 from torch.hub import load_state_dict_fr…

数据结构与算法—插入排序选择排序

目录 一、排序的概念 二、插入排序 1、直接插入排序 直接插入排序的特性总结: 2、希尔排序 希尔排序的特性总结: 三、选择排序 1、直接选择排序 时间复杂度 2、堆排序—排升序(建大堆) 向下调整函数 堆排序函数 四、交换排序 1、冒泡排…

Elasticsearch:RAG vs Fine-tunning (大语言模型微调)

如果你对 RAG 还不是很熟悉的话,请阅读之前的文章 “Elasticsearch:什么是检索增强生成 - RAG?”。你可以阅读文章 “Elasticsearch:在你的数据上训练大型语言模型 (LLM)” 来了解更多关于如何训练你的模型。在今天的文章中&#…

数据结构大体体系

逻辑结构 线性结构线性表一串珠子用线连起来,这就是典型的“线性存储结构”。每颗珠子之间的关系结构也很简单,包括头尾的话,它们最少有一个关系对象,而中间的珠子无论前后都只有一个关系对象,即 one-to-one栈队列字符…

自动驾驶高效预训练--降低落地成本的新思路(AD-PT)

自动驾驶高效预训练--降低落地成本的新思路 1. 之前的方法2. 主要工作——面向自动驾驶的点云预训练2.1. 数据准备 出发点:通过预训练的方式,可以利用大量无标注数据进一步提升3D检测 https://arxiv.org/pdf/2306.00612.pdf 1. 之前的方法 1.基于对比学…

19、Flink 的Table API 和 SQL 中的内置函数及示例(1)

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…

项目管理之如何召开项目时间箱启动会议

时间箱启动会议是项目管理中至关重要的一环,它帮助项目团队明确目标、分配任务、制定计划,并为项目的顺利实施提供指导和支持。下边为大家介绍有关如何召开时间箱启动会议的一些建议: 确定会议目标 在召开时间箱启动会议前,首先…

Tomcat,jdk下载配置(发布项目)

Tomcat,jdk下载, 远程连接 启动以下服务 高级设置 允许别人连接进来 网上搜索jdk下载即可 双击下一步即可 下一步 输入java,看有没有安装成功 这是安装成功的 Tomcat就可以安装了 和以上操作一样,在网上下载安装包,…

APP开发:用途与未来前景|软件定制开发|网站小程序建设

APP开发:用途与未来前景|软件定制开发|网站小程序建设 APP开发已成为现代科技趋势的一部分,无论是日常生活还是商业领域,都有它的身影。通过开发APP,我们可以将想法、功能和内容转化为直观、易用的移动设备应用程序,满…

java的反应式流

Java的反应式流是一种新的编程模型,它在异步和事件驱动的环境下工作。反应式流的目的是为了解决传统的单线程或者多线程编程模型在高并发和大流量情况下的性能瓶颈。 反应式流的核心是Observable和Observer,Observable表示一个数据流,而Obse…

【CSDN 每日一练 ★☆☆】【链表】删除排序链表中的重复元素

【CSDN 每日一练 ★☆☆】【链表】删除排序链表中的重复元素 链表 递归 题目 存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次 。 返回同样按升序排列的结果链表。 示例 示例 1&am…

ActiveMq学习⑨__基于zookeeper和LevelDB搭建ActiveMQ集群

引入消息中间件后如何保证其高可用? 基于zookeeper和LevelDB搭建ActiveMQ集群。集群仅提供主备方式的高可用集群功能,避免单点故障。 http://activemq.apache.org/masterslave LevelDB,5.6版本之后推出了LecelDB的持久化引擎,它使…

基于Qt QProcess获取linux启动的程序、QScreen 截屏、GIF动画实现

在Linux中,可以使用QProcess类来获取已启动的程序。以下是一个示例代码: #include <QCoreApplication>#include <QProcess>int main(int argc, char *argv[]){QCoreApplication a(argc, argv); // 创建一个QProcess对象 QProcess process; // 设置执行…

kubernetes集群编排——k8s调度

nodename vim nodename.yaml apiVersion: v1 kind: Pod metadata:name: nginxlabels:app: nginxspec:containers:- name: nginximage: nginxnodeName: k8s2 nodeName: k8s2 #找不到节点pod会出现pending&#xff0c;优先级最高 kubectl apply -f nodename.yamlkubectl get pod …

Linux之打印函数调用依赖关系(六十一)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

linux地址空间

地址空间 内存空间示意图虚拟地址空间虚拟地址进程地址空间生命周期图解为什么要有地址空间呢&#xff1f; 小结 内存空间示意图 进程是在内存中运行的&#xff0c;为了便于管理&#xff0c;不同的数据会存储在不同的区域&#xff0c;因此内存就被分为几部分&#xff0c;如下图…

微型计算机原理1

一、选择题 1.8086CPU的字长是&#xff08;&#xff09;位。 A. 32 B. 128 C. 64 D. 16 2 间接寻址方式中&#xff0c;操作数在(&#xff09;中。 A. 通用寄存器 B. 内存单元 C. 程序计数器 D.堆栈 3.在循环指令LOOP和串操作指令中,用作计数器的寄存器是() A. AX B. BX C. C…