GME
13
|
Functions | |
svn_error_t * | svn_client_add_to_changelist (const apr_array_header_t *paths, const char *changelist, svn_depth_t depth, const apr_array_header_t *changelists, svn_client_ctx_t *ctx, apr_pool_t *pool) |
svn_error_t * | svn_client_remove_from_changelists (const apr_array_header_t *paths, svn_depth_t depth, const apr_array_header_t *changelists, svn_client_ctx_t *ctx, apr_pool_t *pool) |
svn_error_t * | svn_client_get_changelists (const char *path, const apr_array_header_t *changelists, svn_depth_t depth, svn_changelist_receiver_t callback_func, void *callback_baton, svn_client_ctx_t *ctx, apr_pool_t *pool) |
Changelist commands
svn_error_t* svn_client_add_to_changelist | ( | const apr_array_header_t * | paths, |
const char * | changelist, | ||
svn_depth_t | depth, | ||
const apr_array_header_t * | changelists, | ||
svn_client_ctx_t * | ctx, | ||
apr_pool_t * | pool | ||
) |
Implementation note:
For now, changelists are implemented by scattering the associations across multiple .svn/entries files in a working copy. However, this client API was written so that we have the option of changing the underlying implementation -- we may someday want to store changelist definitions in a centralized database. Add each path in paths (recursing to depth as necessary) to changelist. If a path is already a member of another changelist, then remove it from the other changelist and add it to changelist. (For now, a path cannot belong to two changelists at once.)
paths is an array of (const char *) local WC paths.
changelists is an array of const char *
changelist names, used as a restrictive filter on items whose changelist assignments are adjusted; that is, don't tweak the changeset of any item unless it's currently a member of one of those changelists. If changelists is empty (or altogether NULL
), no changelist filtering occurs.
svn_error_t* svn_client_get_changelists | ( | const char * | path, |
const apr_array_header_t * | changelists, | ||
svn_depth_t | depth, | ||
svn_changelist_receiver_t | callback_func, | ||
void * | callback_baton, | ||
svn_client_ctx_t * | ctx, | ||
apr_pool_t * | pool | ||
) |
Beginning at path, crawl to depth to discover every path in or under path which belongs to one of the changelists in changelists (an array of const char *
changelist names). If changelists is NULL
, discover paths with any changelist. Call callback_func (with callback_baton) each time a changelist-having path is discovered.
path is a local WC path.
If ctx->cancel_func is not NULL
, invoke it passing ctx->cancel_baton during the recursive walk.
svn_error_t* svn_client_remove_from_changelists | ( | const apr_array_header_t * | paths, |
svn_depth_t | depth, | ||
const apr_array_header_t * | changelists, | ||
svn_client_ctx_t * | ctx, | ||
apr_pool_t * | pool | ||
) |
Remove each path in paths (recursing to depth as necessary) from changelists to which they are currently assigned.
paths is an array of (const char *) local WC paths.
changelists is an array of const char *
changelist names, used as a restrictive filter on items whose changelist assignments are removed; that is, don't remove from a changeset any item unless it's currently a member of one of those changelists. If changelists is empty (or altogether NULL
), all changelist assignments in and under each path in paths (to depth) will be removed.