Git 基本命令行操作

Git是一个开源的分布式版本控制系统,用于管理源代码和文档的版本。以下是Git的基本命令行操作:

一、配置

  • 安装完成后,需要配置Git的用户名和邮箱,以便在提交记录时记录操作者的信息。
    • 配置全局用户名:git config --global user.name “Your Name”
    • 配置全局邮箱:git config --global user.email “Your Email”
    • 查看配置信息:git config --global --list

二、初始化仓库

  • 可以通过两种方式创建Git仓库:
    1. 在本地直接创建一个仓库:
      • 创建一个新的文件夹,并切换到该文件夹。
      • 执行git init命令,将该文件夹初始化为Git仓库。
    2. 从远程服务器克隆一个已存在的Git仓库:
      • 使用git clone [url]命令,从指定的URL中克隆一个仓库。

三、工作区域和文件状态

  • Git的工作区域分为:工作区、暂存区(也称为索引区)和本地仓库。
  • 文件有三种状态:已修改(modified)、已暂存(staged)和已提交(committed)。

四、添加和提交文件

  • 使用git status命令查看仓库的当前状态。
  • 使用git add [filename]命令将文件添加到暂存区。
  • 使用git commit -m "说明信息"命令将暂存区的文件提交到本地仓库。

五、查看文件差异

  • 使用git diff命令查看文件差异:
    • 不加参数时,默认比较工作区和暂存区之间的差异。
    • git diff [filename]:查看具体文件工作区与暂存区的差异。
    • git diff --cached:查看暂存区与上一次提交的差异。
    • git diff [commit_id1] [commit_id2]:查看两个版本之间的差异。

六、删除文件

  • 使用git rm [filename]命令将文件从工作区和暂存区删除。
  • 使用git rm --cached [filename]命令将暂存区文件删除,但保留工作目录中的文件。

七、查看日志

  • 使用git log [option]命令查看历史提交信息:
    • -p:显示提交的补丁(具体更改内容)。
    • –oneline:以简洁的一行格式显示提交信息。
    • –graph:以图形化方式显示分支和合并历史。
    • –decorate:显示分支和标签指向的提交。
    • 其他选项如–author、–since、–until、–grep、–no-merges、–stat、–abbrev-commit、–pretty等,可以根据需要选择使用。

八、版本回退

  • 使用git reset [–hard | --soft] HEAD命令回退到某个版本:
    • –hard:撤销工作区中所有未提交的修改内容,将暂存区与工作区都回到上一次版本,并删除之前的所有信息提交(完全回退到某个版本)。
    • –soft:回退到某个版本,但保留当前文件的修改内容。

九、撤销操作

  • 使用git checkout – [filename]命令丢弃工作区修改。
  • 使用git reset HEAD [filename]命令撤销使用git add后暂存的文件。

十、远程仓库操作

  • 使用git remote命令管理远程仓库:
    • git remote:列出远程仓库。
    • git remote add [remote_name] [remote_url]:将本地仓库与远程仓库关联起来。
    • git remote rename [old_name] [new_name]:将已经配置的远程仓库重命名。
    • git remote remove [remote_name]:删除当前仓库指定的远程仓库,与远程仓库断开关联。
    • git remote show [remote_name]:显示远程仓库的详细信息。
  • 使用git fetch命令获取远程仓库代码,但这并不会主动合并到本地仓库代码。
  • 使用git push命令将本地更新推送到远程仓库。
  • 使用git pull命令拉取远程更新到本地。

十一、分支操作

  • 使用git branch命令查看或创建分支:
    • git branch:查看当前所有分支。
    • git branch [branchname]:创建一个新的分支。
  • 使用git checkout [branchname]或git switch [branchname]命令切换分支。
  • 使用git merge [branchname]命令合并分支。

十二、贮藏功能

  • 使用git stash命令将当前分支的修改储藏起来。
  • 使用git stash apply命令恢复之前存储的内容。
  • 使用git stash list命令查看存储记录。
  • 使用git stash pop命令恢复并删除最近一次存储的记录。

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

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

相关文章

Unity网络开发基础 —— 实践小项目

