Data Structures | |
struct | svn_wc_status_t |
Structure for holding the "status" of a working copy item. More... | |
Typedefs | |
typedef svn_wc_status_t | svn_wc_status_t |
Structure for holding the "status" of a working copy item. | |
typedef void(* | svn_wc_status_func_t )(void *baton, const char *path, svn_wc_status_t *status) |
A callback for reporting an svn_wc_status_t * item status for path. | |
Enumerations | |
enum | svn_wc_status_kind { svn_wc_status_none = 1, svn_wc_status_unversioned, svn_wc_status_normal, svn_wc_status_added, svn_wc_status_missing, svn_wc_status_deleted, svn_wc_status_replaced, svn_wc_status_modified, svn_wc_status_merged, svn_wc_status_conflicted, svn_wc_status_ignored, svn_wc_status_obstructed, svn_wc_status_external, svn_wc_status_incomplete } |
Functions | |
svn_wc_status_t * | svn_wc_dup_status (svn_wc_status_t *orig_stat, apr_pool_t *pool) |
Return a deep copy of the orig_stat status structure, allocated in pool. | |
svn_error_t * | svn_wc_status (svn_wc_status_t **status, const char *path, svn_wc_adm_access_t *adm_access, apr_pool_t *pool) |
Fill *status for path, allocating in pool, with the exception of the repos_rev field, which is normally filled in by the caller. | |
svn_error_t * | svn_wc_get_status_editor (const svn_delta_editor_t **editor, void **edit_baton, svn_revnum_t *edit_revision, svn_wc_adm_access_t *anchor, const char *target, apr_hash_t *config, svn_boolean_t descend, svn_boolean_t get_all, svn_boolean_t no_ignore, svn_wc_status_func_t status_func, void *status_baton, svn_cancel_func_t cancel_func, void *cancel_baton, svn_wc_traversal_info_t *traversal_info, apr_pool_t *pool) |
Set *editor and *edit_baton to an editor that generates svn_wc_status_t structures and sends them through status_func / status_baton. |
The WebDAV concept of "depth" may be useful in understanding the motivation behind this. Suppose we're getting the status of directory D. The three depth levels would mean
depth 0: D itself (just the named directory) depth 1: D and its immediate children (D + its entries) depth Infinity: D and all its descendants (full recursion)
To offer all three levels, we could have one unified function, taking a `depth' parameter. Unfortunately, because this function would have to handle multiple return values as well as the single return value case, getting the status of just one entity would become cumbersome: you'd have to roll through a hash to find one lone status.
So we have svn_wc_status()
for depth 0, and svn_wc_statuses()
for depths 1 and 2, since the latter two involve multiple return values.
NOTE: Status structures returned by svn_wc_status()
or found in the hash created by svn_wc_statuses()
may contain a NULL
->entry field. This indicates an item that is not versioned in the working copy.
|
A callback for reporting an baton is provided to the |
|
Structure for holding the "status" of a working copy item.
The item's entry data is in entry, augmented and possibly shadowed by the other fields. entry is |
|
|
Set *editor and *edit_baton to an editor that generates anchor is an access baton, with a tree lock, for the local path to the working copy which will be used as the root of our editor. If target is not empty, it represents an entry in the anchor path which is the subject of the editor drive (otherwise, the anchor is the subject). Callers drive this editor to describe working copy out-of-dateness with respect to the repository. If this information is not available or not desired, callers should simply call the close_edit() function of the editor vtable.
If the editor driver calls editor's set_target_revision() vtable function, then when the edit drive is completed, *edit_revision will contain the revision delivered via that interface, and any status items reported during the drive will have their
config is a hash mapping Assuming the target is a directory, then:
If no_ignore is set, statuses that would typically be ignored will instead be reported. If cancel_func is non-null, call it with cancel_baton while building the statushash to determine if the client has cancelled the operation.
If traversal_info is non-null, then record pre-update traversal state in it. (Caller should obtain traversal_info from Allocate the editor itself in pool, but the editor does temporary allocations in a subpool of pool. |
|
Fill *status for path, allocating in pool, with the exception of the adm_access must be an access baton for path.
Here are some things to note about the returned structure. A quick examination of the
The other available results for the |