当前位置: 首页 > news >正文

Git 操作全解:从基础命令到高级操作的实用指南

文章目录

    • 1.基本命令
      • 1.初始化仓库
      • 2.克隆远程仓库
      • 3.查看当前仓库状态
      • 4.查看提交日志
      • 5.添加文件到暂存区
      • 6.提交更改
      • 7.查看仓库的配置信息
    • 2.分支操作
      • 1.查看所有分支
      • 2.创建新分支
      • 3.切换名称
      • 4.创建并切换到新分支
      • 5.删除分支
      • 6.查看当前分支
    • 3.合并分支
      • 1.合并分支
      • 2.解决合并冲突
    • 4.远程仓库操作
      • 1.查看远程仓库信息
      • 2.添加远程仓库
      • 3.推送更改到远程仓库
      • 4.拉取远程仓库的更改
      • 5.获取远程仓库的最新更改(不合并)
    • 5.文件操作
      • 1.查看文件历史
      • 2.撤销对文件的修改(还原到暂存区状态)
      • 3.恢复到文件到最后一次提交的状态
      • 4.删除文件并提交
    • 6.撤销操作
      • 1.撤销暂存区的所有修改
      • 2.撤销暂存区指定文件的修改
      • 3.撤销工作区指定文件的修改
      • 4.撤销指定提交的修改
      • 5.重置工作区,暂存区和git仓库的状态
      • 6.撤销提交(回到上一个提交)
    • 7.其他常用命令
      • 1.显示差异
      • 3.暂存文件但不提交

在这里插入图片描述

1.基本命令

1.初始化仓库

git init    // 在当前目录中初始化一个新的git仓库

2.克隆远程仓库

git clone 远程仓库地址    // 克隆远程仓库到本地

3.查看当前仓库状态

git status    // 查看工作目录和暂存区的状态,显示哪些文件已修改,哪些文件已暂存

4.查看提交日志

git log   //查看提交历史

5.添加文件到暂存区

git add 文件名称    //添加指定文件到暂存区
git add .   //添加当前面目录所有修改的文件

6.提交更改

git commit -m "备注信息"    //提交暂存区的文件到本地仓库,并添加提交信息

7.查看仓库的配置信息

git config --list

2.分支操作

1.查看所有分支

查看分支列表

git branch

2.创建新分支

git branch 新分支名称

3.切换名称

git checkout 分支名称 

4.创建并切换到新分支

git checkout - b 分支名称

5.删除分支

git branch -d 分支名称

6.查看当前分支

git branch --show-current

3.合并分支

1.合并分支

git merge 分支名称    // 将指定分支合并到当前分支

2.解决合并冲突

在合并时,如果存在冲突,git会提示你手动解决冲突,解决后使用 git add 标记冲突已解决,再执行 git commit 完成合并

4.远程仓库操作

1.查看远程仓库信息

git remote -v

2.添加远程仓库

git remote add origin 远程仓库地址

3.推送更改到远程仓库

首次推送到时需要使用 -u 参数,将本地分支与远程分支关联起来。设置默认上游分支

git push -u origin 远程仓库分支名称

4.拉取远程仓库的更改

git pull origin 远程仓库分支名称

5.获取远程仓库的最新更改(不合并)

git fetch origin

5.文件操作

1.查看文件历史

列出当前分支的所有 commit

git log -- 文件名称

2.撤销对文件的修改(还原到暂存区状态)

git checkout -- 文件名称

3.恢复到文件到最后一次提交的状态

git restore 文件名称

4.删除文件并提交

git rm 文件名称
git commit -m "Remove 文件名称"

6.撤销操作

1.撤销暂存区的所有修改

git reset

2.撤销暂存区指定文件的修改

git reset 文件名称

3.撤销工作区指定文件的修改

git checkout -- 文件名称

4.撤销指定提交的修改

git revert ‘commit 备注信息’

5.重置工作区,暂存区和git仓库的状态

git reset --hard

