LOGGER.debug("Revisions loaded.");
List<Transaction> transactions = new Vector<Transaction>();
Person precedingAuthor = null;
long precedingCheckInTime = 0;
long precedingTransactionStart = 0;
String precedingLogMessage = null;
Transaction transaction = null;
LOGGER.debug("Reconstructing transactions from CVS information.");
int revTotal = revisionsOrderedByCreationTimeAsc.size();
for (int i = 0; (i < revisionsOrderedByCreationTimeAsc.size()) && !monitor.isCanceled(); i++) {
Revision revision = revisionsOrderedByCreationTimeAsc.get(i);
monitor.subTask("Examining revision " + i + " / " + revTotal);
Person currentAuthor = revision.getAuthor();
long currentCheckInTime = revision.getCreationTime().getTime();
String currentLogMessage = revision.getCommitMessage();
// Two authors (or log messages) a1 and a2 are equal if both are null or if a1 equals a2
boolean authorsAreEqual =