概述 接Unity网络开发基础 导入基础知识中的代码 需求分析 手动写Handler类 手动书写消息池 using GamePlayer; using System; using System.Collections; using System.Collections.Generic; using UnityEngine;/// <summary> /// 消息池中 主要是用于 注册 ID和消息类…

视频怎么去除杂音保留人声?让人声更动听!视频噪音处理攻略

在视频制作过程中&#xff0c;音质是至关重要的一环。然而&#xff0c;很多时候我们录制的视频会伴随着各种不想要的杂音&#xff0c;比如风声、交通噪音或是其他环境音&#xff0c;这些杂音严重影响了观众的观看体验。那么&#xff0c;如何在保留人声的同时&#xff0c;有效地…

Linux与科学计算

1、引言 Linux作为一种开源操作系统&#xff0c;在科学计算领域得到了广泛的应用。科学计算通常涉及处理大量的数据和复杂的数学模型&#xff0c;要求计算机系统具备强大的计算能力、灵活性和高效性。Linux凭借其高可扩展性、稳定性和开源生态系统的优势&#xff0c;成为科学计…

Scala面试题大全~基础题(15题)

1&#xff1a;Scala是什么? Scala是一种多范式的编程语言&#xff0c;它结合了面向对象编程和函数式编程的特性&#xff0c;它支持面向对象、函数式和命令式编程方法。Scala运行在Java虚拟机&#xff08;JVM&#xff09;上&#xff0c;这意味着它可以与Java代码无缝集成。它还…

情绪识别数据集(包含25w张图片) yolo格式类别:八种训练数据已划分, 识别精度:90%

情绪识别数据集(包含25w张图片) yolo格式 类别&#xff1a;Anger、Contempt、Disgust、Fear、Happy、Neutral、Sad、Surprise 八种 训练数据已划分&#xff0c;配置文件稍做路径改动即可训练。 训练集&#xff1a;171010 验证集&#xff1a;54060 测试集&#xff1a;27550 共计…

企业架构系列(17)使用ArchiMate支持TOGAF

从本篇开始&#xff0c;介绍如何使用 ArchiMate 建模语言支持 TOGAF 标准。用于支持使用企业架构、解决方案或其他架构活动进行业务转型。 架构开发方法&#xff08;ADM&#xff09;是TOGAF标准的方法组件&#xff0c;它描述了若干活动阶段。例如&#xff0c;ADM预备阶段的重点…

雨晨 24H2 正式版 Windows 11 iot ltsc 2024 适度 26100.2033 VIP2IN1

雨晨 24H2 正式版 Windows 11 iot ltsc 2024 适度 26100.2033 VIP2IN1 install.wim 索引: 1 名称: Windows 11 IoT 企业版 LTSC 2024 x64 适度 (生产力环境推荐) 描述: Windows 11 IoT 企业版 LTSC 2024 x64 适度 By YCDISM 2024-10-09 大小: 15,699,006,618 个字节 索引: 2 …

探索高效的 PDF 拆分工具及其独特功能

当一份大型的PDF文档包含了多个不同主题或章节的内容时&#xff0c;将其拆分成独立的部分可以更方便我们的阅读、编辑和管理。接下来&#xff0c;让我们一起走进PDF拆分工具的世界&#xff0c;了解它们的功能和价值。 1.福昕PDF编辑器 链接一下>>https://editor.foxits…

C++ 算法学习——1.8 单调栈算法

单调栈&#xff08;Monotonic Stack&#xff09;是一种在解决一些数组或者链表相关问题时非常有用的数据结构和算法。在C中&#xff0c;单调栈通常用于解决一些需要快速找到元素左右第一个比当前元素大或小的问题。 定义&#xff1a; 单调栈实际上是一个栈&#xff0c;但是与普…

数据交换的金钟罩:合理利用安全数据交换系统,确保信息安全

政府单位为了保护网络不受外部威胁和内部误操作的影响&#xff0c;通常会进行网络隔离&#xff0c;隔离成内网和外网。安全数据交换系统是专门设计用于在不同的网络环境&#xff08;如内部不同网络&#xff0c;内部网络和外部网络&#xff09;之间安全传输数据的解决方案。 使用…

