svn_client_status6

Function svn_client_status6 

Source
pub unsafe extern "C" fn svn_client_status6(
    result_rev: *mut svn_revnum_t,
    ctx: *mut svn_client_ctx_t,
    path: *const c_char,
    revision: *const svn_opt_revision_t,
    depth: svn_depth_t,
    get_all: svn_boolean_t,
    check_out_of_date: svn_boolean_t,
    check_working_copy: svn_boolean_t,
    no_ignore: svn_boolean_t,
    ignore_externals: svn_boolean_t,
    depth_as_sticky: svn_boolean_t,
    changelists: *const apr_array_header_t,
    status_func: svn_client_status_func_t,
    status_baton: *mut c_void,
    scratch_pool: *mut apr_pool_t,
) -> *mut svn_error_t
Expand description

Given @a path to a working copy directory (or single file), call @a status_func/status_baton with a set of #svn_wc_status_t * structures which describe the status of @a path, and its children (recursing according to @a depth).

  • If @a get_all is set, retrieve all entries; otherwise, retrieve only “interesting” entries (local mods and/or out of date).

  • If @a check_out_of_date is set, contact the repository and augment the status structures with information about out-of-dateness (with respect to @a revision). Also, if @a result_rev is not @c NULL, set @a *result_rev to the actual revision against which the working copy was compared (@a *result_rev is not meaningful unless @a check_out_of_date is set).

  • If @a check_working_copy is not set, do not scan the working copy for local modifications. This parameter will be ignored unless @a check_out_of_date is set. When set, the status report will not contain any information about local changes in the working copy; this includes local deletions and replacements.

If @a no_ignore is @c FALSE, don’t report any file or directory (or recurse into any directory) that is found by recursion (as opposed to being the explicit target @a path) and whose name matches the svn:ignore property on its parent directory or the global-ignores list in @a ctx->config. If @a no_ignore is @c TRUE, report each such file or directory with the status code #svn_wc_status_ignored.

If @a ignore_externals is not set, then recurse into externals definitions (if any exist) after handling the main target. This calls the client notification function (in @a ctx) with the #svn_wc_notify_status_external action before handling each externals definition, and with #svn_wc_notify_status_completed after each.

If @a depth_as_sticky is set and @a depth is not #svn_depth_unknown, then the status is calculated as if depth_is_sticky was passed to an equivalent update command.

@a changelists is an array of const char * changelist names, used as a restrictive filter on items whose statuses are reported; that is, don’t report status about any item unless it’s a member of one of those changelists. If @a changelists is empty (or altogether @c NULL), no changelist filtering occurs.

If @a path is an absolute path then the @c path parameter passed in each call to @a status_func will be an absolute path.

All temporary allocations are performed in @a scratch_pool.

@since New in 1.9.