Git分支

本文介绍了Git分支和标签的命名规范,包括dev/test/pre/pro分支和alpha/beta/rc/r标签的使用。探讨了分支在实际开发中的作用,如解决开发过程中的代码冲突问题。同时,讲解了四个环境:dev、test、pre、pro的功能特点。详细阐述了Git的分支操作,如创建、切换、合并和删除,并提供了相关命令示例。此外,还涵盖了标签的创建、推送、删除及使用场景,以及如何在不同分支间进行代码管理。

 Git分支和标签的命名规范

  1.分支

         dev/test/pre/pro(即master)

   2.标签

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

有的公司在版本命名时,前面加v,“-”替换成“_”,更加详细一点还可以在修订号后面添加发布日期
          v1.0.0.191220_alpha,这都是可以的

   3.分支与标签的关系
     dev-->alpha
     test-->beta
     pre-->rc
     pro-->r

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

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

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


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

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

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

 
 

dev分支是不稳定的,到某个时候,比如1.0版本发布时,
     再把dev分支合并到master上,在master分支发布1.0版本

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

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

<think>好的,我现在需要处理用户关于Git分支管理的查询。首先,用户提到了几个引用内容,我需要仔细看一下这些引用来确保回答准确。 首先,引用[1]提到master分支并不是特殊分支,只是因为git init默认创建,很多人懒得改。这说明在回答时需要强调master分支的普通性,可能还要提到如何修改默认分支名称。 引用[2]讨论了删除分支的情况,特别是使用git branch -D强制删除。这里需要注意区分-D和-d的区别,用户可能在这里有疑问,比如什么时候需要强制删除。 引用[3]展示了用git log带参数查看分支合并历史,比如--graph和--abbrev-commit。这部分应该在教程中介绍如何可视化分支结构,帮助用户理解合并情况。 接下来,用户需要Git分支管理教程,所以需要结构清晰,分步骤讲解。根据系统指令,要使用中文,正确使用LaTeX格式的数学表达式,不过这里可能用不上数学公式,但需要注意行内代码用$...$吗?不过根据示例,代码块是用```包裹的,可能数学表达式才用$,代码部分不需要。但用户的问题是关于Git的,可能涉及命令示例,需要正确展示代码块。 系统级指令要求生成相关问题,所以最后需要列出相关问题。回答中引用的部分要添加引用标识,例如在提到默认分支时加上[^1],删除分支时引用[^2],查看合并历史引用[^3]。 现在开始组织教程的结构: 1. 分支创建与切换:使用git branch和git checkout或git switch,引用相关命令。 2. 分支合并:merge和rebase的区别,如何解决冲突。 3. 分支删除:git branch -d和-D的区别,引用[2]的例子。 4. 查看分支历史:git log参数,如--graph,引用[3]。 5. 远程分支管理:推送、拉取、跟踪远程分支。 6. 默认分支设置:提到引用[1],说明master的普通性及如何修改默认分支。 需要确保每个部分都简明,命令示例正确,并适当加入引用标注。最后生成相关问题,比如分支合并策略、解决冲突的方法、重命名默认分支等。 现在检查是否有遗漏,比如分支管理的最佳实践、rebase的风险,或者如何查看远程分支状态。可能需要简要提及,但保持教程基础,不过于深入。 确认引用正确,每个引用只出现在相关部分末尾,自然地添加标识。例如,在讨论默认分支时引用[^1],删除分支引用,查看历史引用。 最后,确保使用中文,代码块用正确语法,例如: ```bash git branch new-feature ``` 这样用户能清楚看到命令格式。避免使用任何Markdown格式错误,比如正确使用三个反引号和语言标识。同时,生成的相关问题要围绕分支管理的常见疑问,比如创建、合并、删除、冲突解决等。</think>### Git 分支管理教程 #### 1. 分支创建与切换 - **创建分支**:使用 `git branch <分支名>` 命令,例如: ```bash git branch new-feature ``` - **切换分支**:使用 `git checkout <分支名>` 或更直观的 `git switch <分支名>`: ```bash git switch new-feature ``` #### 2. 分支合并 - **合并分支**:通过 `git merge` 将目标分支合并到当前分支。例如,将 `new-feature` 合并到 `master`: ```bash git switch master git merge new-feature ``` 若合并时发生冲突,需手动解决后提交。 - **变基(Rebase)**:另一种整合分支的方式是 `git rebase`,它会将当前分支的提交“移植”到目标分支顶端,使历史更线性: ```bash git switch new-feature git rebase master ``` #### 3. 分支删除 - **安全删除**:若分支已合并到其他分支,可用 `git branch -d <分支名>` 删除: ```bash git branch -d new-feature ``` - **强制删除未合并分支**:若分支未合并但需删除,使用 `-D` 参数[^2]: ```bash git branch -D experimental ``` #### 4. 查看分支历史 使用 `git log` 参数可视化分支合并情况: ```bash git log --graph --pretty=oneline --abbrev-commit ``` 此命令会显示分支拓扑结构和简化的提交哈希值。 #### 5. 远程分支管理 - **推送分支到远程仓库**: ```bash git push origin new-feature ``` - **拉取远程分支**: ```bash git fetch origin git switch -c local-feature origin/new-feature ``` #### 6. 默认分支设置 Git 的默认分支(如 `master` 或 `main`)并无特殊性,仅因 `git init` 默认创建[^1]。可通过以下步骤修改默认分支: 1. 创建并切换到新分支: ```bash git switch -c main ``` 2. 推送并更新远程仓库: ```bash git push -u origin main git branch -d master ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值