This commit is contained in:
Andreas Schneider 2009-05-25 11:58:51 +02:00
Родитель 022731b241
Коммит 7c88ed8454
1 изменённых файлов: 36 добавлений и 0 удалений

Просмотреть файл

@ -21,7 +21,43 @@
#ifndef _CSYNC_RECONCILE_H
#define _CSYNC_RECONCILE_H
/**
* @file csync_reconcile.h
*
* @brief Reconciliation
*
* We merge replicas at the file level. The merged replica contains the
* superset of files that are on the local machine and server copies of
* the replica. In the case where the same file is in both the local
* and server copy, the file that was modified most recently is used.
* This means that new files are not deleted, and updated versions of
* existing files are not overwritten.
*
* When a file is updated, the merge algorithm compares the destination
* file with the the source file. If the destination file is newer
* (timestamp is newer), it is not overwritten. If both files, on the
* source and the destination, have been changed, the newer file wins.
*
* @defgroup csyncReconcilationInternals csync reconciliation internals
* @ingroup csyncInternalAPI
*
* @{
*/
/**
* @brief Reconcile the files.
*
* @param ctx The csync context to use.
*
* @return 0 on success, < 0 on error.
*
* @todo Add an argument to set the algorithm to use.
*/
int csync_reconcile_updates(CSYNC *ctx);
/**
* }@
*/
#endif /* _CSYNC_RECONCILE_H */
/* vim: set ft=c.doxygen ts=8 sw=2 et cindent: */