Git常用指令大全详解

news2024/9/21 12:40:20

Git常用指令大全详解

Git,作为目前最流行的分布式版本控制系统,其强大的功能和灵活性为开发者提供了极大的便利。无论是个人项目还是团队协作,Git都扮演着不可或缺的角色。本文将详细总结Git的常用指令,帮助大家更好地掌握这一工具。

在这里插入图片描述

一、Git基础配置

  1. 设置用户信息

    git config --global user.name "你的用户名"
    git config --global user.email "你的邮箱"
    

    配置全局的用户名和邮箱,这些信息会被记录到每次提交中。

  2. 检查配置

    git config --list
    

    查看当前Git的配置信息。

  3. 设置SSH密钥

    生成SSH密钥(默认路径为~/.ssh/id_rsa~/.ssh/id_rsa.pub):

    ssh-keygen -t rsa -b 4096 -C "你的邮箱"
    

    然后,将公钥(id_rsa.pub)添加到你的Git服务器(如GitHub、Gitee等)上。

二、Git仓库操作

  1. 初始化仓库

    git init
    

    在当前目录下初始化一个新的Git仓库。

  2. 克隆仓库

    git clone <repository-url>
    

    克隆远程仓库到本地。

  3. 查看仓库状态

    git status
    

    查看当前工作目录的状态,包括已修改、未提交等信息。

三、文件操作

  1. 添加文件到暂存区

    git add <file>
    

    添加指定文件到暂存区。如果要添加所有修改过的文件,可以使用git add .

  2. 提交文件到仓库

    git commit -m "提交信息"
    

    将暂存区的文件提交到本地仓库。

  3. 查看提交历史

    git log
    

    查看提交历史记录。

  4. 撤销修改

    • 撤销工作区的修改(未添加到暂存区):

      git checkout -- <file>
      
    • 撤销暂存区的修改(已添加到暂存区但未提交):

      git reset HEAD <file>
      
    • 撤销已提交的修改(通过版本回退):

      git reset --hard <commit-id>
      

四、分支操作

  1. 查看分支

    git branch
    

    查看本地分支列表。加上-r参数可以查看远程分支。

  2. 创建分支

    git branch <branch-name>
    

    创建新的本地分支。

  3. 切换分支

    git checkout <branch-name>
    

    切换到指定分支。在Git 2.23及以后版本中,可以使用git switch <branch-name>来切换分支。

  4. 合并分支

    git merge <branch-name>
    

    将指定分支合并到当前分支。

  5. 删除分支

    git branch -d <branch-name>
    

    删除本地分支。如果分支还没有被合并,需要使用-D参数强制删除。

  6. 推送分支到远程仓库

    git push origin <branch-name>
    

    将本地分支推送到远程仓库。

  7. 拉取远程分支到本地

    git fetch origin <branch-name>
    git checkout -b <local-branch-name> origin/<remote-branch-name>
    

    先从远程仓库拉取分支信息,然后在本地创建并切换到新分支,同时关联到远程分支。

五、远程仓库操作

  1. 查看远程仓库

    git remote -v
    

    查看当前配置的远程仓库列表。

  2. 添加远程仓库

    git remote add <repository-name> <repository-url>
    

    添加新的远程仓库。

  3. 推送本地修改到远程仓库

    git push <repository-name> <branch-name>
    

    将本地分支的修改推送到远程仓库。

  4. 从远程仓库拉取更新

    git pull <repository-name> <branch-name>
    

    从远程仓库拉取指定分支的更新并合并到当前分支。

  5. 移除远程仓库

    git remote remove <repository-name>
    

    移除指定的远程仓库配置。

六、标签操作

  1. 创建标签

    git tag <tag-name>
    

    在当前分支的最新提交上创建一个标签。

  2. 查看标签

    git tag
    

    查看所有标签列表。

  3. 推送标签到远程仓库

    git push origin <tag-name>
    

    将指定标签推送到远程仓库。

  4. 删除标签

    • 删除本地标签:

      git tag -d <tag-name>
      
    • 删除远程标签:

      git push origin :refs/tags/<tag-name>
      

