svn_wc_remove_from_revision_control2

Function svn_wc_remove_from_revision_control2 

Source
pub unsafe extern "C" fn svn_wc_remove_from_revision_control2(
    wc_ctx: *mut svn_wc_context_t,
    local_abspath: *const c_char,
    destroy_wf: svn_boolean_t,
    instant_error: svn_boolean_t,
    cancel_func: svn_cancel_func_t,
    cancel_baton: *mut c_void,
    pool: *mut apr_pool_t,
) -> *mut svn_error_t
Expand description

Remove @a local_abspath from revision control. @a wc_ctx must hold a write lock on the parent of @a local_abspath, or if that is a WC root then on @a local_abspath itself.

If @a local_abspath is a file, all its info will be removed from the administrative area. If @a local_abspath is a directory, then the administrative area will be deleted, along with all the administrative areas anywhere in the tree below @a adm_access.

Normally, only administrative data is removed. However, if @a destroy_wf is TRUE, then all working file(s) and dirs are deleted from disk as well. When called with @a destroy_wf, any locally modified files will not be deleted, and the special error #SVN_ERR_WC_LEFT_LOCAL_MOD might be returned. (Callers only need to check for this special return value if @a destroy_wf is TRUE.)

If @a instant_error is TRUE, then return #SVN_ERR_WC_LEFT_LOCAL_MOD the instant a locally modified file is encountered. Otherwise, leave locally modified files in place and return the error only after all the recursion is complete.

If @a cancel_func is non-NULL, call it with @a cancel_baton at various points during the removal. If it returns an error (typically #SVN_ERR_CANCELLED), return that error immediately.

WARNING: This routine is exported for careful, measured use by libsvn_client. Do not call this routine unless you really understand what the heck you’re doing.

@since New in 1.7.