public function fetchDiff() {
        $progress = Garp_Cli_Ui_ProgressBar::getInstance();
        $diffList = new Garp_Content_Upload_FileList();

        $sourceList = $this->_source->fetchFileList();
        $targetList = $this->_target->fetchFileList();

        $progress->display("Looking for new files");
        $newFiles = $this->_findNewFiles($sourceList, $targetList);

        $progress->display("Looking for conflicting files");
        $conflictingFiles = $this->_findConflictingFiles($sourceList, $targetList);

        $diffList->addEntries($newFiles);
        $diffList->addEntries($conflictingFiles);

        return $diffList;
    }