七、其他高级操作

  1. 查看配置

    git config --list
    

    查看Git的全局和仓库级配置。

  2. 设置别名

    git config --global alias.<alias-name> <command>
    

    为Git命令设置别名,以便简化使用。

  3. 存储工作进度

    git stash
    

    将当前工作区的修改临时存储起来,以便切换到其他分支或进行其他操作。

  4. 恢复存储的工作进度

    git stash pop
    

    恢复最近一次存储的工作进度。

  5. 清理未跟踪的文件和目录

    git clean -fd
    

    清理工作区中未跟踪的文件和目录。

结语

本文详细总结了Git的常用指令,涵盖了基础配置、仓库操作、文件操作、分支操作、远程仓库操作、标签操作以及其他高级操作。希望这些内容能够帮助大家更好地掌握Git,提高开发效率。当然,Git的功能远不止于此,还有更多的高级特性和命令等待大家去探索和学习。

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

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

相关文章

PHP:强大的Web开发语言

PHP&#xff1a;强大的Web开发语言 一、PHP 简介及优势 PHP 的基本概念 PHP&#xff08;PHP: Hypertext Preprocessor&#xff09;即 “超文本预处理器”&#xff0c;是一种通用开源脚本语言&#xff0c;最初由 Rasmus Lerdorf 于 1994 年创建。它可以在服务器上执行&#xf…

题目:单调栈

1、关于栈的概述 栈是一种数据结构&#xff0c;遵循“后进先出”&#xff08;LIFO, Last In, First Out&#xff09;的原则。这意味着最后被插入栈中的元素会最先被移除。可以把它想象成一个垒盘子的情况&#xff0c;新的盘子总是放在最上面&#xff0c;而最上面的盘子会最先被…

Matlab:科学计算与工程应用的强大利器

Matlab&#xff1a;强大的科学计算工具 一、Matlab 简介与重要性 Matlab 作为一款强大的科学计算软件&#xff0c;在工程、科学、数学等多个领域都有着广泛的应用及至关重要的地位。 在工程计算领域&#xff0c;它涵盖了众多方面。例如&#xff0c;线性代数与矩阵运算中&…

CODESYS资源使用表

1、CODESYS标准化编程之输入输出映射请参考下面文章链接: CODESYS标准化编程之输入输出映射-CSDN博客文章浏览阅读78次。在介绍输入输出映射之前大家需要了解开关量防抖滤波功能块,相关链接如下:开关量防抖滤波器(梯形图和SCL源代码)_开关量输入滤波程序-CSDN博客文章浏览阅…

禹神:一小时彻底搞懂跨域解决方案

1. 浏览器的同源策略 2. 跨域会受到哪些限制 4. CORS 解决 Ajax 跨域问题 exposedHeaders 不加这个&#xff0c;js拿不到这个响应头(浏览器控制台network中能看见&#xff0c;但是js拿不到) 5. JSONP 解决跨域问题 JSOP只能解决get请求 服务端代码 客户端代码 服务端代码升…

Gartner发布报告揭秘微软数据安全功能和许可

制定数据安全计划以增强合规性并降低数据风险仍然是安全和风险管理领导者关注的问题。这项研究阐明了 Microsoft 的数据安全许可结构&#xff0c;并确定了围绕 Purview 构建数据安全计划的关键要素。 主要发现 客户对微软数据安全的询问表明&#xff0c;安全和风险管理 (SRM) 领…

transformer模型进行英译汉,汉译英

上面是在测试集上的表现 下面是在训练集上的表现

全面掌控大模型:MaxKB与Ollama的高效本地部署策略

随着大模型的广泛应用&#xff0c;越来越多的开发者希望能够在本地运行这些模型&#xff0c;既提高数据隐私性&#xff0c;又避免依赖云端服务。本文将详细介绍如何在本地使用 Ollama 进行大模型部署&#xff0c;以及如何通过 MaxKB 导入本地知识库并进行交互操作。为了使该过程…

在线包装盒型生成工具,各种异型包装盒型,PDF导出方便

1、templatemaker.nl Passepartout ✂ Templatemaker ︎https://www.templatemaker.nl/en/passepartout/这是一个荷兰设计师建的一个在线盒型自动生成工具&#xff0c;包含各类新奇盒型&#xff0c;大家可以一起去观摩一下。 网站首页顶部各种盒型展示&#xff0c;大家根据需…

【CTF MISC】XCTF GFSJ1088 [中等] QR1 Writeup(图像处理+QR Code识别)

