执行rebase时,如果无法解决当前分支与新基本分支之间的差异,git会要求手动干预。
如果您解决冲突并输入#include<stdio.h>
#include<conio.h>
void main()
{
int a=5,b=6;
int *p,*q;
p=&a;
q=&b;
printf("p = %u",p);
printf("\nq = %u",q);
printf("\nq-p = %u",q-p);
getch();
}
,git会将已解析的代码视为该提交的“新代码”。
但是当你点击git rebase --continue
时会发生什么?它不能保留代码 - 存在冲突 - 因此它必须做的不仅仅是“跳过”。
答案 0 :(得分:10)
如果存在冲突,git rebase --skip
只会跳过整个提交。在rebase成功完成后,该提交的更改将不会在历史记录中。我们来看一个例子
A-B-C <- master
\
D-E <- foo
现在说D在
之后引起冲突git checkout foo
git rebase master
然后git rebase --skip
会产生
A-B-C <- master
\
E' <- foo
其中E'包含与E相同的文本更改。