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

news2024/11/25 6:59:58

请添加图片描述

  • 💌 所属专栏:【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.coloradmin.cn/o/1545735.html

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

相关文章

【python】flask模板渲染引擎Jinja2,使得前后端交互更加便捷

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

2010年之前电脑ubuntu安装nvidia驱动黑屏处理

装好驱动 仿真fps直接到60Hz 陈旧设备 都是非常老旧的电脑&#xff0c;没钱换新电脑&#xff0c;就这么穷…… 电脑详细配置&#xff1a; 冲动 想装显卡驱动提升一下性能&#xff0c;结果……黑了 黑习惯了也无所谓&#xff0c;几分钟就能解决&#xff0c;关键还是太穷&…

【C】盛最多水的容器(双指针)

盛最多水的容器 原题目链接:点击跳转 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和(i, height[i]) 。 找出其中的两条线&#xff0c;使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说…

数据结构-树-006

1二叉树 1.1目标二叉树 前序遍历&#xff1a;ABDHIEJCFKG 中序遍历&#xff1a;HDIBEJAFKCG 后序遍历&#xff1a;HIDJEBKFGCA 层序遍历&#xff1a;ABCDEFGHIJK运行结果&#xff1a; 运行结果符合目标二叉树的深度优先&#xff08;前序遍历&#xff0c;中序遍历&#xff0c;…

【c++】【STL】stack类、queue类、deque类详解及模拟

&#x1fa90;&#x1fa90;&#x1fa90;欢迎来到程序员餐厅&#x1f4ab;&#x1f4ab;&#x1f4ab; 今日主菜&#xff1a;stack和queue&#xff0c;deque类 主厨&#xff1a;邪王真眼 所属专栏&#xff1a;c专栏 主厨的主页&#xff1a;Chef‘s blog 这可是…

Endnote(作者,年份)文中引用显示‘and etal‘与‘和 等‘

软件版本&#xff1a;Endnote X9.1&#xff0c;样式&#xff1a;Harvard&#xff0c;其余使用(作者&#xff0c;年份)的样式均可&#xff0c;GBT7714就有作者年份类型 本教程适用于X系列~ Endnote20及以上版本请移步另一条博文&#xff0c;指路&#xff1a;&#xff08;我还没…

“双碳”目标下资源环境中的可计算一般均衡(CGE)模型教程

原文链接&#xff1a;“双碳”目标下资源环境中的可计算一般均衡&#xff08;CGE&#xff09;模型https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247599079&idx4&sn82ea6c6f506cd20d1e0cd590faaa0611&chksmfa820200cdf58b16dc5b79746901cc9a4048b46db5…

《自动机理论、语言和计算导论》阅读笔记:p5-p27

《自动机理论、语言和计算导论》学习第2天&#xff0c;p5-p27总结&#xff0c;总计23页。 一、技术总结 1.集合 (1)commutative law of union. (2)distribute law of union. 2.归纳法(induction) & 演绎法(deduction) (1)归纳法&#xff1a;从许多个别的事实或原理中…

【zlm】问题记录:chrome更新引起的拉不出webrtc; 证书校验引起的放几秒中断

目录 chrome更新引起的拉不出webrtc 证书校验引起的放几秒中断 chrome更新引起的拉不出webrtc 【zlm】最新的chrome版本中的报错&#xff1a; 我有个问题event.js:8 [RTCPusherPlayer] DOMException: Failed to execute setRemoteDescription on RTCPeerConnection: Failed …

LabVIEW焓差试验室流量计现场自动校准系统

LabVIEW焓差试验室流量计现场自动校准系统 在现代工业和科研领域&#xff0c;流量计的准确性对于保证生产过程的质量和效率非常重要。开发了一种基于LabVIEW的焓差试验室流量计现场自动校准系统&#xff0c;通过提高流量计校准的准确性和效率。 在空调器空气焓值法能效测量装…

hololens 2 投屏 报错

