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. More...
typedef svn_error_t *(* | svn_proplist_receiver2_t) (void *baton, const char *path, apr_hash_t *prop_hash, apr_array_header_t *inherited_props, apr_pool_t *scratch_pool)
| The callback invoked by svn_client_proplist4(). More...
typedef svn_error_t *(* | svn_proplist_receiver_t) (void *baton, const char *path, apr_hash_t *prop_hash, apr_pool_t *pool)
| Similar to svn_proplist_receiver2_t, but doesn't return inherited properties. More...
typedef struct svn_client_commit_info_t | svn_client_commit_info_t
| Information about commits passed back to client from this module. More...
typedef struct svn_client_commit_item3_t | svn_client_commit_item3_t
| The commit candidate structure. More...
typedef struct svn_client_commit_item2_t | svn_client_commit_item2_t
| The commit candidate structure. More...
typedef struct svn_client_commit_item_t | svn_client_commit_item_t
| The commit candidate structure. More...
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. More...
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. More...
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. More...

## 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. More...
svn_client_commit_item3_t * | svn_client_commit_item3_create (apr_pool_t *pool)
| Return a new commit item object, allocated in pool. More...
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. More...
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. More...
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. More...

## 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
| One of the flags for a commit item. More...
#define | SVN_CLIENT_COMMIT_ITEM_MOVED_HERE 0x40
| One of the flags for a commit item. More...

## Detailed Description

Commit operations.

## Macro Definition Documentation

## SVN_CLIENT_COMMIT_ITEM_LOCK_TOKEN

#define SVN_CLIENT_COMMIT_ITEM_LOCK_TOKEN 0x20

One of the flags for a commit item.

The node has a lock token that should be released after a successful commit and, if the node is also modified, transferred to the server as part of the commit process.

Since
  New in 1.2.

Definition at line 447 of file svn_client.h.

## SVN_CLIENT_COMMIT_ITEM_MOVED_HERE

#define SVN_CLIENT_COMMIT_ITEM_MOVED_HERE 0x40

One of the flags for a commit item.

The node is the 'moved here' side of a local move. This is used to check and enforce that the other side of the move is also included in the commit.

Since
  New in 1.8.

Definition at line 453 of file svn_client.h.

## Typedef Documentation

## svn_client_commit_info_t

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.

## svn_client_commit_item2_t

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.

## svn_client_commit_item3_t

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.

## svn_client_commit_item_t

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.

## svn_client_get_commit_log2_t

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 695 of file svn_client.h.

## svn_client_get_commit_log3_t

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 668 of file svn_client.h.

## svn_client_get_commit_log_t

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 722 of file svn_client.h.

## svn_client_proplist_item_t

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.

## svn_proplist_receiver2_t

typedef svn_error_t*(* svn_proplist_receiver2_t) (void *baton, const char *path, apr_hash_t *prop_hash, apr_array_header_t *inherited_props, apr_pool_t *scratch_pool)

The callback invoked by svn_client_proplist4().

Each invocation provides the regular and/or inherited properties of path, which is either a working copy path or a URL. If prop_hash is not `NULL`, then it maps explicit `const char *` property names to `svn_string_t *` explicit property values. If inherited_props is not `NULL`, then it is a depth-first ordered array of svn_prop_inherited_item_t * structures representing the properties inherited by path. Use scratch_pool for all temporary allocations.

The svn_prop_inherited_item_t->path_or_url members of the svn_prop_inherited_item_t * structures in inherited_props are URLs if path is a URL or if path is a working copy path but the property represented by the structure is above the working copy root (i.e. the inherited property is from the cache). In all other cases the svn_prop_inherited_item_t->path_or_url members are absolute working copy paths.

Since
  New in 1.8.

Definition at line 378 of file svn_client.h.

## svn_proplist_receiver_t

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

Similar to svn_proplist_receiver2_t, but doesn't return inherited properties.

Deprecated:
  Provided for backward compatibility with the 1.7 API.

Since
  New in 1.5.

Definition at line 393 of file svn_client.h.

## Function Documentation

## svn_client_commit_item2_dup()

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_create()

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_dup()

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_client_commit_item_create()

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_dup()

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.