分支的管理

到目前为止,你已经学会了如何创建、合并和删除分支。除此之外,我们还需要学习如何管理分支,在日后的常规工作中会经常用到下面介绍的管理命令。

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强制执行,就像上面提示信息中给出的那样。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 纯手工打造每一篇开源资讯与技术干货,数十万程序员和Linuxer已经关注 1 Git 分支 - 分支简介 有人把 ...
    尘世不扰阅读 791评论 0 3
  • 一、 Git 分支简介 几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着你可以把你的工作从开发主线上分...
    常大鹏阅读 3,107评论 2 41
  • 1.设置 初次使用需要设置姓名和邮箱git config --global user.name "git用户名"g...
    jrg陈咪咪sunny阅读 835评论 0 1
  • 刷知乎的时候,看到很多个十二月,可是一直以为那是去年。 每每看到2015的标志,我都愣了一下。 我的一年,就这样过...
    瓷莘阅读 306评论 0 0
  • 最近一段时间感觉开始自己能够开始控制自己了,自己的注意力,自己金钱,自己的欲望。开始感到一种来自自律的力量。也可能...
    飞刀大侠阅读 417评论 0 0

友情链接更多精彩内容