DVWA | DVWA 靶场初识

关注这个靶场的其它相关笔记&#xff1a;DVWA —— 靶场笔记合集-CSDN博客 0x01&#xff1a;DVWA 靶场简介 DVWA&#xff08;Damn Vulnerable Web Application&#xff09;是一个 PHP/MySQL 的 Web 应用程序&#xff0c;它被故意设计成包含多种安全漏洞&#xff0c;以便为网络…

正点原子学习笔记之汇编LED驱动实验

1 汇编LED原理分析 为什么要写汇编     需要用汇编初始化一些SOC外设     使用汇编初始化DDR、I.MX6U不需要     设置sp指针&#xff0c;一般指向DDR&#xff0c;设置好C语言运行环境 1.1 LED硬件分析 可以看到LED灯一端接高电平&#xff0c;一端连接了GPIO_3上面…

安卓手机平板远程访问内网服务器中安装的code-server编程开发实战

文章目录 前言1.Ubuntu本地安装code-server2. 安装cpolar内网穿透3. 创建隧道映射本地端口4. 安卓平板测试访问5.固定域名公网地址6.结语 前言 本文主要介绍如何在Linux Ubuntu系统安装code-server&#xff0c;并结合cpolar内网穿透工具配置公网地址&#xff0c;轻松实现使用安…

【开源免费】基于SpringBoot+Vue.JS医院电子病历管理系统(JAVA毕业设计)

本文项目编号 T 008 &#xff0c;文末自助获取源码 \color{red}{T008&#xff0c;文末自助获取源码} T008&#xff0c;文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 医…

YOLOv10改进策略【注意力机制篇】| 引入MobileNetv4中的Mobile MQA,提高模型效率

一、本文介绍 本文记录的是基于Mobile MQA模块的YOLOv10目标检测改进方法研究。MobileNetv4中的Mobile MQA模块是用于模型加速&#xff0c;减少内存访问的模块&#xff0c;相比其他全局的自注意力&#xff0c;其不仅加强了模型对全局信息的关注&#xff0c;同时也显著提高了模…

Spring Boot洗衣店订单系统:简化您的业务流程

1系统概述 1.1 研究背景 如今互联网高速发展&#xff0c;网络遍布全球&#xff0c;通过互联网发布的消息能快而方便的传播到世界每个角落&#xff0c;并且互联网上能传播的信息也很广&#xff0c;比如文字、图片、声音、视频等。从而&#xff0c;这种种好处使得互联网成了信息传…

JavaScript 常量/数据类型/类型转换 简单学习

目录 1. 常量 1.1 常量概述 1.2 案例 1.3 总结 2. 数据类型 2.1 概述 2.2 分类 2.2.1 基本数据类型 2.2.1 基本数据类型——number (数值/字型) 2.2.1 数字型——算术运算符 2.2.1 基本数据类型——String (字符串类型) 2.2.1 字符串拼接 2.2.1 模板字符串 2.2.1…

VMwareWorkstation安装KylinV10sp3(银河麒麟)系统教程

版本说明 VMware版本如下 OS版本如下 创建虚拟机 点击创建新的虚拟机 按图下所示选择&#xff0c;点击下一步 按照图下所示选择&#xff0c;点击下一步 按照图下所示选择&#xff0c;点击下一步 按照图下所示选择&#xff0c;点击下一步 设置虚拟机名称&#xff0c;点击下一步…

java-02 数据结构-队列

在Java中&#xff0c;队列是一种常见的数据结构&#xff0c;用于在保持顺序的同时存储和检索数据。Java提供了java.util.Queue接口&#xff0c;它的常见实现包括ArrayDeque、LinkedList和PriorityQueue等。 如果你觉得我分享的内容或者我的努力对你有帮助&#xff0c;或者你只…

git删除错误的commit

git的流程如图&#xff1a; 当某次失误造成commit的版本有问题&#xff0c;需要回退到正常的版本修改后重新add。 首先通过git log查看commit提交记录&#xff0c;可以看到HEAD->mater是本地最新的commit&#xff0c;而origin/master, origin/HEAD是远程仓库上的最新记录…