【随笔】Git -- 高级命令(中篇)(七)

  • 💌 所属专栏:【Git】

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

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

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

文章目录

  • 前言
  • [一、Git 高级命令](#一、Git 高级命令)
      • [1、git revert指令](#1、git revert指令)
      • [2、git cherry-pick指令](#2、git cherry-pick指令)
      • [3、git rebase 指令](#3、git rebase 指令)
      • [4、git tag 指令](#4、git tag 指令)
        • [(1) 创建标签](#(1) 创建标签)
        • [(2) 列出标签](#(2) 列出标签)
        • [(3) 查看特定标签的信息](#(3) 查看特定标签的信息)
        • [(4) 删除标签](#(4) 删除标签)
        • [(5) 将标签推送到远程仓库](#(5) 将标签推送到远程仓库)
        • [(6) 删除远程仓库上的标签:](#(6) 删除远程仓库上的标签:)
  • 总结

前言

大家好,又见面了,我是夜阑的狗🐶,本文是专栏【Git】专栏的第7篇文章;

这是今天学习到Git高级命令(中篇)💖💖💖,开启新的征程,记录最美好的时刻🎉,每天进步一点点。

专栏地址:【Git】 , 此专栏是我是夜阑的狗对Git,Gitee等工具使用过程的总结,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。

如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。


一、Git 高级命令

前面已经给学习Git 的一些高级命令,但命令有点多,只能分批按序学习。接下来其他高级命令吧。这里给大家推荐一个好用的 Git在线练习地址。话不多说,让我们原文再续,书接上回吧。

1、git revert指令

该指令用于撤销指定提交的更改,并创建一个新的提交来保存撤销操作的结果。这个新的提交会包含撤销操作的更改,而且会成为当前分支的最新提交。

以下是该指令的基本用法::

python 复制代码
git revert <commit>

其中,[<commit>]用于指定一个或多个提交的标识符,例如提交的哈希值或分支名称。如果省略[<commit>]参数,则默认将工作目录中的修改与暂存区的内容进行比较。

  • 撤销最后一个提交
python 复制代码
git revert HEAD
  • 撤销之前的某个特定提交
python 复制代码
git revert abc123

总之,git revert 是一个安全的撤销提交的方法,因为它不会改变提交历史,而是通过创建一个新的撤销提交来实现撤销操作。但是,如果需要彻底删除某个提交,可以使用git rebase或git reset等指令。

2、git cherry-pick指令

该指令用于选择一个或多个指定的提交,并将它们应用到当前分支上,作为新的提交。以下是git cherry-pick指令的基本用法:

python 复制代码
git cherry-pick <commit1> [<commit2> ...]

其中,<commit1>、<commit2>等是要选择的提交的SHA值或提交引用。如果要将多个提交应用到当前分支上,可以列出多个提交的哈希值,命令会按照列出的顺序一个接一个地应用这些提交。

需要注意的是,如果在应用提交的过程中发生冲突,Git会提示你解决冲突并手动完成 cherry-pick 操作。

3、git rebase 指令

该指令用于将一个分支的提交逐个应用到另一个分支上,以使得提交历史更加整洁。以下是该指令的基本用法:

python 复制代码
git rebase <branch>

其中 <branch> 参数是要将当前分支的提交应用到的目标分支。执行该指令后,Git会将当前分支的各个提交逐个应用到目标分支上,创建新的提交。这样,目标分支就会包含当前分支的最新更改,而且提交历史线会更加整洁地呈现出一条直线。

需要注意的是,git rebase 不会保留原始分支上的提交。相反,它会将提交逐个应用到目标分支上,并创建新的提交。如果在 git rebase 的过程中发生冲突,需要手动解决冲突并使用 git add 命令将解决后的更改添加到暂存区。然后,使用 git rebase --continue 指令继续进行 git rebase 的操作。

由于git rebase会改变提交历史,因此在团队协作的项目中,不建议对已经推送到远程仓库的分支进行rebase操作,以避免造成不必要的混乱和冲突。

4、git tag 指令

该指令用于在 Git 仓库中创建、列出、删除或验证标签。标签是一个永久性的指向特定提交的引用,通常用于标记发布版本。使用标签可以方便地标记一些重要的里程碑或版本发布,同时也可以作为引用特定提交的快捷方式。以下是该指令的一些常用用法:

(1) 创建标签

可以使用 git tag <tagname>命令创建一个轻量级标签,或者使用 git tag -a <tagname> -m "<message>" 命令创建一个带有附注的标签。

  • 创建一个轻量级标签
python 复制代码
git tag v1.0.0  
  • 创建一个带有附注的标签
python 复制代码
git tag -a v1.0.0 -m "Release version 1.0.0" 
(2) 列出标签

可以使用git tag命令列出仓库中的所有标签

python 复制代码
git tag     
(3) 查看特定标签的信息

可以使用 git show <tagname> 命令查看指定标签的详细信息。

python 复制代码
git show v1.0.0             // 查看v1.0.0标签的详细信息
(4) 删除标签

可以使用 git tag -d <tagname> 命令删除指定的标签。

python 复制代码
git tag -d v1.0.0          // 删除v1.0.0标签
(5) 将标签推送到远程仓库

默认情况下,git push 命令不会将标签推送到远程仓库。可以使用 git push origin <tagname> 命令将指定的标签推送到远程仓库。

python 复制代码
git push origin v1.0.0     // 将v1.0.0标签推送到远程仓库
(6) 删除远程仓库上的标签:

使用 git push origin 命令将远程仓库的指定的标签进行删除。

python 复制代码
git push origin --delete v1.0.0 // 删除v1.0.0标签

需要注意的是,标签是与提交相关联的,而不是与分支。因此,在创建标签时,不需要指定分支。标签默认是基于当前的HEAD指向的提交创建的。


总结

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

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

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

更多专栏订阅:

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

相关推荐
int WINGsssss12 小时前
Git使用
git
用户07605303543814 小时前
Git Revert:安全移除错误提交的方式
git
Good_Starry1 天前
Git介绍--github/gitee/gitlab使用
git·gitee·gitlab·github
云端奇趣1 天前
探索 3 个有趣的 GitHub 学习资源库
经验分享·git·学习·github
F_D_Z1 天前
【解决办法】git clone报错unable to access ‘xxx‘: SSL certificate problem:
网络·git·网络协议·ssl
等风来不如迎风去2 天前
【git】main|REBASE 2/6
git
艾伦~耶格尔2 天前
IDEA 配置 Git 详解
java·ide·git·后端·intellij-idea
云兮杜康2 天前
IDEA中用过git之后文件名颜色全变红
java·git·intellij-idea
睡不醒的小泽2 天前
git merge 和 git rebase
git
艾伦~耶格尔2 天前
Git 下载及安装超详教程(2024)
git·gitee·码仓