延续Git-分阶段合併&压缩合併
目前只有一个分支
显示已合併or未合併的分支
我们可以这样想像,每个commit都是一个节点,指向特定的版本,而每个版本都有专属的Id。
接下来,可以使用版本Id,在特定版本,建立分支。
建立一条分支(br3),并新增档案(e.txt),让它成为最新的版本。
再建立一条feature分支。
建立后的线图。
从线图可以看出,br1与br2是已经合併的分支,br3则是未合併。
在master分支查看所有分支。
加上--merged,可以查看所有已合併分支。
没有br3,因为刚刚只建立br3,并未将它合併。
注意,如果在br3查看所有已合併分支。
会出现本身分支。
因为,不管有没有合併,预设会秀出自己的分支。
那是否能显示未合併的分支呢?答案是可以的。
将参数改成--no-merged 即可。
删除所有已合併的分支
来看看stackoverflow,别人提供的答案。
在绿色勾勾的回答,我们可以找到最佳答案。
指令git branch --merged | egrep -v "(^*|master|dev)" | xargs git branch -d
这里,我们要修改的是筛选条件(^*|master|dev),其他都是固定的。
筛选条件是,除了现在的分支(*)、master跟dev之外,其他以合併的分支一律删除。
注意,若在windows环境,只有Git Bash能执行这段程式码,因为只有Git Bash有支援egrep与xargs的功能。
在执行之前,修改一下筛选条件,(^*|master|feature)。
执行。
讯息显示,删除了br1与br2分支。
确认。
以上,就是一次将所有已合併的分支删除的方式。