Alien-SVN
view release on metacpan or search on metacpan
src/subversion/subversion/include/svn_client.h view on Meta::CPAN
* is #svn_depth_infinity, else #svn_depth_empty.
*
* @deprecated Provided for backward compatibility with the 1.4 API.
*/
SVN_DEPRECATED
svn_error_t *
svn_client_propset2(const char *propname,
const svn_string_t *propval,
const char *target,
svn_boolean_t recurse,
svn_boolean_t skip_checks,
svn_client_ctx_t *ctx,
apr_pool_t *pool);
/**
* Like svn_client_propset2(), but with @a skip_checks always FALSE and a
* newly created @a ctx.
*
* @deprecated Provided for backward compatibility with the 1.1 API.
*/
SVN_DEPRECATED
svn_error_t *
svn_client_propset(const char *propname,
const svn_string_t *propval,
const char *target,
svn_boolean_t recurse,
apr_pool_t *pool);
/** Set @a propname to @a propval on revision @a revision in the repository
* represented by @a URL. Use the authentication baton in @a ctx for
* authentication, and @a pool for all memory allocation. Return the actual
* rev affected in @a *set_rev. A @a propval of @c NULL will delete the
* property.
*
* If @a original_propval is non-NULL, then just before setting the
* new value, check that the old value matches @a original_propval;
* if they do not match, return the error #SVN_ERR_RA_OUT_OF_DATE.
* This is to help clients support interactive editing of revprops:
* without this check, the window during which the property may change
* underneath the user is as wide as the amount of time the user
* spends editing the property. With this check, the window is
* reduced to a small, constant amount of time right before we set the
* new value. (To check that an old value is still non-existent, set
* @a original_propval->data to NULL, and @a original_propval->len is
* ignored.)
* If the server advertises #SVN_RA_CAPABILITY_ATOMIC_REVPROPS, the
* check of @a original_propval is done atomically.
*
* Note: the representation of "property is not set" in @a
* original_propval differs from the representation in other APIs
* (such as svn_fs_change_rev_prop2() and svn_ra_change_rev_prop2()).
*
* If @a force is TRUE, allow newlines in the author property.
*
* If @a propname is an svn-controlled property (i.e. prefixed with
* #SVN_PROP_PREFIX), then the caller is responsible for ensuring that
* the value UTF8-encoded and uses LF line-endings.
*
* Note that unlike its cousin svn_client_propset3(), this routine
* doesn't affect the working copy at all; it's a pure network
* operation that changes an *unversioned* property attached to a
* revision. This can be used to tweak log messages, dates, authors,
* and the like. Be careful: it's a lossy operation.
* @a ctx->notify_func2 and @a ctx->notify_baton2 are the notification
* functions and baton which are called upon successful setting of the
* property.
*
* Also note that unless the administrator creates a
* pre-revprop-change hook in the repository, this feature will fail.
*
* @since New in 1.6.
*/
svn_error_t *
svn_client_revprop_set2(const char *propname,
const svn_string_t *propval,
const svn_string_t *original_propval,
const char *URL,
const svn_opt_revision_t *revision,
svn_revnum_t *set_rev,
svn_boolean_t force,
svn_client_ctx_t *ctx,
apr_pool_t *pool);
/**
* Similar to svn_client_revprop_set2(), but with @a original_propval
* always @c NULL.
*
* @deprecated Provided for backward compatibility with the 1.5 API.
*/
SVN_DEPRECATED
svn_error_t *
svn_client_revprop_set(const char *propname,
const svn_string_t *propval,
const char *URL,
const svn_opt_revision_t *revision,
svn_revnum_t *set_rev,
svn_boolean_t force,
svn_client_ctx_t *ctx,
apr_pool_t *pool);
/**
* Set @a *props to a hash table whose keys are absolute paths or URLs
* of items on which property @a propname is explicitly set, and whose
* values are <tt>svn_string_t *</tt> representing the property value for
* @a propname at that path.
*
* If @a inherited_props is not @c NULL, then set @a *inherited_props to a
* depth-first ordered array of #svn_prop_inherited_item_t * structures
* representing the properties inherited by @a target. If @a target is a
* working copy path, then properties inherited by @a target as far as the
* root of the working copy are obtained from the working copy's actual
* property values. Properties inherited from above the working copy root
* come from the inherited properties cache. If @a target is a URL, then
* the inherited properties come from the repository. If @a inherited_props
* is not @c NULL and no inheritable properties are found, then set
* @a *inherited_props to an empty array.
*
* The #svn_prop_inherited_item_t->path_or_url members of the
* #svn_prop_inherited_item_t * structures in @a *inherited_props are
* URLs if @a target is a URL or if @a target is a working copy path but the
src/subversion/subversion/include/svn_client.h view on Meta::CPAN
* would return SVN_ERR_UNVERSIONED_RESOURCE.
*
* @since New in 1.5.
* @deprecated Provided for backward compatibility with the 1.6 API.
*/
SVN_DEPRECATED
svn_error_t *
svn_client_propget3(apr_hash_t **props,
const char *propname,
const char *target,
const svn_opt_revision_t *peg_revision,
const svn_opt_revision_t *revision,
svn_revnum_t *actual_revnum,
svn_depth_t depth,
const apr_array_header_t *changelists,
svn_client_ctx_t *ctx,
apr_pool_t *pool);
/**
* Similar to svn_client_propget3(), except that @a actual_revnum and
* @a changelists are always @c NULL, and @a depth is set according to
* @a recurse: if @a recurse is TRUE, then @a depth is
* #svn_depth_infinity, else #svn_depth_empty.
*
* @deprecated Provided for backward compatibility with the 1.4 API.
*/
SVN_DEPRECATED
svn_error_t *
svn_client_propget2(apr_hash_t **props,
const char *propname,
const char *target,
const svn_opt_revision_t *peg_revision,
const svn_opt_revision_t *revision,
svn_boolean_t recurse,
svn_client_ctx_t *ctx,
apr_pool_t *pool);
/**
* Similar to svn_client_propget2(), except that @a peg_revision is
* always the same as @a revision.
*
* @deprecated Provided for backward compatibility with the 1.1 API.
*/
SVN_DEPRECATED
svn_error_t *
svn_client_propget(apr_hash_t **props,
const char *propname,
const char *target,
const svn_opt_revision_t *revision,
svn_boolean_t recurse,
svn_client_ctx_t *ctx,
apr_pool_t *pool);
/** Set @a *propval to the value of @a propname on revision @a revision
* in the repository represented by @a URL. Use the authentication baton
* in @a ctx for authentication, and @a pool for all memory allocation.
* Return the actual rev queried in @a *set_rev.
*
* Note that unlike its cousin svn_client_propget(), this routine
* doesn't affect the working copy at all; it's a pure network
* operation that queries an *unversioned* property attached to a
* revision. This can query log messages, dates, authors, and the
* like.
*/
svn_error_t *
svn_client_revprop_get(const char *propname,
svn_string_t **propval,
const char *URL,
const svn_opt_revision_t *revision,
svn_revnum_t *set_rev,
svn_client_ctx_t *ctx,
apr_pool_t *pool);
/**
* Invoke @a receiver with @a receiver_baton to return the regular explicit, and
* possibly the inherited, properties of @a target, a URL or working copy path.
* @a receiver will be called for each path encountered.
*
* @a target is a WC path or a URL.
*
* If @a revision->kind is #svn_opt_revision_unspecified, then get the
* explicit (and possibly the inherited) properties from the working copy,
* if @a target is a working copy path, or from the repository head if
* @a target is a URL. Else get the properties as of @a revision.
* The actual node revision selected is determined by the path as it exists
* in @a peg_revision. If @a peg_revision->kind is
* #svn_opt_revision_unspecified, then it defaults to #svn_opt_revision_head
* for URLs or #svn_opt_revision_working for WC targets. Use the
* authentication baton cached in @a ctx for authentication if contacting
* the repository.
*
* If @a depth is #svn_depth_empty, list only the properties of
* @a target itself. If @a depth is #svn_depth_files, and
* @a target is a directory, list the properties of @a target
* and its file entries. If #svn_depth_immediates, list the properties
* of its immediate file and directory entries. If #svn_depth_infinity,
* list the properties of its file entries and recurse (with
* #svn_depth_infinity) on directory entries. #svn_depth_unknown is
* equivalent to #svn_depth_empty. All other values produce undefined
* results.
*
* @a changelists is an array of <tt>const char *</tt> changelist
* names, used as a restrictive filter on items whose properties are
* listed; that is, don't list properties on 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 get_target_inherited_props is true, then also return any inherited
* properties when @a receiver is called for @a target. If @a target is a
* working copy path, then properties inherited by @a target as far as the
* root of the working copy are obtained from the working copy's actual
* property values. Properties inherited from above the working copy
* root come from the inherited properties cache. If @a target is a URL,
* then the inherited properties come from the repository.
* If @a get_target_inherited_props is false, then no inherited properties
* are returned to @a receiver.
*
* If @a target is not found, return the error #SVN_ERR_ENTRY_NOT_FOUND.
*
* @since New in 1.8.
*/
src/subversion/subversion/include/svn_client.h view on Meta::CPAN
svn_client_ctx_t *ctx,
apr_pool_t *scratch_pool);
/**
* Similar to svn_client_proplist4(), except that the @a receiver type
* is a #svn_proplist_receiver_t, @a get_target_inherited_props is
* always passed NULL, and there is no separate scratch pool.
*
* @since New in 1.5.
* @deprecated Provided for backward compatibility with the 1.7 API.
*/
SVN_DEPRECATED
svn_error_t *
svn_client_proplist3(const char *target,
const svn_opt_revision_t *peg_revision,
const svn_opt_revision_t *revision,
svn_depth_t depth,
const apr_array_header_t *changelists,
svn_proplist_receiver_t receiver,
void *receiver_baton,
svn_client_ctx_t *ctx,
apr_pool_t *pool);
/**
* Similar to svn_client_proplist3(), except the properties are
* returned as an array of #svn_client_proplist_item_t * structures
* instead of by invoking the receiver function, there's no support
* for @a changelists filtering, and @a recurse is used instead of a
* #svn_depth_t parameter (FALSE corresponds to #svn_depth_empty,
* and TRUE to #svn_depth_infinity).
*
* @since New in 1.2.
*
* @deprecated Provided for backward compatibility with the 1.4 API.
*/
SVN_DEPRECATED
svn_error_t *
svn_client_proplist2(apr_array_header_t **props,
const char *target,
const svn_opt_revision_t *peg_revision,
const svn_opt_revision_t *revision,
svn_boolean_t recurse,
svn_client_ctx_t *ctx,
apr_pool_t *pool);
/**
* Similar to svn_client_proplist2(), except that @a peg_revision is
* always the same as @a revision.
*
* @deprecated Provided for backward compatibility with the 1.1 API.
*/
SVN_DEPRECATED
svn_error_t *
svn_client_proplist(apr_array_header_t **props,
const char *target,
const svn_opt_revision_t *revision,
svn_boolean_t recurse,
svn_client_ctx_t *ctx,
apr_pool_t *pool);
/** Set @a *props to a hash of the revision props attached to @a revision in
* the repository represented by @a URL. Use the authentication baton cached
* in @a ctx for authentication, and @a pool for all memory allocation.
* Return the actual rev queried in @a *set_rev.
*
* The allocated hash maps (<tt>const char *</tt>) property names to
* (#svn_string_t *) property values.
*
* Note that unlike its cousin svn_client_proplist(), this routine
* doesn't read a working copy at all; it's a pure network operation
* that reads *unversioned* properties attached to a revision.
*/
svn_error_t *
svn_client_revprop_list(apr_hash_t **props,
const char *URL,
const svn_opt_revision_t *revision,
svn_revnum_t *set_rev,
svn_client_ctx_t *ctx,
apr_pool_t *pool);
/** @} */
/**
* @defgroup Export Export a tree from version control.
*
* @{
*/
/**
* Export the contents of either a subversion repository or a
* subversion working copy into a 'clean' directory (meaning a
* directory with no administrative directories). If @a result_rev
* is not @c NULL and the path being exported is a repository URL, set
* @a *result_rev to the value of the revision actually exported (set
* it to #SVN_INVALID_REVNUM for local exports).
*
* @a from_path_or_url is either the path the working copy on disk, or
* a URL to the repository you wish to export.
*
* When exporting a directory, @a to_path is the path to the directory
* where you wish to create the exported tree; when exporting a file, it
* is the path of the file that will be created. If @a to_path is the
* empty path, then the basename of the export file/directory in the repository
* will be used. If @a to_path represents an existing directory, and a
* file is being exported, then a file with the that basename will be
* created under that directory (as with 'copy' operations).
*
* @a peg_revision is the revision where the path is first looked up
* when exporting from a repository. If @a peg_revision->kind is
* #svn_opt_revision_unspecified, then it defaults to #svn_opt_revision_head
* for URLs or #svn_opt_revision_working for WC targets.
*
* @a revision is the revision that should be exported, which is only used
* when exporting from a repository.
*
* @a peg_revision and @a revision must not be @c NULL.
*
* @a ctx->notify_func2 and @a ctx->notify_baton2 are the notification
* functions and baton which are passed to svn_client_checkout() when
* exporting from a repository.
*
* @a ctx is a context used for authentication in the repository case.
*
* @a overwrite if TRUE will cause the export to overwrite files or
* directories.
*
* If @a ignore_externals is set, don't process externals definitions
* as part of this operation.
*
* If @a ignore_keywords is set, don't expand keywords as part of this
* operation.
( run in 1.905 second using v1.01-cache-2.11-cpan-2398b32b56e )