6.撤销提交(回到上一个提交)

撤销上次提交并删除修改,HEAD~1表示上一个提交,--hard会改变工作目录

git reset --hard HEAD~1

7.其他常用命令

1.显示差异

查看工作目录和暂存区之间的差异,或者已暂存文件与上次提交之间的差异

git diff 

3.暂存文件但不提交

将当前更改暂存起来,清理工作目录,稍后可以通过 git stash pop 恢复

git stash

相关文章:

Git 操作全解:从基础命令到高级操作的实用指南

文章目录 1.基本命令1.初始化仓库2.克隆远程仓库3.查看当前仓库状态4.查看提交日志5.添加文件到暂存区6.提交更改7.查看仓库的配置信息 2.分支操作1.查看所有分支2.创建新分支3.切换名称4.创建并切换到新分支5.删除分支6.查看当前分支 3.合并分支1.合并分支2.解决合并冲突 4.远…...

华院计算参与项目再次被《新闻联播》报道

12月17日,央视《新闻联播》播出我国推进乡村振兴取得积极进展。其中,华院计算参与的江西省防止返贫监测帮扶大数据系统被报道,该系统实现了由原来的“人找人”向“数据找人”的转变,有效提升监测帮扶及时性和有效性,守…...

从一次线上故障聊聊接口自动化测试

1、背景 3月初,运营同事配置了个还未上线的页面到网站首页 banner,导致用户点了报错。尽管这次很明确是运营人为操作失误引起的故障,但过往此类核心页面的访问异常,我们已不是第一次遇见。 从平台整体利益触发,我们各…...

Element-ui的使用教程 基于HBuilder X

文章目录 1.Element-ui简介2.使用HBuilderX 创建一个基于Vue3的项目 (由于是使用的基于Vue3的Element-ui)3.安装element-ui4.在项目里完全引用element-ui5.引用组件6.运行项目 1.Element-ui简介 Element,一套为开发者、设计师和产品经理准备…...

Chapter 03 复合数据类型-1

1.列表 Python内置的一种有序、可变的序列数据类型; 列表的定义: [ ]括起来的逗号分隔的多个元素组成的序列 列表对象的创建: (1)直接赋值 >>> list1 []#创建一个空列表赋值给list1 >>> list…...

【Python知识】Python面向对象编程知识

