Estoy tratando de usar SVNKit para hacer un simple: svn diff url {date1}:{date2}
.
No puedo encontrar la forma de usarlo en SVNKit. ¿Alguien sabe como hacer esto?
La class SVNRevision
de SVNKit tiene un método estático que lo construye a partir de la instancia de java.util.Date, este es un análogo de SVN {date}.
Para ejecutar diff
1. Prepare el generador de diferencias que se encarga de formatear el parche (se admiten el formatting SVN, el formatting Git y el formatting GNU (con el envoltorio SvnNewGenerator)). La configuration más interesante es la ruta base — todas las routes son relativas a ella, ya que es posible (la subversión siempre usa la ruta actual — nuevo file ("") — pero puede usar cualquier otra).
final SvnDiffGenerator diffGenerator = new SvnDiffGenerator(); diffGenerator.setBasePath(new File(""));
2. Preparar el flujo de salida para el parche resultante
final OutputStream byteArrayOutputStream = new ByteArrayOutputStream();
3. Ejecutar diff
final SvnDiff diff = svnOperationFactory.createDiff(); diff.setSource(SvnTarget.fromURL(url), SVNRevision.create(date1), SVNRevision.create(date2)); diff.setDiffGenerator(diffGenerator); diff.setOutput(byteArrayOutputStream); diff.run();
Puede descubrir más configuraciones jugando con SvnDiff y SvnDiffGenerator setters.