# Client commit subsystem
[Client supporting subsystem]

Commit operations. More...

## Data Structures
struct | svn_client_proplist_item_t
| This is a structure which stores a filename and a hash of property names and values. More...
struct | svn_client_commit_info_t
| Information about commits passed back to client from this module. More...
struct | svn_client_commit_item3_t
| The commit candidate structure. More...
struct | svn_client_commit_item2_t
| The commit candidate structure. More...
struct | svn_client_commit_item_t
| The commit candidate structure. More...
## Typedefs
typedef struct svn_client_proplist_item_t | svn_client_proplist_item_t
| This is a structure which stores a filename and a hash of property names and values.
typedef svn_error_t *(* | svn_proplist_receiver_t )(void *baton, const char *path, apr_hash_t *prop_hash, apr_pool_t *pool)
| The callback invoked by svn_client_proplist3().
typedef struct svn_client_commit_info_t | svn_client_commit_info_t
| Information about commits passed back to client from this module.
typedef struct svn_client_commit_item3_t | svn_client_commit_item3_t
| The commit candidate structure.
typedef struct svn_client_commit_item2_t | svn_client_commit_item2_t
| The commit candidate structure.
typedef struct svn_client_commit_item_t | svn_client_commit_item_t
| The commit candidate structure.
typedef svn_error_t *(* | svn_client_get_commit_log3_t )(const char **log_msg, const char **tmp_file, const apr_array_header_t *commit_items, void *baton, apr_pool_t *pool)
| Callback type used by commit-y operations to get a commit log message from the caller.
typedef svn_error_t *(* | svn_client_get_commit_log2_t )(const char **log_msg, const char **tmp_file, const apr_array_header_t *commit_items, void *baton, apr_pool_t *pool)
| Callback type used by commit-y operations to get a commit log message from the caller.
typedef svn_error_t *(* | svn_client_get_commit_log_t )(const char **log_msg, const char **tmp_file, apr_array_header_t *commit_items, void *baton, apr_pool_t *pool)
| Callback type used by commit-y operations to get a commit log message from the caller.
## Functions
svn_client_proplist_item_t * | svn_client_proplist_item_dup (const svn_client_proplist_item_t *item, apr_pool_t *pool)
| Return a duplicate of item, allocated in pool.
svn_client_commit_item3_t * | svn_client_commit_item3_create (apr_pool_t *pool)
| Return a new commit item object, allocated in pool.
svn_error_t * | svn_client_commit_item_create (const svn_client_commit_item3_t **item, apr_pool_t *pool)
| Like svn_client_commit_item3_create() but with a stupid "const" qualifier on the returned structure, and it returns an error that will never happen.
svn_client_commit_item3_t * | svn_client_commit_item3_dup (const svn_client_commit_item3_t *item, apr_pool_t *pool)
| Return a duplicate of item, allocated in pool.
svn_client_commit_item2_t * | svn_client_commit_item2_dup (const svn_client_commit_item2_t *item, apr_pool_t *pool)
| Return a duplicate of item, allocated in pool.
## Commit state flags
State flags for use with the svn_client_commit_item3_t structure (see the note about the namespace for that structure, which also applies to these flags).
#define | SVN_CLIENT_COMMIT_ITEM_ADD 0x01
#define | SVN_CLIENT_COMMIT_ITEM_DELETE 0x02
#define | SVN_CLIENT_COMMIT_ITEM_TEXT_MODS 0x04
#define | SVN_CLIENT_COMMIT_ITEM_PROP_MODS 0x08
#define | SVN_CLIENT_COMMIT_ITEM_IS_COPY 0x10
#define | SVN_CLIENT_COMMIT_ITEM_LOCK_TOKEN 0x20

## Detailed Description

Commit operations.

## Define Documentation

#define SVN_CLIENT_COMMIT_ITEM_LOCK_TOKEN 0x20

Since:
  New in 1.2.

Definition at line 415 of file svn_client.h.

## Typedef Documentation

typedef struct svn_client_commit_info_t svn_client_commit_info_t

Information about commits passed back to client from this module.

Deprecated:
  Provided for backward compatibility with the 1.2 API.

typedef struct svn_client_commit_item2_t svn_client_commit_item2_t

The commit candidate structure.

Deprecated:
  Provided for backward compatibility with the 1.4 API.

typedef struct svn_client_commit_item3_t svn_client_commit_item3_t

The commit candidate structure.

In order to avoid backwards compatibility problems clients should use svn_client_commit_item3_create() to allocate and initialize this structure instead of doing so themselves.

Since:
  New in 1.5.

typedef struct svn_client_commit_item_t svn_client_commit_item_t

The commit candidate structure.

Deprecated:
  Provided for backward compatibility with the 1.2 API.

typedef svn_error_t*(* svn_client_get_commit_log2_t)(const char **log_msg, const char **tmp_file, const apr_array_header_t *commit_items, void *baton, apr_pool_t *pool)

Callback type used by commit-y operations to get a commit log message from the caller.

Set *log_msg to the log message for the commit, allocated in pool, or `NULL` if wish to abort the commit process. Set *tmp_file to the path of any temporary file which might be holding that log message, or `NULL` if no such file exists (though, if *log_msg is `NULL`, this value is undefined). The log message MUST be a UTF8 string with LF line separators.

commit_items is a read-only array of svn_client_commit_item2_t structures, which may be fully or only partially filled-in, depending on the type of commit operation.

baton is provided along with the callback for use by the handler.

All allocations should be performed in pool.

Deprecated:
  Provided for backward compatibility with the 1.3 API.

Definition at line 640 of file svn_client.h.

typedef svn_error_t*(* svn_client_get_commit_log3_t)(const char **log_msg, const char **tmp_file, const apr_array_header_t *commit_items, void *baton, apr_pool_t *pool)

Callback type used by commit-y operations to get a commit log message from the caller.

Set *log_msg to the log message for the commit, allocated in pool, or `NULL` if wish to abort the commit process. Set *tmp_file to the path of any temporary file which might be holding that log message, or `NULL` if no such file exists (though, if *log_msg is `NULL`, this value is undefined). The log message MUST be a UTF8 string with LF line separators.

commit_items is a read-only array of svn_client_commit_item3_t structures, which may be fully or only partially filled-in, depending on the type of commit operation.

baton is provided along with the callback for use by the handler.

All allocations should be performed in pool.

Since:
  New in 1.5.

Definition at line 613 of file svn_client.h.

typedef svn_error_t*(* svn_client_get_commit_log_t)(const char **log_msg, const char **tmp_file, apr_array_header_t *commit_items, void *baton, apr_pool_t *pool)

Callback type used by commit-y operations to get a commit log message from the caller.

Set *log_msg to the log message for the commit, allocated in pool, or `NULL` if wish to abort the commit process. Set *tmp_file to the path of any temporary file which might be holding that log message, or `NULL` if no such file exists (though, if *log_msg is `NULL`, this value is undefined). The log message MUST be a UTF8 string with LF line separators.

commit_items is a read-only array of svn_client_commit_item_t structures, which may be fully or only partially filled-in, depending on the type of commit operation.

baton is provided along with the callback for use by the handler.

All allocations should be performed in pool.

Deprecated:
  Provided for backward compatibility with the 1.2 API.

Definition at line 667 of file svn_client.h.

typedef struct svn_client_proplist_item_t svn_client_proplist_item_t

This is a structure which stores a filename and a hash of property names and values.

Deprecated:
  Provided for backward compatibility with the 1.4 API.

typedef svn_error_t*(* svn_proplist_receiver_t)(void *baton, const char *path, apr_hash_t *prop_hash, apr_pool_t *pool)

The callback invoked by svn_client_proplist3().

Each invocation provides the regular properties of path which is either a WC path or a URL. prop_hash maps property names (char *) to property values (svn_string_t *). Use pool for all temporary allocation.

Since:
  New in 1.5.

Definition at line 365 of file svn_client.h.

## Function Documentation

svn_client_commit_item2_t* svn_client_commit_item2_dup | ( | const svn_client_commit_item2_t * | item,
|  | apr_pool_t * | pool |
| ) |  |  |

Return a duplicate of item, allocated in pool.

No part of the new structure will be shared with item.

Deprecated:
  Provided for backward compatibility with the 1.4 API.

svn_client_commit_item3_t* svn_client_commit_item3_create | ( | apr_pool_t * | pool | ) |

Return a new commit item object, allocated in pool.

In order to avoid backwards compatibility problems, this function is used to initialize and allocate the svn_client_commit_item3_t structure rather than doing so explicitly, as the size of this structure may change in the future.

Since:
  New in 1.6.

svn_client_commit_item3_t* svn_client_commit_item3_dup | ( | const svn_client_commit_item3_t * | item,
|  | apr_pool_t * | pool |
| ) |  |  |

Return a duplicate of item, allocated in pool.

No part of the new structure will be shared with item, except for the adm_access member.

Since:
  New in 1.5.

svn_error_t* svn_client_commit_item_create | ( | const svn_client_commit_item3_t ** | item,
|  | apr_pool_t * | pool |
| ) |  |  |

Like svn_client_commit_item3_create() but with a stupid "const" qualifier on the returned structure, and it returns an error that will never happen.

Deprecated:
  Provided for backward compatibility with the 1.5 API.

svn_client_proplist_item_t* svn_client_proplist_item_dup | ( | const svn_client_proplist_item_t * | item,
|  | apr_pool_t * | pool |
| ) |  |  |

Return a duplicate of item, allocated in pool.

No part of the new structure will be shared with item.

Since:
  New in 1.3.

Deprecated:
  Provided for backward compatibility with the 1.4 API.

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines