【随笔】Git -- 常用命令(四)

请添加图片描述

  • 💌 所属专栏:【Git】

  • 😀 作  者:我是夜阑的狗🐶

  • 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询!

  • 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘

文章目录

  • 前言
  • 一、Git 常用命令
      • 1、git init指令
      • 2、git clone指令
      • 3、git add指令
      • 4、git commit指令
      • 5、git push指令
      • 6、git pull指令
      • 7、git branch指令
      • 8、git checkout指令
      • 9、git status指令
  • 总结


前言

  大家好,又见面了,我是夜阑的狗🐶,本文是专栏【Git】专栏的第4篇文章;
  这是今天学习到Git的💖💖💖,开启新的征程,记录最美好的时刻🎉,每天进步一点点。
  专栏地址:【Git】 , 此专栏是我是夜阑的狗对Git,Gitee等工具使用过程的总结,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。
  如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。


一、Git 常用命令

  Git是一个版本控制系统,用于跟踪和管理文件的变化。它是由Linus Torvalds于2005年创建的,最初为了帮助Linux内核的开发而设计。当项目开发过程中,多个人提交同一个分支很容易出现,本地分支与目标分支不一致导致提交了,这里就讲解一个比较通解的方法来解决。话不多说,让我们来看看 Git 是怎么使用的吧。

1、git init指令

  git init 是Git的一个命令,用于在当前目录下创建一个新的Git仓库。
  使用git init 命令后,会在当前目录下生成一个名为 “.git” 的文件夹,该文件夹中存储了Git版本控制系统的所有必要文件。这样就可以开始使用Git进行版本控制了。
  需要注意的是,git init只会在当前目录下初始化一个新的Git仓库,如果想要在其他目录下创建Git仓库,需要先切换到对应的目录再执行 git init 命令。

  git init 的语法为:

git init

2、git clone指令

  git clone是Git命令,用于将远程仓库中的代码克隆到本地仓库。它是一个常用的操作,是开始使用Git的第一步。
  使用 git clone 命令,需要提供远程仓库的URL,Git会自动将远程仓库中的所有代码克隆到本地。克隆完成后,本地将会有一个与远程仓库完全一样的副本。
  git clone 的语法为:

git clone <url>

  其中,是远程仓库的URL。URL的格式可以是HTTPS或SSH,具体取决于远程仓库的设置。

3、git add指令

  git add 是 Git 中一个非常重要的命令,用于将文件添加到暂存区。它是在 Git 中进行版本控制的第一步,也是提交文件修改的前提。

  当我们对文件进行了修改后,可以使用 git add 命令将这些修改的文件添加到 Git 的暂存区,准备进行下一步的操作。暂存区是一个临时的存储区域,它允许我们选择性地将文件添加到下一次提交中。

  git add 命令的基本用法是:

 git add <file>

  其中 是要添加到暂存区的文件路径。可以指定单个文件,也可以使用通配符来添加多个文件。

  除了单个文件外,git add 还可以添加目录。如果要添加整个目录,可以使用 . 来表示当前目录。例如,git add . 会将当前目录下的所有文件添加到暂存区。

  git add 命令还有一些常用的选项:

  • -A 或 --all:将所有修改过的文件添加到暂存区,包括被删除的文件。
  • -u 或 --update:将已经被 git add 过的文件以及被修改的文件添加到暂存区,但不包括新添加的文件。
  • -i 或 --interactive:进入交互模式,可以选择性地添加文件。

4、git commit指令

  Git commit 是Git版本控制系统中的一个命令,用于创建一个新的代码提交。每次代码修改之后,我们可以使用 git commit 命令将修改的代码保存为一个新的提交。

  Git commit 具有以下特点:

  • 提交历史记录:每次提交都会生成一个唯一的提交ID,可以通过提交ID查看特定的提交历史记录。
  • 提交注释:每次提交都可以附带一个注释,用于描述本次提交的目的和内容。
  • 快照:每次提交会保存当前文件状态的快照,包括所有被修改、添加或删除的文件。
  • 版本管理:每个提交都是一个独立的版本,可以通过提交ID进行版本间的切换和比较。

  使用 git commit 的基本语法如下:

