mirror of
https://github.com/haiwen/seafile-server.git
synced 2025-08-11 11:42:46 +00:00
* Add batch del files RPC * Add pack multi-level files * Go add pack multi-level files * Use change set to batch del files * Improve args --------- Co-authored-by: 杨赫然 <heran.yang@seafile.com>
38 lines
829 B
C
38 lines
829 B
C
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
|
|
#ifndef SEAF_CHANGE_SET_H
|
|
#define SEAF_CHANGE_SET_H
|
|
|
|
#include <glib.h>
|
|
#include "utils.h"
|
|
|
|
struct _ChangeSetDir;
|
|
|
|
struct _ChangeSet {
|
|
char repo_id[37];
|
|
/* A partial tree for all changed directories. */
|
|
struct _ChangeSetDir *tree_root;
|
|
};
|
|
typedef struct _ChangeSet ChangeSet;
|
|
|
|
ChangeSet *
|
|
changeset_new (const char *repo_id, SeafDir *dir);
|
|
|
|
void
|
|
changeset_free (ChangeSet *changeset);
|
|
|
|
/*
|
|
@remove_parent: remove the parent dir when it becomes empty.
|
|
*/
|
|
void
|
|
remove_from_changeset (ChangeSet *changeset,
|
|
const char *path,
|
|
gboolean remove_parent,
|
|
const char *top_dir,
|
|
int *mode);
|
|
|
|
char *
|
|
commit_tree_from_changeset (ChangeSet *changeset);
|
|
|
|
#endif
|