使用Microsoft HoloLens投屏时&#xff0c;ip地址填对了&#xff0c;但是仍然报错&#xff0c;说hololens 2没有打开&#xff0c; 首先检查 开发人员选项 都打开&#xff0c;设备门户也打开 然后检查系统–体验共享&#xff0c;把共享都打开就可以了

【k8s】kubeasz 3.6.3 + virtualbox 搭建本地虚拟机openeuler 22.03 三节点集群 离线方案

kubeasz项目源码地址 GitHub - easzlab/kubeasz: 使用Ansible脚本安装K8S集群&#xff0c;介绍组件交互原理&#xff0c;方便直接&#xff0c;不受国内网络环境影响 拉取代码&#xff0c;并切换到最近发布的分支 git clone https://github.com/easzlab/kubeasz cd kubeasz gi…

C++细节

背景知识&#xff1a; 面向对象的编程中&#xff0c;类&#xff08;Class&#xff09;是创建对象的蓝图或模板&#xff0c;它包含了数据&#xff08;通常称为属性或变量&#xff09;和行为&#xff08;通常称为方法或函数&#xff09;。将数据封装为私有&#xff08;private&am…

【Java】:类和对象

1.面向对象的初步认知 1.1 什么是面向对象 Java是一门面向对象的语言&#xff0c;在面向对象的世界里&#xff0c;一切皆为对象。面向对象是解决问题的一种思想&#xff0c;主要依靠对象之间的交互完成一件事情。用面向对象的思想来涉及程序&#xff0c;更符合人们对事物的认知…

CDNS PCIe VIP debug info

1. TLP payload的顺序是反向的&#xff0c;即大小端反的&#xff0c;比如下面的denalirc打印的信息看&#xff0c;pl是我们发TLP时的配置&#xff0c;Cfg才是真正的data顺序。 而seq写的时候如下&#xff1a;可以看到payload[2]时第三个8bit payload&#xff0c;但是我们是想配…

JS加密解密之应用如何保存到桌面书签

前言 事情起因是这样的&#xff0c;有个客户解密了一个js&#xff0c;然后又看不懂里边的一些逻辑&#xff0c;想知道它是如何自动拉起谷歌浏览器和如何保存应用到书签的&#xff0c;以及如何下载应用的。继而诞生了这篇文章&#xff0c;讲解一下他的基本原理。 渐进式Web应用…

UE5学习日记——蓝图节点前缀关键字整理

一、起因 节点如海&#xff0c;中英文翻译的时候还是有差别的&#xff0c;比如&#xff1a; 同一个中文&#xff0c;可能在英文里完全不同&#xff0c;连出现位置可能都不一样 附加 Attach Actor To Component&#xff08;将Actor附加到组件&#xff09;Append Array&#xf…

【竞技宝】DOTA2-PGL联赛:niu神无解 LGD2-0轻松击败DH

北京时间2024年3月26日,PGL联赛中国区的比赛在昨日正式打响,首日共进行了四场胜者组首轮的比赛,第四场比赛由LGD对阵DH。本场比赛,DH两局都在前中期和LGD有来有回,但niu的中期节奏完全摧毁了DH,最终LGD2-0轻松击败DH。以下是本场比赛的详细战报。 第一局: 首局比赛,LGD在天辉方…

Python Flask框架 -- flask-migrate迁移ORM模型

# 之前使用的这个db.create_all()很有局限性&#xff0c;它不能把在class里修改的东西同步上数据库&#xff0c;所以不用了 # with app.app_context(): # 请求应用上下文 # db.create_all() # 把所有的表同步到数据库中去 例如&#xff0c;在User类中增加一个email字段&…

selenium自动化测试-unittest框架

unittest框架的优点 (1)能够组织多个用例去执行 (2)提供丰富的断言方法 (3)能够生成测试报告 unittest框架的核心要素 1. TestCase测试用例 TestCase(测试用例)&#xff0c;最小的测试单元&#xff0c;创建的测试类需要继承该基类 步骤&#xff1a; &#xff08;1&#x…