git commit -m "Commit message"

  其中,-m 选项用于指定本次提交的注释,即Commit message。注释应该简明扼要地描述本次提交的内容和目的。
  除了使用 -m 选项,还可以使用其他选项来扩展和优化提交的功能,例如使用 -a 选项来自动提交所有已经被Git管理的文件。
  以下是一些常用的 git commit 命令的选项和用法:

  • -m <message>:添加提交信息。提交信息应该简洁明了,描述本次更改的内容。
  • -a:自动将所有已修改或已删除的文件加入到暂存区,并进行提交。注意,新建的文件不能被自动添加到暂存区,需要先使用git add命令将新文件添加到暂存区。
  • –amend:将当前提交的更改合并到上一次提交中,并修改提交信息。这个命令通常用于修复提交信息或添加遗漏的文件。

5、git push指令

  git push 是Git命令之一,用于将本地代码库中的修改推送到远程代码库。
  git push 命令的基本语法如下:

git push [远程主机名] [本地分支名]:[远程分支名]

  其中,远程主机名指定了远程仓库的地址,可以是一个URL或者一个别名。本地分支名是要推送的本地分支,远程分支名是要推送到的远程分支。
  例如,要将本地分支 maste r的修改推送到远程仓库 originmaster 分支上,可以使用以下命令:

git push origin master

   git push命令还可以接受其他选项,如 --force选项用于强制推送修改,--tags 选项用于推送标签等。

6、git pull指令

  git pull 是一个git命令,用于从远程仓库拉取代码并合并到本地仓库。 git pull 命令实际上相当于执行了两个操作:git fetchgit merge
  git pull 命令的基本语法如下

git pull

  git pull 的一些常用选项:

  • –rebase:将 git merge 操作改为 git rebase 操作,即将当前分支的变更应用到拉取的更新之上。
  • – ff-only:只允许快进合并,如果远程仓库有新的提交记录没有被拉取,则会返回错误。
  • –no-edit:合并时不打开编辑器进行提交信息的编辑,使用上一次合并的提交信息。
  • –tags:在拉取时获取标签信息。

7、git branch指令

  git branch 是Git版本控制系统中用来管理分支的指令。它有以下几个常用的用法和参数:

  • git branch:查看所有分支。该指令会列出所有本地分支,并在当前分支前加上一个星号。

  • git branch [branchname]:创建一个新的分支。新的分支会以当前所在的分支为基础创建,并且指向与当前分支相同的提交。

  • git branch -d [branchname]:删除一个已合并的分支。只有当某个分支的工作已经合并到其他分支,并且不再需要该分支时,才可以执行该指令。

  • git branch -D [branchname]:强制删除一个分支。即使该分支的工作尚未合并到其他分支,也可以使用该指令删除。

  • git branch -m [branchname]:重命名一个分支。可以使用该指令将一个分支重命名为指定的名称。

  • git branch -a:查看所有分支,包括本地分支和远程分支。

  • git branch --merged:查看已合并到当前分支的分支列表。

  • git branch --no-merged:查看未合并到当前分支的分支列表。

8、git checkout指令

  git checkout 是一个非常重要的Git指令,它用于切换分支、恢复文件以及创建新分支。

  以下是 git checkout 指令的一些常见用法:

  • 切换分支git checkout <branch_name> 这个命令会将HEAD指向指定的分支,并将工作目录切换到该分支。例如,git checkout develop 会切换到名为"develop"的分支。

  • 创建新分支git checkout -b <new_branch_name> 这个命令会创建一个新的分支,并将HEAD指向该分支。例如,git checkout -b feature/new_feature 会创建一个名为"feature/new_feature"的新分支。

  • 恢复文件git checkout -- <file_path> 这个命令会将指定文件恢复到最近一次提交的版本。例如,git checkout – index.html会将"index.html"文件恢复到最近一次提交的版本。

  • 切换到指定文件的不同版本git checkout <commit_hash> -- <file_path> 这个命令可以将指定文件恢复到特定提交的版本。例如,git checkout abc123 – index.html会将"index.html"文件恢复到提交哈希值为"abc123"的版本。

  • 切换到特定标签git checkout <tag_name> 这个命令会将HEAD指向指定的标签,并将工作目录切换到标签所对应的代码版本。例如,git checkout v1.0会将HEAD指向名为"v1.0"的标签

9、git status指令

  git status 是一个用于查看当前仓库状态的命令。它会显示已修改但尚未提交的文件、已删除但尚未提交的文件、已提交但尚未推送的分支等。


总结

  感谢观看,如果觉得有帮助,请给文章点个赞吧,让更多的人看到。🌹 🌹 🌹

在这里插入图片描述

  也欢迎你,关注我。👍 👍 👍

  原创不易,还希望各位大佬支持一下,你们的点赞、收藏和留言对我真的很重要!!!💕 💕 💕 最后,本文仍有许多不足之处,欢迎各位认真读完文章的小伙伴们随时私信交流、批评指正!下期再见。🎉

