GME  13
Functions
Client Changelist Functions
Client working copy management
Collaboration diagram for Client Changelist Functions:

Functions

svn_error_tsvn_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_tsvn_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_tsvn_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)

Detailed Description

Changelist commands


Function Documentation

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.

Note:
This metadata is purely a client-side "bookkeeping" convenience, and is entirely managed by the working copy.
Since:
New in 1.5.
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.

Since:
New in 1.5.
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.

Note:
This metadata is purely a client-side "bookkeeping" convenience, and is entirely managed by the working copy.
Since:
New in 1.5.