PP1: O CSDiff reduz a quantidade de conflitos reportados emcomparação ao Diff3?
CSDiff produz mais conflitos
Como pode ser observado na tabela abaixo o CSDiff produz mais conflitos em relação ao diff3
|
Para entender melhor o motivo que o CSDiff produz mais conflitos vamos analisar o caso a seguir. Considere as versões seguintes como as versões base, left e right, respectivamente, de um arquivo (por simplicidade considere que esse arquivo só possui essas chamadas de método).
base.java
left.java
right.java
Por quebrar os arquivos em separadores (nesse caso sendo os separadores utilizados o abre e fecha parênteses), o CSDiff acaba reconhecendo uma mudança dentro das chamadas de função na primeira e segunda linha, por causa disso, a ferramenta proposta reporta dois conflitos diferentes, como pode ser observado a seguir:
csdiff.java
Enquanto que, por o diff3 agrupar conflitos que estão em linhas consecutivas em um único conflito, ele reporta apenas um conflito como pode ser observado na imagem abaixo:
diff3.java