diff options
Diffstat (limited to 'vcs-svn/fast_export.h')
-rw-r--r-- | vcs-svn/fast_export.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/vcs-svn/fast_export.h b/vcs-svn/fast_export.h new file mode 100644 index 0000000000..aa629f54ff --- /dev/null +++ b/vcs-svn/fast_export.h @@ -0,0 +1,28 @@ +#ifndef FAST_EXPORT_H_ +#define FAST_EXPORT_H_ + +struct strbuf; +struct line_buffer; + +void fast_export_init(int fd); +void fast_export_deinit(void); +void fast_export_reset(void); + +void fast_export_delete(const char *path); +void fast_export_modify(const char *path, uint32_t mode, const char *dataref); +void fast_export_begin_commit(uint32_t revision, const char *author, + const struct strbuf *log, const char *uuid, + const char *url, unsigned long timestamp); +void fast_export_end_commit(uint32_t revision); +void fast_export_data(uint32_t mode, off_t len, struct line_buffer *input); +void fast_export_blob_delta(uint32_t mode, + uint32_t old_mode, const char *old_data, + off_t len, struct line_buffer *input); + +/* If there is no such file at that rev, returns -1, errno == ENOENT. */ +int fast_export_ls_rev(uint32_t rev, const char *path, + uint32_t *mode_out, struct strbuf *dataref_out); +int fast_export_ls(const char *path, + uint32_t *mode_out, struct strbuf *dataref_out); + +#endif |