到目前为止,你已经学会了如何创建、合并和删除分支。除此之外,我们还需要学习如何管理分支,在日后的常规工作中会经常用到下面介绍的管理命令。
git branch
命令不仅仅能创建和删除分支,如果不加任何参数,它会给出当前所有分支的清单:
$ git branch
iss53
* master
testing
注意看 master
分支前的 *
字符:它表示当前所在的分支。也就是说,如果现在提交更新,master
分支将随着开发进度前移。若要查看各个分支最后一个提交对象的信息,运行 git branch -v
:
$ git branch -v
iss53 93b412c fix javascript issue
* master 7a98805 Merge branch 'iss53'
testing 782fd34 add scott to the author list in the readmes
要从该清单中筛选出你已经(或尚未)与当前分支合并的分支,可以用 --merged
和 --no-merged
选项(Git 1.5.6 以上版本)。比如用 git branch --merged
查看哪些分支已被并入当前分支(译注:也就是说哪些分支是当前分支的直接上游。):
$ git branch --merged
iss53
* master
之前我们已经合并了 iss53
,所以在这里会看到它。一般来说,列表中没有 *
的分支通常都可以用 git branch -d
来删掉。原因很简单,既然已经把它们所包含的工作整合到了其他分支,删掉也不会损失什么。
另外可以用 git branch --no-merged
查看尚未合并的工作:
$ git branch --no-merged
testing
它会显示还未合并进来的分支。由于这些分支中还包含着尚未合并进来的工作成果,所以简单地用 git branch -d
删除该分支会提示错误,因为那样做会丢失数据:
$ git branch -d testing
error: The branch 'testing' is not fully merged.
If you are sure you want to delete it, run 'git branch -D testing'.
不过,如果你确实想要删除该分支上的改动,可以用大写的删除选项 -D
强制执行,就像上面提示信息中给出的那样。
http://git-scm.com/book/zh/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E7%AE%A1%E7%90%86
相关推荐
git分支管理策略,git分支管理策略,git分支管理策略,git分支管理策略
分支管理流程图.vsdx
用SVN分支管理多版本 为了在多个版本中并行开发,提高开发效率,保证各个版本和各 个环境(开发、测试、主干)的独立,避免相互影响,减少最终 发布时合并主干出现冲突的概率,降低冲突处理的难度,特编写 该文档
Git分支管理的策略梳理
GIT分支管理 远程分支 本地分支 GIT分支管理 远程分支 本地分支
内容包含: SVN并行开发分支管理指南 SVN分支管理模式解析 软件配置管理引发的版本分支思考
应对快速需求迭代进行的开发分支的管理的总结规范、比较实用快速开发中应对高频需迭代
介绍版本分支管理策略常见的两种:主干开发分支交付、分支开发主干交付
详细讲解git分支管理,适合于代码管理、项目管理等工作。
该文档定义了分支管理规范-GIT分支流程开发规范。
严格的项目流程。项目从立项到上线,到运行,需要经理各个流程,该图展现了一个严谨的项目是如何制作的。
SmartGit 是一款很好用得图形化 Git 客户端,文章基于现有公司的实战给大家分享一套比较完善的代码分支管理经验,希望对你有帮助。
分支管理规范说明资料
文试图从SVN分支管理的结构模式、规则模式、使用场景、优缺点分析等几个方面阐述几种不同的分支管理模式。 结构模式——通过约束和指导项目的整体目录结构,实现并行开发的组织结构、开发模式及开发过程的约束和指导...
一位不知名的大神总结的代码分支管理的资料。讲述了分支的策略,分支的场景和开发人员需要注意的主要问题,工作中比较实用,推荐给大家。
Git服务器从搭建到使用,很详细~这个是分支管理与冲突解决
分支管理和Git使用流程
gitlab-分支管理最佳实践(支持功能测试发版测试),支持开发和测试并行,发版和功能验证并行,任意功能组合发版控制