Git之分支与版本

目录

一、Git分支和标签的命名规范 

1.分支 

①分支在实际中有什么用?

②四个环境以及各自的功能特点 

③分支策略  

2.标签 

3.分支与标签的关系 

二、分支管理 

1.分支相关命令

① 查看分支,此命令会列出所有分支,当前分支前面会标一个*号 

② 创建分支 

③ 切换分支 git checkout name

 ④ git push origin <远程分支名>  将本地当前分支 推送到远程指定分支上

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

⑥ 删除分支  git branch -d name(分本地和远程)

⑦ 合并某分支到当前分支  git merge name

三、tag标签管理

 1.Git如何给branch大tag

① 查看所有标签  git tag

② 创建标签 git tag 主版本号.次版本号.修订号_类型标签

③ 推送标签到远程 git push origin 主版本号.次版本号.修订号_类型标签

④ 测试版本 

⑤ 不保存编辑    :q!

⑥ 正式版本 

⑦ 删除标签


一、Git分支和标签的命名规范 

1.分支 

dev/test/pre/pro(即master)

        在企业中大气一点的公司会有四种环境说明非常正规,稍微正规的公司一般都会有三个环境,除了灰度环境没有意外,其他三个环境都有,一万以上的公司才会有灰度环境,如果连三种环境都没有那么这家软件公司是不正规的 

①分支在实际中有什么用?

假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。

 怎么办?

现在有了分支,就不用怕。你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,即安全,又不影响别人工作

②四个环境以及各自的功能特点 

 四个环境分别是:dev、test、pre、pro(master),中文名字:开发环境、测试环境、灰度环境、生产环境

   dev环境:开发环境,外部用户无法访问,开发人员使用,版本变动很大。
   test环境:测试环境,外部用户无法访问,专门给测试人员使用的,版本相对稳定
   pre环境:灰度环境,外部用户可以访问,但是服务器配置相对低,其它和生产一样。
   pro(master)环境:生产环境,面向外部用户的环境,连接上互联网即可访问的正式环境

③分支策略  

在实际开发中,我们应该按照几个基本原则进行分支管理:
   1.首先,pro分支(即master)应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活;

   2.那在哪干活呢?干活都在dev分支上,也就是说,dev分支是不稳定的,到某个时候,比如1.0版本发布时,
     再把dev分支合并到master上,在master分支发布1.0版本

   3.修复bug时,我们会通过创建新的bug分支(即test)进行修复,然后合并,最后删除;

   4.当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场

2.标签 

        Tag格式:主版本号.次版本号.修订号-类型标签,其中类型标签可为:alpha、beta、rc、r 。

        Tag示例:1.0.0-alpha、1.0.0-beta、1.0.0-rc、1.0.0-r

        注1:有的公司在版本命名示,前面加v,"-" 替换成 "_" ,更加详细一点还可以在修订号后面添加发布日期  比如:v1.0.0.20220924_r,这都是可以的

        我们可以通过版本号就知道它对应的是什么样的版本

        后缀带的是alpha说明是共开发人员测试、开发的一个版本

        后缀是beta共测试人员测试的一个版本

        后缀是rc就代表的是灰度版本

        后缀带的是r就是正式版本        r代表的是release 发布的意思

3.分支与标签的关系 

dev ————> alpha 

test ————> beta

pre ————> rc

pro ————> r 

二、分支管理 

1.分支相关命令

① 查看分支,此命令会列出所有分支,当前分支前面会标一个*号 

git branch        //查看本地分支

git branch -a        //查看远程分支

② 创建分支 

git branch name        //仅仅保存本地,远程还需要push

git push <远程仓库名><远程分支名> 

 

③ 切换分支 git checkout name

 

 这里就会发现分支与分支之间在本地都不会相互影响

 ④ git push origin <远程分支名>  将本地当前分支 推送到远程指定分支上

 

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

 

⑥ 删除分支  git branch -d name(分本地和远程)

git branch        //查看本地分支

git branch       //删除本地分支

git branch -a        //查看远程分支

git push origin --delete dev         //删除远程分支

 

⑦ 合并某分支到当前分支  git merge name

注意:当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提价,合并完成。

        使用用 git log --graph 命令可以看到分支合并图。 

 

 

我们把分支提交到远程仓库去 

在我们的远程仓库就有三个分支了,都是一样的了

三、tag标签管理

 1.Git如何给branch大tag

发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。所以,标签也是版本库的一个快照。

① 查看所有标签  git tag

注1:标签标示按时间顺序列出,而是按字母排序的。可以用 git show <tagname> 查看标签信息

② 创建标签 git tag 主版本号.次版本号.修订号_类型标签

首先,切换到需要打标签的分支上,列如:dev ,再创建标签

git branch

git checkout dev

 v1.0.0.20220925_alpha

  注1:有的公司在版本命名示,前面加v,"-" 替换成 "_" ,更加详细一点还可以在修订号后面添加发布日期  比如:v1.0.0.20220924_r,这都是可以的

③ 推送标签到远程 git push origin 主版本号.次版本号.修订号_类型标签

注1:因为创建的标签都只存储在本地,不会自动推送到远程,还需要手动推送 

目前是开发版本的 

 

④ 测试版本 

 

 第一个版本是项目开发完了之后,你提交的是开发人员的版本,然后测试人员测试了这个版本,然后觉得有问题,然后开发人员修复了,然后就开发了第二版本这个版本是测试版本,就改了修订版本后,测试人员觉得没有问题了,就上线,然后就打个正式版。

⑤ 不保存编辑    :q!

⑥ 正式版本 

最终就有三个标签了 

 

⑦ 删除标签

 

1.删除本地tag        git tag -d v1.0.0.20220925_alpha

注1:因为创建的标签都只存储在本地,不会自动推送到远程。所以,标签可以在本地直接删除 

2.删除远程tag

1.如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除

git tag -d v1.0.0.20220925_alpha

2.然后,再从远程删除。删除命令也是push,但是格式如下:

git push origin :refs/tags/v1.0.0.20220925_alpha

也可以通过在码云gitee上面直接进行删除

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值