only after rsync have decided to transfer the source file to the destination
Sim.
during determining whether or not rsync will transfer the source file to the destination
Não. Quando rsync
inicia o algoritmo delta, ele está totalmente comprometido com a atualização do arquivo.
Does the delta-transfer algorithm transfer the difference between the source and destination files?
Por padrão, sim. Você pode desativá-lo com a opção --whole-file
. Observe que o que é enviado pelo algoritmo de transferência delta é não literalmente diff
dos dois arquivos.
Does the delta-transfer algorithm work at the "sub-file" level, by first calculating the patch file between the two files, and then transferring the patch file to the destination, and then applying the patch file to the preexisting destination file to get an identical copy of the source file?
Não, porque rsync
não assume que o remetente tenha uma cópia da versão do arquivo do destino.
rsync
usa somas de verificação rotativas para determinar partes correspondentes do arquivo sem transferir o arquivo inteiro em qualquer direção. Claro, se não houver correspondências, o arquivo inteiro precisará ser enviado.