文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

玩转Git-Flow工作流-分支解析

2024-12-03 11:10

关注

本文转载自微信公众号「UP技术控」,作者conan5566 。转载本文请联系UP技术控公众号。  

 概述

搞开发的相信大部分人git天天都在用,那么一般我们在实际工程当中,遵循一个合理、清晰的Git使用流程,是非常重要的。否则,每个人都提交一堆杂乱无章的commit,项目很快就会变得难以协调和维护。那么是如何来规范整个流程的呢 ;

标准其实很多,这里我们介绍下Gitflow;

什么是Gitflow

Gitflow是基于Git的强大分支能力所构建的一套软件开发工作流,最早由Vincent Driessen在2010年提出。最有名的大概是下面这张图。

那么针对这个规范我们来看下如何在实际使用中来应用整个流程

分支说明

主要分两种 主分支 和 支援性分支

● 主分支 : 分支目录為单层,分支永久保留

○ develop : 当 feature branches 开发完成后,提供测试时,请合并到此,此分支不做任何的程序修改和变更集,只接受 master 和 feature branches 的合并

○ master : 永远处在 production-ready 状态

● 支援性分支 : 分支层级为双层,合并后且沒使用可刪除

○ feature branches : 新功能开发,分支的建立都以 master 為来源

○ hotfix branches : 临时需修改的 bug ,分支的建立都以 master 為來源

○ release branches: 提供 Marketing 测试,预计要上线的版本,分支的建立都以 master 為來源,且在合并要测试的 feature branches,合并完成后请设定 Tag,Tag 的內容為合并的 feature branches

分支的来源和合并

● 主分支

○ develop

■ 来源 : master, feature branches

■ 合并 : 无

○ master

■ 来源 : 无

■ 合并 : release branches, develop

● 支援性分支 : 分支层级為双层

○ feature branches

■ 来源 : master

■ 合并 : release branches, develop

○ hotfix branches

■ 来源 : master

■ 合并 : release branches, develop, master

○ release branches

■ 来源 : master, feature branches

■ 合并 : master

支援性分支命名

● feature branches : 依功能命名

○ ex: 开发的新功能为 FeedbackDashboard,请命名为 feature/FeedbackDashboard

● hotfix branches : 依修改的 bug 命名

○ ex: 修改 Invoice 的显示错误,请命名为 hotfix/Invoice

● release branches : 因為合并多个 feature branch,需依日期命名

○ ex: release/20171013

分支对应环境

● 主分支

○ develop : 开发环境

○ master : 生产环境

● 支援性分支

○ feature branches : 无

○ hotfix branches : 无

○ release branches : 沙箱环境

Git 常用指令

请安裝 Git Windows : https://git-scm.com/download/win

● 分支合并

○ git merge feature/xxx --no-ff

○ :ws!

● 同步远端分支

○ git remote update

○ git remote update origin --prune

● 加入 dll 到 Git

○ git add xxx.dll -f

● 还原本机所有变更集

○ git reset --hard HEAD~

● 建立 Tag

○ git tag -a tagName

● 同步 Tag 到远端

○ git push origin tagName

● 查询 Tag 的內容

○ git show tagName

● 刪除 Tag

○ git push -d origin tagname

○ git -d tagname

 

来源: UP技术控内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