更多专栏订阅:

  • 😀 【LeetCode题解(持续更新中)】
  • 🌼 【鸿蒙系统】
  • 👑 【Python脚本笔记】
  • 🚝 【Java Web项目构建过程】
  • 💛 【微信小程序开发教程】
  • 【JavaScript随手笔记】
  • 🤩 【大数据学习笔记(华为云)】
  • 🦄 【程序错误解决方法(建议收藏)】
  • 🚀 【软件安装教程】



订阅更多,你们将会看到更多的优质内容!!

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

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

相关文章

带你学会深度学习之循环神经网络[RNN] - 2

前言 笔者写下此系列文章是希望在复习人工智能相关知识同时为想学此技术的人提供一定帮助。 图源网络&#xff0c;所有者可随时联系笔者删除。 代码不代表全部实现&#xff0c;只是为展示模型的关键结构。 与CNN不同&#xff0c;RNN被设计用来处理序列数据。它通过在网络的…

3GPP 协议资料学习和文档下载

一、登录3GPP官网 3GPP – The Mobile Broadband Standard 二、选择Specifications Per TSG Round 三、选择ftp下载路径 四、选择不同阶段的3GPP协议 包含了从1999年到R18,甚至更新到当前最新的协议。 五、查看对应版本的LTE或者5G NR协议 其中LTE射频相关章节为36.521系列&…

小目标检测篇 | YOLOv8改进之增加小目标检测层(针对Neck网络为AFPN)

前言:Hello大家好,我是小哥谈。小目标检测是计算机视觉领域中的一个研究方向,旨在从图像或视频中准确地检测和定位尺寸较小的目标物体。相比于常规目标检测任务,小目标检测更具挑战性,因为小目标通常具有低分辨率、低对比度和模糊等特点,容易被背景干扰或遮挡。本篇文章就…

MP4如何把视频转MOV格式? MP4视频转MOV格式的技巧

在现代的数字媒体时代&#xff0c;视频格式转换成为了许多用户必须掌握的技能。特别是将MP4视频转换为MOV格式&#xff0c;这对于需要在Apple设备上播放或编辑视频的用户来说尤为重要。本文将详细介绍如何将MP4视频转换为MOV格式&#xff0c;帮助读者轻松应对不同设备和平台的需…

三端可调正稳压器集成电路D317——输出电压范围是1.2V至37V,负载电流最大为1.5A

D317大电流可调稳压电路 1、 概述&#xff1a; D317是一款三端可调正稳压器集成电路&#xff0c;其输出电压范围是1.2V至37V&#xff0c;负载电流最大为1.5A。它的使用非常简单&#xff0c;仅需两个外接电阻来设置输出电压。此外&#xff0c;它的电压线性度和负载调整率也比标准…

使用Python制作一个批量查询搜索排名的SEO免费工具

搭建背景 最近工作中需要用上 Google SEO&#xff08;搜索引擎优化&#xff09;&#xff0c;有了解过的朋友们应该都知道SEO必不可少的工作之一就是查询关键词的搜索排名。关键词少的时候可以一个一个去查没什么问题&#xff0c;但是到了后期&#xff0c;一个网站都有几百上千…

浏览器工作原理与实践--渲染流程(上):HTML、CSS和JavaScript,是如何变成页面的

在上一篇文章中我们介绍了导航相关的流程&#xff0c;那导航被提交后又会怎么样呢&#xff1f;就进入了渲染阶段。这个阶段很重要&#xff0c;了解其相关流程能让你“看透”页面是如何工作的&#xff0c;有了这些知识&#xff0c;你可以解决一系列相关的问题&#xff0c;比如能…

获取第三方小程序指定页面的path

获取第三方小程序指定页面的path wx.navigateToMiniProgramappIdpathwx.navigateToMiniProgram 在开发小程序时需要跳转到第三方小程序指定页面时,需通过wx.navigateToMiniProgram方法完成。其中有两个主要参数appId和path,文本以问卷星为例,分享两者获取方法。 appId 在…

使用Python批量实现文件夹下所有Excel文件的第二张表合并

目录 一、前言 二、准备工作 三、实现步骤 遍历文件夹获取所有Excel文件 读取每个Excel文件的第二张表 合并所有表格 主函数 四、案例实践 五、注意事项 六、扩展与改进 七、总结 在数据处理和分析中&#xff0c;经常需要对多个Excel文件进行批量操作&#xff0c;特…

