|
Subversion
|
Go to the documentation of this file.
32 #include <apr_pools.h>
33 #include <apr_tables.h>
151 const char *prop_name);
189 const char *prop_name);
294 apr_array_header_t **entry_props,
295 apr_array_header_t **wc_props,
296 apr_array_header_t **regular_props,
323 const apr_hash_t *target_props,
324 const apr_hash_t *source_props,
344 #define SVN_PROP_PREFIX "svn:"
370 #define SVN_PROP_BOOLEAN_TRUE "*"
373 #define SVN_PROP_MIME_TYPE SVN_PROP_PREFIX "mime-type"
376 #define SVN_PROP_IGNORE SVN_PROP_PREFIX "ignore"
379 #define SVN_PROP_EOL_STYLE SVN_PROP_PREFIX "eol-style"
382 #define SVN_PROP_KEYWORDS SVN_PROP_PREFIX "keywords"
385 #define SVN_PROP_EXECUTABLE SVN_PROP_PREFIX "executable"
392 #define SVN_PROP_EXECUTABLE_VALUE SVN_PROP_BOOLEAN_TRUE
396 #define SVN_PROP_NEEDS_LOCK SVN_PROP_PREFIX "needs-lock"
403 #define SVN_PROP_NEEDS_LOCK_VALUE SVN_PROP_BOOLEAN_TRUE
406 #define SVN_PROP_SPECIAL SVN_PROP_PREFIX "special"
413 #define SVN_PROP_SPECIAL_VALUE SVN_PROP_BOOLEAN_TRUE
440 #define SVN_PROP_EXTERNALS SVN_PROP_PREFIX "externals"
452 #define SVN_PROP_MERGEINFO SVN_PROP_PREFIX "mergeinfo"
458 #define SVN_PROP_INHERITABLE_AUTO_PROPS SVN_PROP_PREFIX "auto-props"
464 #define SVN_PROP_INHERITABLE_IGNORES SVN_PROP_PREFIX "global-ignores"
491 #define SVN_PROP_TEXT_TIME SVN_PROP_PREFIX "text-time"
502 #define SVN_PROP_OWNER SVN_PROP_PREFIX "owner"
511 #define SVN_PROP_GROUP SVN_PROP_PREFIX "group"
521 #define SVN_PROP_UNIX_MODE SVN_PROP_PREFIX "unix-mode"
531 #define SVN_PROP_NODE_ALL_PROPS SVN_PROP_MIME_TYPE, \
533 SVN_PROP_EOL_STYLE, \
535 SVN_PROP_EXECUTABLE, \
536 SVN_PROP_NEEDS_LOCK, \
538 SVN_PROP_EXTERNALS, \
539 SVN_PROP_MERGEINFO, \
540 SVN_PROP_INHERITABLE_AUTO_PROPS, \
541 SVN_PROP_INHERITABLE_IGNORES, \
543 SVN_PROP_TEXT_TIME, \
571 #define SVN_PROP_WC_PREFIX SVN_PROP_PREFIX "wc:"
576 #define SVN_PROP_ENTRY_PREFIX SVN_PROP_PREFIX "entry:"
579 #define SVN_PROP_ENTRY_COMMITTED_REV SVN_PROP_ENTRY_PREFIX "committed-rev"
582 #define SVN_PROP_ENTRY_COMMITTED_DATE SVN_PROP_ENTRY_PREFIX "committed-date"
585 #define SVN_PROP_ENTRY_LAST_AUTHOR SVN_PROP_ENTRY_PREFIX "last-author"
588 #define SVN_PROP_ENTRY_UUID SVN_PROP_ENTRY_PREFIX "uuid"
592 #define SVN_PROP_ENTRY_LOCK_TOKEN SVN_PROP_ENTRY_PREFIX "lock-token"
597 #define SVN_PROP_CUSTOM_PREFIX SVN_PROP_PREFIX "custom:"
611 #define SVN_PROP_REVISION_AUTHOR SVN_PROP_PREFIX "author"
614 #define SVN_PROP_REVISION_LOG SVN_PROP_PREFIX "log"
617 #define SVN_PROP_REVISION_DATE SVN_PROP_PREFIX "date"
630 #define SVN_PROP_REVISION_ORIG_DATE SVN_PROP_PREFIX "original-date"
636 #define SVN_PROP_REVISION_AUTOVERSIONED SVN_PROP_PREFIX "autoversioned"
645 #define SVNSYNC_PROP_PREFIX SVN_PROP_PREFIX "sync-"
654 #define SVNSYNC_PROP_LOCK SVNSYNC_PROP_PREFIX "lock"
659 #define SVNSYNC_PROP_FROM_URL SVNSYNC_PROP_PREFIX "from-url"
663 #define SVNSYNC_PROP_FROM_UUID SVNSYNC_PROP_PREFIX "from-uuid"
668 #define SVNSYNC_PROP_LAST_MERGED_REV SVNSYNC_PROP_PREFIX "last-merged-rev"
673 #define SVNSYNC_PROP_CURRENTLY_COPYING SVNSYNC_PROP_PREFIX "currently-copying"
679 #define SVN_PROP_REVISION_ALL_PROPS SVN_PROP_REVISION_AUTHOR, \
680 SVN_PROP_REVISION_LOG, \
681 SVN_PROP_REVISION_DATE, \
682 SVN_PROP_REVISION_AUTOVERSIONED, \
683 SVN_PROP_REVISION_ORIG_DATE, \
685 SVNSYNC_PROP_FROM_URL, \
686 SVNSYNC_PROP_FROM_UUID, \
687 SVNSYNC_PROP_LAST_MERGED_REV, \
688 SVNSYNC_PROP_CURRENTLY_COPYING,
706 #define SVN_PROP_TXN_PREFIX SVN_PROP_PREFIX "txn-"
715 #define SVN_PROP_TXN_CLIENT_COMPAT_VERSION \
716 SVN_PROP_TXN_PREFIX "client-compat-version"
722 #define SVN_PROP_TXN_USER_AGENT \
723 SVN_PROP_TXN_PREFIX "user-agent"
735 #define SVN_PROP_REVISION_PREFIX SVN_PROP_PREFIX "revision-"
svn_error_t * svn_prop_diffs(apr_array_header_t **propdiffs, const apr_hash_t *target_props, const apr_hash_t *source_props, apr_pool_t *pool)
Given two property hashes (const char *name -> const svn_string_t *value), deduce the differences bet...
svn_boolean_t svn_prop_is_known_svn_file_prop(const char *prop_name)
Return TRUE iff prop_name is in the "svn:" name space and is a known versioned property that is allow...
apr_hash_t * prop_hash
A hash of (const char *) inherited property names, and (svn_string_t *) property values.
const char * svn_prop_get_value(const apr_hash_t *properties, const char *prop_name)
Return the value of property prop_name as it is in properties, with values const svn_string_t.
apr_array_header_t * svn_prop_array_dup(const apr_array_header_t *array, apr_pool_t *pool)
Duplicate an array of svn_prop_t items using pool.
svn_boolean_t svn_prop_is_known_svn_node_prop(const char *prop_name)
Return TRUE iff prop_name is in the "svn:" name space and is a known versioned property that is allow...
Counted-length strings for Subversion, plus some C string goodies.
svn_prop_kind_t svn_property_kind2(const char *prop_name)
Return the property kind of a property named prop_name.
svn_boolean_t svn_prop_has_svn_prop(const apr_hash_t *props, apr_pool_t *pool)
Return TRUE iff props has at least one property whose name represents the name of a Subversion proper...
svn_error_t * svn_categorize_props(const apr_array_header_t *proplist, apr_array_header_t **entry_props, apr_array_header_t **wc_props, apr_array_header_t **regular_props, apr_pool_t *pool)
Given a proplist array of svn_prop_t structures, allocate three new arrays in pool.
@ svn_prop_regular_kind
Seen if user does "svn proplist"; note that this includes some "svn:" props and all user props,...
svn_boolean_t svn_prop_is_known_svn_dir_prop(const char *prop_name)
Return TRUE iff prop_name is in the "svn:" name space and is a known versioned property that is allow...
svn_boolean_t svn_prop_is_svn_prop(const char *prop_name)
Return TRUE iff prop_name represents the name of a Subversion property.
svn_boolean_t svn_prop_is_known_svn_rev_prop(const char *prop_name)
Return TRUE iff prop_name is in the "svn:" name space and is a known revision property ("svn:log" or ...
svn_boolean_t svn_prop_name_is_valid(const char *prop_name)
Return TRUE iff prop_name is a valid property name.
A structure to represent inherited properties.
@ svn_prop_entry_kind
In .svn/entries, i.e., author, date, etc.
enum svn_prop_kind svn_prop_kind_t
Subversion distinguishes among several kinds of properties, particularly on the client-side.
svn_prop_kind_t svn_property_kind(int *prefix_len, const char *prop_name)
Return the prop kind of a property named prop_name, and (if prefix_len is non-NULL) set *prefix_len t...
svn_boolean_t svn_prop_needs_translation(const char *prop_name)
If prop_name requires that its value be stored as UTF8/LF in the repository, then return TRUE.
struct svn_prop_inherited_item_t svn_prop_inherited_item_t
A structure to represent inherited properties.
svn_prop_t * svn_prop_dup(const svn_prop_t *prop, apr_pool_t *pool)
Return a duplicate of prop, allocated in pool.
svn_prop_kind
Subversion distinguishes among several kinds of properties, particularly on the client-side.
A general in-memory representation of a single property.
apr_hash_t * svn_prop_hash_dup(const apr_hash_t *hash, apr_pool_t *pool)
Creates a deep copy of hash (keys const char * and values const svn_string_t *) in pool.
apr_array_header_t * svn_prop_hash_to_array(const apr_hash_t *hash, apr_pool_t *pool)
Given a hash (keys const char * and values const svn_string_t) of properties, returns an array of svn...
const svn_string_t * value
Property value.
struct svn_prop_t svn_prop_t
A general in-memory representation of a single property.
int svn_boolean_t
YABT: Yet Another Boolean Type.
#define SVN_DEPRECATED
Macro used to mark deprecated functions.
const char * path_or_url
The absolute working copy path, relative filesystem path, or URL from which the properties in prop_ha...
svn_boolean_t svn_prop_is_boolean(const char *prop_name)
Return TRUE iff prop_name is a Subversion property whose value is interpreted as a boolean.
apr_hash_t * svn_prop_array_to_hash(const apr_array_header_t *properties, apr_pool_t *result)
Given an array of svn_prop_t items, return a hash mapping const char * property names to const svn_st...
@ svn_prop_wc_kind
Client-side only, stored by specific RA layer.
const char * name
Property name.