[中等] QR1 一张空白的图片&#xff1f; 解法 一张空白图片。 用 Photoshop 打开&#xff0c;放大&#xff0c;发现很多小黑点。 将图片复制到新文档&#xff0c;用魔棒工具选择白色部分。 Ctrl Shift i 反选。编辑&#xff0c;描边&#xff0c;黑色&#xff0c;10px&#…

2024年汉字小达人区级自由报名备考冲刺:往年真题练一练

2024年第十一届汉字小达人的区级活动的时间9月25-30日正式开赛&#xff0c;满打满算&#xff0c;还有16天时间准备。 还有一些孩子和家长&#xff0c; 刚刚被老师通知可以参加这个比赛&#xff0c;很关心的就是现在准备汉字小达人比赛是否来得及。别想这么多了&#xff0c;bet…

27. 完整的训练套路(三) train()、eval()

完整的训练套路(三) train() eval() 1. 什么是tain() eval() 在许多代码中我们经常会看到模型开始训练前会先进行一个 model.train()&#xff0c; 模型的测试之前会有一行 model.eval() 官方文档 https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.M…

初学Linux(学习笔记)

初学Linux&#xff08;学习笔记&#xff09; 前言 本文跳过了Linux前期的环境准备&#xff0c;直接从知识点和指令开始。 知识点&#xff1a; 1.目录文件夹&#xff08;Windows&#xff09; 2.文件内容属性 3.在Windows当中区分文件类型是通过后缀&#xff0c;而Linux是通过…

基于spring的ssm整合

目录 基于spring的ssm整合 Spring 框架 SpringMVC 框架 MyBatis 框架 1.创建项目 2.导入依赖 3.导入sql 4.创建jdbc.propries文件 1&#xff09;mysql8以下 2&#xff09;mysql8以上的 5.创建mybatis-config.xml配置文件 6.创建spring-Config.xml文件 7.创建项目所需包和类 1&a…

C语言——错误处理机制errno

前言 在C语言中&#xff0c;错误处理主要是通过全局变量 errno 和相关的错误处理函数来实现的。errno 是一个全局整型变量&#xff0c;用于存储最近发生的系统调用或库函数调用失败的原因。当一个系统调用或库函数调用失败时&#xff0c;通常会设置 errno 的值&#xff0c;并返…

ROS笔记3.路径规划1

在 Rviz 中可视化路径规划move_base 节点的基本概念什么是Global Planner&#xff1f;什么是Global Costmap&#xff1f; 在 Rviz 中可视化路径规划 对于本章&#xff0c;您基本上需要使用 RViz 的 3 个元素&#xff1a; Map Display (Costmaps)Path Displays (Plans)2D 工具 …

Linux 系统盘空间不足,想要将 Docker 镜像和容器数据迁移到数据盘

摘要&#xff1a;大家在Linux上用Docker部署项目的时候&#xff0c;有时候会部署多个项目&#xff0c;系统盘空间不足&#xff0c;数据盘又挂载有很多空间&#xff0c;这时候就会想要将 Docker 镜像和容器数据迁移到数据盘&#xff0c;本文主要讲解迁移步骤和迁移过程中遇到的一…

轮转数组 给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数

示例 1: 输入: nums [1,2,3,4,5,6,7], k 3 输出: [5,6,7,1,2,3,4] 解释: 向右轮转 1 步: [7,1,2,3,4,5,6]向右轮转 2 步: [6,7,1,2,3,4,5] 向右轮转 3 步: [5,6,7,1,2,3,4]示例 2: 输入&#xff1a;nums [-1,-100,3,99], k 2 输出&#xff1a;[3,99,-1,-100] 解释: 向右…

Spring-IOC容器-ApplicationContext

IOC:Inversion of Control 控制反转&#xff0c;是一种设计原则&#xff0c;spring 中通过DI&#xff08;dependency Injection&#xff09;来具体实现。 比如原本对象的实例化&#xff0c;是通过程序主动New出来&#xff0c;IOC中的对象实例交给Spring框架来实例化&#xff0…

形而上学(Metaphysics)

讯飞星火 形而上学&#xff08;Metaphysics&#xff09;是哲学的一个门类&#xff0c;主要研究世界的本质、存在者的存在原因及本源等问题。它旨在探讨超越物理世界的抽象概念和原则 。 形而上学最早由亚里士多德提出&#xff0c;被称为“第一哲学”或“第一科学”。这个术语…