1
0
mirror of https://github.com/haiwen/seafile-server.git synced 2025-08-12 04:03:12 +00:00
seafile-server/server/change-set.h

38 lines
829 B
C
Raw Normal View History

/* -*- 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