# Remove files/directories from a working copy or repository.
[Client working copy management]

## Functions
svn_error_t * | svn_client_delete4 (const apr_array_header_t *paths, svn_boolean_t force, svn_boolean_t keep_local, const apr_hash_t *revprop_table, svn_commit_callback2_t commit_callback, void *commit_baton, svn_client_ctx_t *ctx, apr_pool_t *pool)
| Delete items from a repository or working copy.
svn_error_t * | svn_client_delete3 (svn_commit_info_t **commit_info_p, const apr_array_header_t *paths, svn_boolean_t force, svn_boolean_t keep_local, const apr_hash_t *revprop_table, svn_client_ctx_t *ctx, apr_pool_t *pool)
| Similar to svn_client_delete4(), but returns the commit info in *commit_info_p rather than through a callback function.
svn_error_t * | svn_client_delete2 (svn_commit_info_t **commit_info_p, const apr_array_header_t *paths, svn_boolean_t force, svn_client_ctx_t *ctx, apr_pool_t *pool)
| Similar to svn_client_delete3(), but with keep_local always set to FALSE, and revprop_table passed as NULL.
svn_error_t * | svn_client_delete (svn_client_commit_info_t **commit_info_p, const apr_array_header_t *paths, svn_boolean_t force, svn_client_ctx_t *ctx, apr_pool_t *pool)
| Similar to svn_client_delete2(), but takes the svn_client_commit_info_t type for commit_info_p.

## Function Documentation

svn_error_t* svn_client_delete | ( | svn_client_commit_info_t ** | commit_info_p,
|  | const apr_array_header_t * | paths,
|  | svn_boolean_t | force,
|  | svn_client_ctx_t * | ctx,
|  | apr_pool_t * | pool |
| ) |  |  |

Similar to svn_client_delete2(), but takes the svn_client_commit_info_t type for commit_info_p.

Deprecated:
  Provided for backward compatibility with the 1.2 API.

svn_error_t* svn_client_delete2 | ( | svn_commit_info_t ** | commit_info_p,
|  | const apr_array_header_t * | paths,
|  | svn_boolean_t | force,
|  | svn_client_ctx_t * | ctx,
|  | apr_pool_t * | pool |
| ) |  |  |

Similar to svn_client_delete3(), but with keep_local always set to FALSE, and revprop_table passed as NULL.

Deprecated:
  Provided for backward compatibility with the 1.4 API.

svn_error_t* svn_client_delete3 | ( | svn_commit_info_t ** | commit_info_p,
|  | const apr_array_header_t * | paths,
|  | svn_boolean_t | force,
|  | svn_boolean_t | keep_local,
|  | const apr_hash_t * | revprop_table,
|  | svn_client_ctx_t * | ctx,
|  | apr_pool_t * | pool |
| ) |  |  |

Similar to svn_client_delete4(), but returns the commit info in *commit_info_p rather than through a callback function.

Since:
  New in 1.5.

Deprecated:
  Provided for backward compatibility with the 1.6 API.

svn_error_t* svn_client_delete4 | ( | const apr_array_header_t * | paths,
|  | svn_boolean_t | force,
|  | svn_boolean_t | keep_local,
|  | const apr_hash_t * | revprop_table,
|  | svn_commit_callback2_t | commit_callback,
|  | void * | commit_baton,
|  | svn_client_ctx_t * | ctx,
|  | apr_pool_t * | pool |
| ) |  |  |

Delete items from a repository or working copy.

If the paths in paths are URLs, use the authentication baton in ctx and ctx->log_msg_func3/ctx->log_msg_baton3 to immediately attempt to commit a deletion of the URLs from the repository. Every path must belong to the same repository.

Else, schedule the working copy paths in paths for removal from the repository. Each path's parent must be under revision control. This is just a *scheduling* operation. No changes will happen to the repository until a commit occurs. This scheduling can be removed with svn_client_revert2(). If a path is a file it is immediately removed from the working copy. If the path is a directory it will remain in the working copy but all the files, and all unversioned items, it contains will be removed. If force is not set then this operation will fail if any path contains locally modified and/or unversioned items. If force is set such items will be deleted.

If the paths are working copy paths and keep_local is TRUE then the paths will not be removed from the working copy, only scheduled for removal from the repository. Once the scheduled deletion is committed, they will appear as unversioned paths in the working copy.

If non-NULL, revprop_table is a hash table holding additional, custom revision properties (`const char *` names mapped to `svn_string_t *` values) to be set on the new revision in the event that this is a committing operation. This table cannot contain any standard Subversion properties.

ctx->log_msg_func3/ctx->log_msg_baton3 are a callback/baton combo that this function can use to query for a commit log message when one is needed.

If ctx->notify_func2 is non-NULL, then for each item deleted, call ctx->notify_func2 with ctx->notify_baton2 and the path of the deleted item.

If commit_callback is non-NULL, then for each successful commit, call commit_callback with commit_baton and a svn_commit_info_t for the commit.

Since:
  New in 1.7.

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines