git学习——tags、release、drop commit

最近一直都在持续学习git相关内容,越来越发现git是一个十分适合大型项目和团队协作进行开发的工具,掌握好了对于我们参与项目维护和开发产品帮助很大,所以要不断持续学习git。

tags & releases

tag的创建

当我们在git版本控制中遇到了一些里程碑的commit,例如当我们的产品主要功能开发完成,可以交付给客户的时候,我们就可以创建一个tag来作为一个大版本标记,我们就可以在以后的某个时刻,快速定位一个开发阶段,方便我们创建一个branch或者checkout。

例如下面这张图,我们就可以在pycharm中选择一个commit,然后创建一个tag进行标记。

但是需要注意的是,我们在ide中创建了tag后,在我们push到远程仓库的时候,ide并不会默认将你创建的tag推送到远程仓库。

所以我们就需要去在push的界面将这个tag push到远程仓库去。例如pycharm中:

然后我们就可以在GitHub中看到这个tag。此时就是我们创建release的时候了。

release的使用

刚刚说了tag一般是意味着我们的开发进程中具有一定成果或者里程碑的开发阶段,我们就很有可能将其作为一个发行版交付给用户,这时我们就需要创建一个release,表示是当前版本最终的发行版,是一个功能完整,逻辑清晰的状态,可供下载了。

此时我们就可以选择一个tag作为发行版,将其发布在我们的项目界面上。

在这个页面我们就可以选择一个被push到远程仓库的tag作为发行版,然后在下面可以写你的release notes,上传你的编译好的二进制文件方便用户下载。

创建完成后就可以在GitHub页面看到你的发行版了。

错误commit怎么办

在项目实际开发进程中,我们可能会遇到不小心错误的将更改commit,但是并未push到远程仓库,此时我们就可以使用一些方法修改我们上次的commit,将其drop掉。

不少ide都提供了这个后悔药,例如pycharm中

这里的drop commit就是表示我们可以将这个commit丢弃掉,我们的提交历史就像是从未有过这个commit一样,我们就可以保证我们的commit历史干净整洁,方便我们进行后期追踪和查看。

原理

相关推荐
xuhaoyu_cpp_java27 分钟前
项目学习(三)代码生成器
java·经验分享·笔记·学习
worilb1 小时前
Spring Cloud 学习与实践(8):Spring Cloud Gateway 统一入口、路由转发与双重跨域故障演练
学习·spring·spring cloud
初圣魔门首席弟子1 小时前
学习工作方法论与任务执行计划
学习
恋喵大鲤鱼1 小时前
git reflog
git·git reflog
虾壳云智能1 小时前
详解 OpenClaw 部署难点 绕过安全拦截与路径报错解决方案
人工智能·github·open claw教程·open claw一键部署
skywalk81631 小时前
记录段言的开发过程
开发语言·学习·编程
知识分享小能手1 小时前
Hadoop学习教程,从入门到精通, MapReduce分布式计算框架 — 完整知识点与代码案例(4)
hadoop·学习·mapreduce
YM52e2 小时前
鸿蒙HarmonyOS ArkTS 实战:教师座椅出入记录 APP 从零到一
学习·华为·harmonyos·鸿蒙系统
踏着七彩祥云的小丑2 小时前
嵌入式测试第 32 天:升级测试:固件OTA升级、断点续传、回滚测试
单片机·嵌入式硬件·学习
小陈phd2 小时前
Text2SQL智能体学习笔记(二)——NL2SQL落地的隐形基石:元数据库
数据库·笔记·学习