分支与手术

冲突雷达

靠真的合一次来搞清楚某个分支会不会冲突,是一种代价高昂的提问方式。雷达提前替你回答。

Gitcito 会把每个分支在对象数据库内部合并进你选定的基准(git merge-tree --write-tree)。不检出,不动索引,不动工作区,事后也没有任何东西要收拾。扫描进行时,你那些未提交的活儿可以原地待着,一动不动。

雷达,每个分支一条判定

逐个分支扫描,然后打开那些有争议的文件

怎么用

从工具菜单打开它,或者 ⌘K → 冲突雷达,也可以右键点一个分支,把所有东西都拿去和那个分支比。

它一打开就开始扫描,以你当前的分支作为基准。

判定 含义
将会冲突 合并它需要动手。冲突的确切路径会列出来。
干净合并 它可以不打架地应用进去。
已经并入 基准里已经包含它了——没什么可合的。
失败 git 拒绝了:历史无关、引用缺失。原因会显示出来。

分支按最糟的排在最前面来排序,而最糟中的最糟——碰了最多文件的那个——排到顶上。

有争议的文件

下面的有争议的文件会按「有多少个分支正在重写它」给路径排名。两个分支为一个文件打架,是一场现在就该谈的对话;五个,就是一个设计问题了。

扫描之后

侧边栏里的分支行会挂上一个彩色圆点:红色会冲突,绿色是干净的,琥珀色是 git 拒绝了的分支。已经包含在基准里的分支不给圆点——给所有已合并的东西都点上一排灰点,那只是噪音。

扫描什么都不改。git status 依然干净,HEAD 也不会动。

另请参阅: 自那以后改了什么 · 合并与变基

在 GitHub 上改进这份翻译