Python面向对象编程知识 概述1. 类(Class)2. 对象(Object)3. 封装(Encapsulation)4. 继承(Inheritance)5. 多态(Polymorphism)6. 抽象(Abstractio…...

CSharp: Oracle Stored Procedure query table

存储过程查询postgreSQL,Oracle 和sql server,Mysql 有区别。程序调用也是有区别。 oracle sql script: CREATE OR REPLACE PROCEDURE procSelectSchool(paramSchoolId IN char,p_cursor OUT SYS_REFCURSOR ) AS BEGINOPEN p_cursor FORSELECT *FROM SchoolWHERE SchoolId p…...

“协同过滤技术实战”:网上书城系统的设计与实现

2.1 JSP技术介绍 Java Server Pages这三个英文词汇的首字母的组合就是JSP。所以JSP是一个简写的名字,代表动态网页开发技术。JSP与Java的关系可以使用公式表示,即:JSP HTMLJava,HTML就是编写静态内容的标记语言。JSP则是可以编写网…...

Dhatim FastExcel 读写 Excel 文件

Dhatim FastExcel 读写 Excel 文件 一、说明1、主要特点2、应用场景 二、使用方法1、引入依赖2、Sheet 数据3、读取 Excel4、写入 Excel 一、说明 Github 地址:Dhatim FastExcel Dhatim FastExcel是一个高性能、轻量级的Java库,专门用于读取和写入Exce…...

YOLO11全解析:从原理到实战,全流程体验下一代目标检测

前言 一、模型介绍 二、网络结构 1.主干网络(Backbone) 2.颈部网络(Neck) 3.头部网络(Head) 三、算法改进 1.增强的特征提取 2.优化的效率和速度 3.更高的准确性与更少的参数 4.环境适应性强 5.…...

深度学习领域的主要神经网络架构综述

阅读本文前请先按照顺序阅读: Coursera吴恩达《神经网络与深度学习》课程笔记(1)-- 深度学习概述_吴恩达深度学习课程-CSDN博客 https://blog.csdn.net/red_stone1/article/details/77799014 完结篇 | 吴恩达deeplearning.ai专项课程精炼笔…...

【Nginx系列】---Nginx配置tcp转发

参考 Nginx 配置文件: error_log /var/log/nginx/error.log notice; pid /var/run/nginx.pid;events {worker_connections 1024; }stream {# 第一个服务转发upstream mysqltest {server 172.16.187.142:9000;}server {listen 9000;proxy_pass mysqltest;}…...

Java抽象工厂+单例模式

在前端时间开发过程中,有这样一个业务场景:A;B两家厂商设备进行设备信息的同步功能。 根据实际场景,做了抽象工厂+单例模式实现调用工厂时,生成不同的具体业务引用对象,实现方法的调用。 概念: 抽象工厂模式通过接口或抽象类来创建一系列相关或依赖对象。它定义了一组工…...

后端接口设计

一、基本规范 1.URL设计 应遵循RESTful风格,使用动词名词的方式描述接口的功能。应简洁明了,易于理解和记忆。 2.请求协议及方法 使用HTTPS协议进行数据传输,保证数据在传输过程中的安全性。如无特殊情况,统一使用post方法。 …...

Docker部署Sentinel

一、简介 是什么:面向分布式、多语言异构化服务架构的流量治理组件 能干嘛:从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性 官网地址:https://sentinelguard.io/zh-c…...

真实环境下实车运行,新能源汽车锂离子电池数据集

引言 锂离子电池(Lithium-ion Batteries,LiBs)已经作为电动汽车核心动力源,其性能直接关系到系统的性能和使用安全。为确保锂电池的安全使用,需要对锂电池的状态进行精确的估计,包括荷电状态(State of Charge, soC)、健康状态(St…...

【求职面试】驾照的种类

大型客车 A1 大型载客汽车 A3、B1、B2、C1、C2、C3、C4、M 牵引车 A2 重型、中型全挂、半挂汽车列车 B1、B2、C1、C2、C3、C4、M 城市公交车 A3 核载10人以上的城市公共汽车 C1、C2、C3、C4 中型客车 B1 中型载客汽车(10人以上、19人以下) C1、C2、C3…...

centos权限大集合,覆盖多种权限类型,解惑权限后有“. + t s”问题!

在 CentOS 系统中,权限管理是操作系统的核心功能之一,确保不同用户和进程对文件、目录以及设备的访问被合理控制。 权限系统主要包括传统的 Unix 权限模型、特殊权限(SetUID、SetGID、Sticky 位)和更精细的访问控制列表&#xff…...

AI Agent案例全解析:百度营销智能体(8/30)

引言:在当今这个科技飞速发展的时代,AI技术呈现出爆发式的增长,正以前所未有的态势改变着众多行业的发展轨迹,营销领域也不例外。随着市场竞争的日益激烈,传统营销模式逐渐显露出疲态,对于变革的需求愈发迫…...

hive常用函数有哪些

Hive是一个基于Hadoop的数据仓库工具,它提供了类似于SQL的接口,用于数据查询和分析。Hive提供了许多内置函数,这些函数可以分为几种类型,包括: • 字符串函数:用于处理字符串数据。 • concat()&#xff1…...

Z-Image-Turbo-辉夜巫女效果实测:LoRA微调模型在Gradio界面的高清出图表现

Z-Image-Turbo-辉夜巫女效果实测:LoRA微调模型在Gradio界面的高清出图表现 1. 模型简介与部署 Z-Image-Turbo-辉夜巫女是基于Z-Image-Turbo模型进行LoRA微调后的特殊版本,专门针对生成"辉夜巫女"风格图片进行了优化。该模型通过Xinference框…...

JS手撕:DOM操作 浏览器API高频场景详解

在前端开发中,我们经常会遇到一些重复且基础的需求——比如解析URL参数、给大量元素绑定点击事件、实现图片懒加载等。这些功能看似简单,但写得不够严谨就容易出现bug(比如中文参数乱码、事件绑定冗余、滚动加载卡顿)。 今天就整理…...

Intv_AI_MK11 架构设计咨询:后端微服务拆分与通信方案评估

Intv_AI_MK11 架构设计咨询:后端微服务拆分与通信方案评估 1. 微服务架构的核心挑战 想象你正在设计一个电商平台的后端系统。随着业务增长,单体架构开始暴露出各种问题:部署周期长、扩展困难、技术栈单一。这时微服务架构自然成为解决方案…...

YOLOv5与DeepSort结合优化:如何调整参数让目标跟踪更精准(附代码对比)

YOLOv5与DeepSort参数调优实战:提升目标跟踪精度的关键策略 在计算机视觉领域,目标跟踪技术正从实验室快速走向工业应用。当基础功能实现后,如何让系统在实际场景中表现更稳定、更精准,成为开发者面临的核心挑战。本文将深入剖析Y…...

深入解析 OpenSTLinux 6.6 Yocto SDK 环境配置与 BSP 源码部署 - STM32MP2 实战(基于STM32CubeMX)

1. OpenSTLinux 6.6 Yocto SDK环境配置全攻略 刚拿到STM32MP2开发板时,最让人头疼的就是搭建开发环境。我花了整整三天时间才把Yocto SDK环境配置明白,今天就把这些实战经验分享给大家,让你少走弯路。 首先需要下载两个关键文件:S…...

题目1514:蓝桥杯算法提高VIP-夺宝奇兵

#include<iostream> using namespace std; int dp[110][110]; int main(){ int n; cin>>n; for(int i1;i<n;i){ for(int j1;j<i;j){ cin>>dp[i][j]; } } //从倒数第二行向上推 for(int in-1;i&g…...

微信小程序地图气泡实战:从callout到customCallout的性能与兼容性深度解析

1. 微信小程序地图气泡的核心需求解析 第一次接触微信小程序地图气泡需求时&#xff0c;我也被各种技术方案搞得晕头转向。经过多个项目的实战验证&#xff0c;我发现开发者最常遇到的三大核心问题就是&#xff1a;内容复杂度、性能瓶颈和跨平台兼容性。比如在电商小程序中&…...

nRF52轻量级NFC Type 2标签驱动库解析

1. 项目概述aconno_nrf52_nfc是一个专为 Nordic Semiconductor nRF52 系列 SoC&#xff08;如 nRF52832、nRF52840&#xff09;设计的轻量级 NFC 标签驱动库。该库不依赖于 Nordic SDK 的完整 NFC 协议栈&#xff08;如nfc_t2t_lib或nfc_ndef&#xff09;&#xff0c;而是直接操…...

STM32开发中printf重定向的两种实现方法

1. STM32开发中的printf重定向需求解析在嵌入式开发中&#xff0c;调试信息的输出是开发过程中不可或缺的一环。对于STM32这类ARM Cortex-M系列微控制器而言&#xff0c;标准库中的printf函数默认是无法直接使用的&#xff0c;因为这类设备通常没有像PC那样的标准输出设备。这就…...

毕业论文答辩利器:AI驱动的10款高效工具及模板深度评测

工具对比速览表 工具名称 核心功能 适用场景 特色优势 Aibiye 智能成文、文献查找、数据分析 社科/金融/理工类论文 融合多模型架构&#xff0c;精准把握高校规范 Aicheck 初稿生成、大纲定制、图表插入 快速完成初稿需求 全学科覆盖&#xff0c;20-30分钟极速生成 …...