代码随想录阅读笔记-栈与队列【滑动窗口最大值】

题目 给定一个数组 nums&#xff0c;有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回滑动窗口中的最大值。 进阶&#xff1a; 你能在线性时间复杂度内解决此题吗&#xff1f; 提示&am…

如何提升FFmpeg 1‰的转码性能

在8K视频编解码特别是解码部分&#xff0c;我做了一些优化工作&#xff0c;转码速度提升了50%以上。专家们评价曰&#xff1a;“主要围绕算法并行度的优化&#xff0c;属于算法性能优化的常规手段&#xff0c;在创新性和技术难度方面的体现较为一般”。评价过于犀利&#xff0c…

一文道破将bean注入到Spring中的几种方式

前言&#xff1a; 前两天有学妹问我如何将bean注入到Spring中&#xff0c;虽问题较简单&#xff0c;但还是写此文以告之。 在Java的Spring框架中&#xff0c;将bean注入到容器中是核心概念之一&#xff0c;这是实现依赖注入的基础。Spring提供了多种方式来将bean注入到容器中…

MySQL高可用解决方案――从主从复制到InnoDB Cluster架构

2024送书福利正式起航 关注「哪吒编程」&#xff0c;提升Java技能 文末送5本《MySQL高可用解决方案――从主从复制到InnoDB Cluster架构》 大家好&#xff0c;我是哪吒。 爱奇艺每天都为数以亿计的用户提供7x24小时不间断的视频服务。通过爱奇艺的平台&#xff0c;用户可以…

力扣:290. 单词规律

前言&#xff1a;剑指offer刷题系列 问题&#xff1a; 给定一种规律 pattern 和一个字符串 s &#xff0c;判断 s 是否遵循相同的规律。 这里的 遵循 指完全匹配&#xff0c;例如&#xff0c; pattern 里的每个字母和字符串 s 中的每个非空单词之间存在着双向连接的对应规律…

docker推拉时的数据交换详解

前言 docker用了这么久了, 有没有想过, 在执行docker push 和 docker pull命令的时候, 数据是如何传递的呢? 换句话说, 如果要实现一个镜像仓库, 针对推拉的服务, 如何实现接口呢? 根据OCI 分发规范文档 的描述, 已经对整个推拉过程中要调用的接口有描述了. 但是, 纸上学来…

CNN、Transformer、Uniformer之外,我们终于有了更高效的视频理解技术

ChatGPT狂飙160天&#xff0c;世界已经不是之前的样子。 新建了人工智能中文站https://ai.weoknow.com 每天给大家更新可用的国内可用chatGPT资源 发布在https://it.weoknow.com 更多资源欢迎关注 视频理解因大量时空冗余和复杂时空依赖&#xff0c;同时克服两个问题难度巨大…

力扣每日一题 2024/3/24 零钱兑换

题目描述 用例说明 思路讲解 动态规划五步法 第一步确定dp数组的含义&#xff1a;dp[i]为凑到金额为i所用最少的硬币数量 第二步确定动态规划方程&#xff1a;凑足金额为j-coins[i]所需最少的硬币个数为dp[j-coins[i]]&#xff0c;那凑足金额为j所用的最少硬币数为dp[j-coin…

怎么将文件快速生成二维码?文件二维码的在线生成技巧

现在越来越多的人都开始通过二维码的方式来传递文件&#xff0c;将word、pdf、excel、pdf等格式的文件通过扫码的方式展示或者下载文件&#xff0c;这种方式有很多的优势&#xff0c;包括传播速度快成本低&#xff0c;只需要生成一张二维码图片&#xff0c;就可以让其他人能够同…

Prompt-RAG:在特定领域中应用的革新性无需向量嵌入的RAG技术

论文地址&#xff1a;https://arxiv.org/ftp/arxiv/papers/2401/2401.11246.pdf 原文地址&#xff1a;https://cobusgreyling.medium.com/prompt-rag-98288fb38190 2024 年 3 月 21 日 虽然 Prompt-RAG 确实有其局限性&#xff0c;但在特定情况下它可以有效地替代传统向量嵌入 …

QTableWidget删除单元格

如果单元格内有内容&#xff0c;可以使用函数selectedItems() 获取有内容行的一个链表 QList<QTableWidgetItem *> items ui->qtableWidget->selectedItems(); //选中有内容的行可选择有内容的行int count items.count();for(int i 0 ; i < count; i){ …