热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Git分支和版本(标签)

目录一、Git分支1.1四大环境(分支)1.1.1分支和标签的关系1.2分支的作用1.3演示分支1.3.1在Gitee中创建项目1.3.2克隆到本地1

目录

一、Git分支

        1.1 四大环境(分支)

                1.1.1 分支和标签的关系

        1.2 分支的作用

        1.3 演示分支

                1.3.1 在Gitee中创建项目

                1.3.2 克隆到本地

                1.3.3 建立分支

                1.3.4 切换分支

                1.3.5 git push origin 指定分支

                1.3.6 git checkout -b 指定分支

                1.3.7 git merge 指定分支

                1.3.8 git branch -d 指定分支

        1.4 总结指令

二、标签管理

        2.1 查看标签git tag

        2.2 创建标签git tag v1.0.0.20220117_alpha

        2.3 推送标签 git push origin 标签名

        2.4 删除标签 git tag -d 标签名




一、Git分支


1.1 四大环境(分支)

dev/test/pre/pro(即master)

开发环境、测试环境、灰度环境、生产环境




1.1.1 分支和标签的关系


dev = alpha

test = beta

pre = rc

pro = r



1.2 分支的作用


如果我们准备开发一个新功能,但是需要两周才能完成,第一周我们写了50%的代码,如果立刻提交,但由于代码还没写完,

不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又可能存在代码丢失的风险。


然而分支的出现就解决了这个问题:

我们创建了一个属于自己的分支,别人看不到,还继续在原来的分支上正常工作,

而我们在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作


1.3 演示分支


1.3.1 在Gitee中创建项目


1.3.2 克隆到本地


1.3.3 建立分支

我们其实可以看到,我们现在一直都有的一条分支,也是唯一的一条分支,那就是master;

不信我们用指令看看所有的分支:git branch

在前面我们也已经知道,在实际开发项目中,只拥有一条分支是非常不便的;所以我们就需要针对四大环境,也创建对应的分支来进行开发;

我们一般开发都是在开发环境中进行的,所以我们首先建立一个开发环境:dev


1.3.4 切换分支

创建分支后,我们还要学会如何切换分支,输入指令:

git checkout dev 

然后我们输入vi,编写一点代码;

然后Git三部曲进行提交:

这个时候我们切换分支,看看文件夹的不同之处:

输入 git checkout master

从这点就可以发现,不同分支进行的开发工作是互不干扰的,这也就是解决我们多人开发存在的问题的关键;


1.3.5 git push origin 指定分支

可能会有人疑问,那在仓库中,如何区分不同分支的代码?


其实不用担心,当我们提交了某个Gitee中不存在的分支代码时,它会自动帮我们建立一个分支并且存放我们提交的代码!


我们测试:

原本只有一个分支的Gitee

输入 git push origin 指定分支 提交dev环境的代码后:

并且不同的分支管理不同的内容

dev

master


1.3.6 git checkout -b 指定分支

输入这个指令则会创建一个分支并且切换到这个分支;

我们输入 git checkout -b test


1.3.7 git merge 指定分支

当我们开发完成后,就应该将项目合并到生产环境进行测试,再进行发布;

这时我们就需要用到合并指令:git merge test

在要合并到的分支执行:

这个时候我们的主分支就有了我们前面建立的两个文件:

最后再看看我们的删除分支的指令:


1.3.8 git branch -d 指定分支

我们删除测试环境分支:

输入 git branch -d test


1.4 总结指令

最后,我们总结一下所有用到的一些关于Git分支的指令;


git branch 查看分支

git branch dev 创建分支

git checkout dev 切换分支

git push origin test 将当前分支推送到远程的test分支

git checkout -b pre 创建并且切换分支

git branch -d test 删除分支

git merge test 将分支内容合并





二、标签管理


2.1 查看标签git tag


2.2 创建标签git tag v1.0.0.20220117_alpha

创建一个标签:

推送标签到远程

然后这个时候,开发人员又对项目进行修改,修复了一个Bug

然后Git三部曲进行提交:

然后我们打上它的标签版本:git tag v1.0.1.20220209_beta

再推送到Gitee上面:git push origin v1.0.1.20220209_beta

等我们全部开发好了后,把项目合并到主分支中:

然后发布正式版本:git tag v1.0.1.20220209.r


2.3 推送标签 git push origin 标签名

每一次我们发布的版本都会保存,都是有迹可循的;


2.4 删除标签 git tag -d 标签名

输入指令 git tag -d v1.0.0.20220117_alpha


推荐阅读
  • 本文深入探讨了 Git 与 SVN 的高效使用技巧,旨在帮助开发者轻松应对版本控制中的各种挑战。通过详细解析两种工具的核心功能与最佳实践,读者将能够更好地掌握版本管理的精髓,提高开发效率。 ... [详细]
  • 什么是git-lfsGithub对文件大小的限制如果你在命令行用gitpush50MB的文件,你会收到一个warning,但是你仍然可以正常push,但是100MB的时候就无法 ... [详细]
  • 六百字读懂
    译注:来自HackerSchool的MaryRoseCook实现了一个纯JavaScript(Node.js)写就的Git:Gitlet,包含了最主要的一些命令。这个项目一是为了了 ... [详细]
  • gitcommit-m提交所有本地文件 ... [详细]
  • Day 5 20190120 老男孩python学习第5天 内容整理
    今天继续看MasteringPycharm的视频,一个半小时看git的教学视频:视频1小时44分钟,看了2个半小时以上https:www.youtube ... [详细]
  • Git核心命令全解析:掌握日常开发必备技能
    本文深入解析了 Git 的核心命令,帮助开发者掌握日常开发中的必备技能。从 `git init` 命令开始,介绍了如何将当前目录转变为 Git 可管理的仓库。接着详细讲解了 `git add` 命令的使用方法,包括如何将文件(如 `readme.txt`)添加到暂存区,以便在后续提交时进行版本控制。此外,还探讨了其他关键命令,如 `git commit` 和 `git push`,以确保代码变更能够安全地保存和同步到远程仓库。通过这些命令的综合应用,开发者可以更加高效地管理和协作项目。 ... [详细]
  • 使用 `git stash` 可以将当前未提交的修改保存到一个临时存储区,以便在后续恢复工作目录时使用。例如,在处理中间状态时,可以通过 `git stash` 命令将当前的所有未提交更改推送到一个新的储藏中,从而保持工作目录的整洁。此外,本文还将详细介绍如何解决 `git stash pop` 时可能出现的冲突问题,帮助用户高效地管理代码变更。 ... [详细]
  • PyThon_Swift 势必取代 Python?
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Swift势必取代Python?相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 前言之前一直把Git当做个人版本控制的工具使用,现在由于工作需要,需要多人协作维护文档,所以去简单了解了下Git多人协作的工作流程,发现还真的很多讲解的,而且大神也已经讲解得很清楚了,这里就做一个 ... [详细]
  • Git基础操作指南:掌握必备技能
    掌握 Git 基础操作是每个开发者必备的技能。本文详细介绍了 Git 的基本命令和使用方法,包括初始化仓库、配置用户信息、添加文件、提交更改以及查看版本历史等关键步骤。通过这些操作,读者可以快速上手并高效管理代码版本。例如,使用 `git config --global user.name` 和 `git config --global user.email` 来设置全局用户名和邮箱,确保每次提交时都能正确标识提交者信息。 ... [详细]
  • 这篇文章将为大家详细讲解有关SpringCloudConfig如何实现分布式配置中心,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章 ... [详细]
  • 速查!Git常用命令大全【汇总推荐】
    开发工具|gitgit开发工具-gitgit常用命令网站源码分享资源,写vscode插件详细教程,ubuntu突然卡,war放tomcat哪,应聘爬虫岗位,php获取数组索引值,张 ... [详细]
  • sourcemointor评价代码
    文章目录0前言1流程操作2评价名词3具体信息3.1java文件详细视图3.2检查点视图3.3函数视图3.4函数复杂度与频率视图0前言SourceMonitor是一款免费的代码品质 ... [详细]
  • 关于ScrumXPDevOps的学习
    最近听了ECUG大会上孙敬云老师的分享感觉受益匪浅,毕竟大学课本上只讲到瀑布模型就没有下文了,工作以后一直贯彻的都是Scrum路线,一直也没有时间好好的去学习整理这部分的知识,直到 ... [详细]
  • 使用在线工具jsonschema2pojo根据json生成java对象
    本文介绍了使用在线工具jsonschema2pojo根据json生成java对象的方法。通过该工具,用户只需将json字符串复制到输入框中,即可自动将其转换成java对象。该工具还能解析列表式的json数据,并将嵌套在内层的对象也解析出来。本文以请求github的api为例,展示了使用该工具的步骤和效果。 ... [详细]
author-avatar
AK7000
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有