On the ev2-export branch:
Bring up-to-date with trunk.
git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/ev2-export@1432504 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/CHANGES b/CHANGES
index 003e6f3..652fb4d 100644
--- a/CHANGES
+++ b/CHANGES
@@ -35,6 +35,7 @@
* client version info now reported to commit hooks (issue #4124)
* 'svn merge' now uses reintegrate mode automatically when needed
* 'svn' is now non-interactive when not run in a terminal device (r1424037)
+ * 'svn propset' checks spelling of reserved property names.
- Client-side bugfixes:
*
diff --git a/build.conf b/build.conf
index 601fc1d..16f935d 100644
--- a/build.conf
+++ b/build.conf
@@ -1275,7 +1275,7 @@
[fsfs-reorg]
type = exe
-path = tools/server-side
+path = tools/dev
sources = fsfs-reorg.c
install = tools
libs = libsvn_delta libsvn_subr apr
diff --git a/contrib/client-side/emacs/dsvn.el b/contrib/client-side/emacs/dsvn.el
index 521315b..ec0c3fb 100644
--- a/contrib/client-side/emacs/dsvn.el
+++ b/contrib/client-side/emacs/dsvn.el
@@ -1864,8 +1864,8 @@
(interactive)
(let ((files (svn-action-files
(lambda (pos)
- (or (= (svn-file-status pos) ?C)
- (= (svn-prop-status pos) ?C)
+ (or (memq (svn-file-status pos) '(?C ?!))
+ (memq (svn-prop-status pos) '(?C ?!))
(error "%s has no conflicts"
(svn-getprop pos 'file)))))))
(make-local-variable 'svn-resolved-files)
diff --git a/notes/http-and-webdav/webdav-protocol b/notes/http-and-webdav/webdav-protocol
index 8c125b0..1d1037b 100644
--- a/notes/http-and-webdav/webdav-protocol
+++ b/notes/http-and-webdav/webdav-protocol
@@ -384,7 +384,7 @@
----------------
Purpose: Retrieve the merge history for a portion of the repository
-(e.g. a set of paths) at a particular revision.
+ (e.g. a set of paths) at a particular revision.
Target URL: URL of item we're getting merge info for.
@@ -415,3 +415,41 @@
<S:mergeinfo-info>/A/B/E:1,3-4</S:mergeinfo-info>
</S:mergeinfo-item>
</S:mergeinfo-report>
+
+replay-report
+-------------
+
+Purpose: Retrieve a record of the changes made in a given revision,
+ possibly limited to only those changes which affect a
+ specific subtree of the repository.
+
+Target URL: Prior to Subversion 1.8, the target URL was the public
+ resource URL of the aforementioned subtree. Per issue #4287
+ (http://subversion.tigris.org/issues/show_bug.cgi?id=4287),
+ it was discovered that this was an incorrect approach, so
+ in Subversion 1.8, mod_dav_svn allowed clients to submit
+ this report (with a slightly different Request syntax)
+ against baselined version resources.
+
+Request:
+
+ Original syntax, used against a regular resource URL:
+
+ <S:replay-report xmlns:S=\"svn:\">
+ <S:revision>REVISION</S:revision>
+ <S:low-water-mark>LOW_WATER_MARK_REV</S:low-water-mark>
+ <S:send-deltas>0</S:send-deltas> (... or non-zero if sending deltas)
+ </S:replay-report>
+
+ New (in Subversion 1.8) syntax, used against a baselined version
+ resource URL:
+
+ <S:replay-report xmlns:S=\"svn:\">
+ <S:include-path>/trunk/subversion/tests</S:include-path>
+ <S:low-water-mark>LOW_WATER_MARK_REV</S:low-water-mark>
+ <S:send-deltas>0</S:send-deltas> (... or non-zero if sending deltas)
+ </S:replay-report>
+
+Response:
+
+ ### TODO ###
\ No newline at end of file
diff --git a/subversion/bindings/javahl/native/JNIUtil.cpp b/subversion/bindings/javahl/native/JNIUtil.cpp
index 975ce73..fc6e287 100644
--- a/subversion/bindings/javahl/native/JNIUtil.cpp
+++ b/subversion/bindings/javahl/native/JNIUtil.cpp
@@ -396,7 +396,7 @@
char *tmp_path;
char *path = svn_dirent_dirname(err->file, err->pool);
- while (tmp_path = strchr(path, '/'))
+ while ((tmp_path = strchr(path, '/')))
*tmp_path = '.';
jstring jmethodName = makeJString(path);
diff --git a/subversion/bindings/javahl/native/RevpropTable.cpp b/subversion/bindings/javahl/native/RevpropTable.cpp
index 463f8c3..5da74dd 100644
--- a/subversion/bindings/javahl/native/RevpropTable.cpp
+++ b/subversion/bindings/javahl/native/RevpropTable.cpp
@@ -77,7 +77,7 @@
if (jrevpropTable != NULL)
{
- static jmethodID keySet = 0, toArray = 0, get = 0;
+ static jmethodID keySet = 0, get = 0;
JNIEnv *env = JNIUtil::getEnv();
jclass mapClazz = env->FindClass("java/util/Map");
diff --git a/subversion/bindings/javahl/native/SVNClient.cpp b/subversion/bindings/javahl/native/SVNClient.cpp
index 60498e3..e203955 100644
--- a/subversion/bindings/javahl/native/SVNClient.cpp
+++ b/subversion/bindings/javahl/native/SVNClient.cpp
@@ -71,7 +71,7 @@
SVNClient::SVNClient(jobject jthis_in)
- : context(jthis_in, pool), m_lastPath("", pool)
+ : m_lastPath("", pool), context(jthis_in, pool)
{
}
diff --git a/subversion/include/private/svn_wc_private.h b/subversion/include/private/svn_wc_private.h
index cbcbcd2..8fbc9fa 100644
--- a/subversion/include/private/svn_wc_private.h
+++ b/subversion/include/private/svn_wc_private.h
@@ -863,6 +863,11 @@
* required), up to and including the root of the working copy and
* any cached inherited properties inherited by the root.
*
+ * The #svn_prop_inherited_item_t->path_or_url members of the
+ * #svn_prop_inherited_item_t * structures in @a *inherited_props are
+ * paths relative to the repository root URL for cached inherited
+ * properties and absolute working copy paths otherwise.
+ *
* Allocate @a *inherited_props in @a result_pool. Use @a scratch_pool
* for temporary allocations.
*/
diff --git a/subversion/include/svn_client.h b/subversion/include/svn_client.h
index 687201a..c8f01a7 100644
--- a/subversion/include/svn_client.h
+++ b/subversion/include/svn_client.h
@@ -365,6 +365,14 @@
* properties inherited by @a path. Use @a scratch_pool for all temporary
* allocations.
*
+ * 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 path is a URL or if @path is a working copy path but the
+ * property represented by the structure is above the working copy root (i.e.
+ * the inherited property is from the cache). In all other cases the
+ * #svn_prop_inherited_item_t->path_or_url members are absolute working copy
+ * paths.
+ *
* @since New in 1.8.
*/
typedef svn_error_t *(*svn_proplist_receiver2_t)(
@@ -4922,6 +4930,14 @@
* 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 @target is a working copy path but the
+ * property represented by the structure is above the working copy root (i.e.
+ * the inherited property is from the cache). In all other cases the
+ * #svn_prop_inherited_item_t->path_or_url members are absolute working copy
+ * paths.
+ *
* Allocate @a *props, its keys, and its values in @a pool, use
* @a scratch_pool for temporary allocations.
*
diff --git a/subversion/include/svn_dav.h b/subversion/include/svn_dav.h
index 9cea15b..2743acc 100644
--- a/subversion/include/svn_dav.h
+++ b/subversion/include/svn_dav.h
@@ -323,6 +323,13 @@
#define SVN_DAV_NS_DAV_SVN_INLINE_PROPS\
SVN_DAV_PROP_NS_DAV "svn/inline-props"
+/** Presence of this in a DAV header in an OPTIONS response indicates
+ * that the transmitter (in this case, the server) knows how to handle
+ * a replay of a revision resource. Transmitters must be
+ * HTTP-v2-enabled to support this feature. */
+#define SVN_DAV_NS_DAV_SVN_REPLAY_REV_RESOURCE\
+ SVN_DAV_PROP_NS_DAV "svn/replay-rev-resource"
+
/** @} */
diff --git a/subversion/include/svn_ra.h b/subversion/include/svn_ra.h
index a583f3e..0f8e10d 100644
--- a/subversion/include/svn_ra.h
+++ b/subversion/include/svn_ra.h
@@ -1930,11 +1930,10 @@
* inheritable properties are found, then set @a *inherited_props to
* an empty array.
*
- * If @a use_relpath_keys is true, then the
- * #svn_prop_inherited_item_t->path_or_url members of the
+ * The #svn_prop_inherited_item_t->path_or_url members of the
* #svn_prop_inherited_item_t * structures in @a *inherited_props are
* paths relative to the repository root URL (of the repository which
- * @a ra_session is associated). Otherwise these members are URLs.
+ * @a ra_session is associated).
*
* Allocated @a *inherited_props in @a result_pool, use @a scratch_pool
* for temporary allocations.
@@ -1946,7 +1945,6 @@
apr_array_header_t **inherited_props,
const char *path,
svn_revnum_t revision,
- svn_boolean_t use_relpath_keys,
apr_pool_t *result_pool,
apr_pool_t *scratch_pool);
diff --git a/subversion/include/svn_types.h b/subversion/include/svn_types.h
index 2c48b25..59f938f 100644
--- a/subversion/include/svn_types.h
+++ b/subversion/include/svn_types.h
@@ -550,8 +550,7 @@
* non-recursive (which in turn usually translates to #svn_depth_files).
*/
#define SVN_DEPTH_IS_RECURSIVE(depth) \
- (((depth) == svn_depth_infinity || (depth) == svn_depth_unknown) \
- ? TRUE : FALSE)
+ ((depth) == svn_depth_infinity || (depth) == svn_depth_unknown)
@@ -1212,7 +1211,7 @@
* @{ */
/**
- * A representation of a segment of a object's version history with an
+ * A representation of a segment of an object's version history with an
* emphasis on the object's location in the repository as of various
* revisions.
*
@@ -1221,7 +1220,7 @@
typedef struct svn_location_segment_t
{
/** The beginning (oldest) and ending (youngest) revisions for this
- segment. */
+ segment, both inclusive. */
svn_revnum_t range_start;
svn_revnum_t range_end;
diff --git a/subversion/libsvn_client/client.h b/subversion/libsvn_client/client.h
index ff2bdcc..590381f 100644
--- a/subversion/libsvn_client/client.h
+++ b/subversion/libsvn_client/client.h
@@ -650,14 +650,25 @@
/*** Inheritable Properties ***/
+/* Convert any svn_prop_inherited_item_t elements in INHERITED_PROPS which
+ have repository root relative path PATH_OR_URL structure members to URLs
+ using REPOS_ROOT_URL. Changes to the contents of INHERITED_PROPS are
+ allocated in RESULT_POOL. SCRATCH_POOL is used for temporary
+ allocations. */
+svn_error_t *
+svn_client__iprop_relpaths_to_urls(apr_array_header_t *inherited_props,
+ const char *repos_root_url,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool);
+
/* Fetch the inherited properties for the base of LOCAL_ABSPATH as well
as any WC roots under LOCAL_ABSPATH (as limited by DEPTH) using
RA_SESSION. Store the results in *WCROOT_IPROPS, a hash mapping
const char * absolute working copy paths to depth-first ordered arrays
- of svn_prop_inherited_item_t * structures. If WANT_RELPATH_KEYS is true,
- then any svn_prop_inherited_item_t->path_or_url members returned in
- *WCROOT_IPROPS are repository relative paths, otherwise these members are
- URLs.
+ of svn_prop_inherited_item_t * structures.
+
+ Any svn_prop_inherited_item_t->path_or_url members returned in
+ *WCROOT_IPROPS are repository relative paths.
If LOCAL_ABSPATH has no base then do nothing.
@@ -672,7 +683,6 @@
const char *local_abspath,
svn_revnum_t revision,
svn_depth_t depth,
- svn_boolean_t use_relpath_keys,
svn_ra_session_t *ra_session,
svn_client_ctx_t *ctx,
apr_pool_t *result_pool,
diff --git a/subversion/libsvn_client/copy.c b/subversion/libsvn_client/copy.c
index f4de846..bef7985 100644
--- a/subversion/libsvn_client/copy.c
+++ b/subversion/libsvn_client/copy.c
@@ -2075,8 +2075,7 @@
else
{
/* We ignore these values, so assert the default value */
- SVN_ERR_ASSERT(allow_mixed_revisions == TRUE
- && metadata_only == FALSE);
+ SVN_ERR_ASSERT(allow_mixed_revisions && !metadata_only);
return svn_error_trace(do_wc_to_wc_copies(copy_pairs, ctx, pool));
}
}
diff --git a/subversion/libsvn_client/externals.c b/subversion/libsvn_client/externals.c
index c453b9b..da1869f 100644
--- a/subversion/libsvn_client/externals.c
+++ b/subversion/libsvn_client/externals.c
@@ -484,8 +484,7 @@
ctx, subpool));
/* Get the external file's iprops. */
SVN_ERR(svn_ra_get_inherited_props(ra_session, &inherited_props, "",
- switch_loc->rev, TRUE,
- subpool, subpool));
+ switch_loc->rev, subpool, subpool));
SVN_ERR(svn_ra_reparent(ra_session, svn_uri_dirname(url, subpool),
subpool));
diff --git a/subversion/libsvn_client/iprops.c b/subversion/libsvn_client/iprops.c
index 57de908..8df7c26 100644
--- a/subversion/libsvn_client/iprops.c
+++ b/subversion/libsvn_client/iprops.c
@@ -31,6 +31,8 @@
#include "svn_pools.h"
#include "svn_wc.h"
#include "svn_ra.h"
+#include "svn_props.h"
+#include "svn_path.h"
#include "client.h"
#include "svn_private_config.h"
@@ -97,11 +99,35 @@
}
svn_error_t *
+svn_client__iprop_relpaths_to_urls(apr_array_header_t *inherited_props,
+ const char *repos_root_url,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool)
+{
+ int i;
+
+ for (i = 0; i < inherited_props->nelts; i++)
+ {
+ svn_prop_inherited_item_t *elt =
+ APR_ARRAY_IDX(inherited_props, i, svn_prop_inherited_item_t *);
+
+ /* Convert repos root relpaths to full URLs. */
+ if (! (svn_path_is_url(elt->path_or_url)
+ || svn_dirent_is_absolute(elt->path_or_url)))
+ {
+ elt->path_or_url = svn_path_url_add_component2(repos_root_url,
+ elt->path_or_url,
+ result_pool);
+ }
+ }
+ return SVN_NO_ERROR;
+}
+
+svn_error_t *
svn_client__get_inheritable_props(apr_hash_t **wcroot_iprops,
const char *local_abspath,
svn_revnum_t revision,
svn_depth_t depth,
- svn_boolean_t use_relpath_keys,
svn_ra_session_t *ra_session,
svn_client_ctx_t *ctx,
apr_pool_t *result_pool,
@@ -184,7 +210,7 @@
}
SVN_ERR(svn_ra_get_inherited_props(ra_session, &inherited_props,
- "", revision, use_relpath_keys,
+ "", revision,
result_pool, iterpool));
apr_hash_set(*wcroot_iprops,
apr_pstrdup(result_pool, child_abspath),
diff --git a/subversion/libsvn_client/merge.c b/subversion/libsvn_client/merge.c
index 1d5b3ba..e852bd0 100644
--- a/subversion/libsvn_client/merge.c
+++ b/subversion/libsvn_client/merge.c
@@ -9602,7 +9602,7 @@
if (min_rev != max_rev)
return svn_error_createf(SVN_ERR_CLIENT_MERGE_UPDATE_REQUIRED, NULL,
_("Cannot merge into mixed-revision working "
- "copy [%lu:%lu]; try updating first"),
+ "copy [%ld:%ld]; try updating first"),
min_rev, max_rev);
}
diff --git a/subversion/libsvn_client/mergeinfo.h b/subversion/libsvn_client/mergeinfo.h
index 315888b..40ab398 100644
--- a/subversion/libsvn_client/mergeinfo.h
+++ b/subversion/libsvn_client/mergeinfo.h
@@ -292,9 +292,10 @@
/* Set *MERGEINFO_P to a mergeinfo constructed solely from the
natural history of PATHREV.
- If RANGE_YOUNGEST and RANGE_OLDEST are valid, use them to bound the
- revision ranges of returned mergeinfo. They are governed by the same
- rules as the PEG_REVISION, START_REV, and END_REV parameters of
+ If RANGE_YOUNGEST and RANGE_OLDEST are valid, use them as inclusive
+ bounds on the revision ranges of returned mergeinfo. PATHREV->rev,
+ RANGE_YOUNGEST and RANGE_OLDEST are governed by the same rules as the
+ PEG_REVISION, START_REV, and END_REV parameters (respectively) of
svn_ra_get_location_segments().
If HAS_REV_ZERO_HISTORY is not NULL, then set *HAS_REV_ZERO_HISTORY to
diff --git a/subversion/libsvn_client/prop_commands.c b/subversion/libsvn_client/prop_commands.c
index ef351bf..47e4576 100644
--- a/subversion/libsvn_client/prop_commands.c
+++ b/subversion/libsvn_client/prop_commands.c
@@ -617,11 +617,19 @@
if (inherited_props)
{
+ const char *repos_root_url;
+
/* We will filter out all but PROPNAME later, making a final copy
- in RESULT_POOL, so pass SCRATCH_POOL for both pools. */
+ in RESULT_POOL, so pass SCRATCH_POOL for all pools. */
SVN_ERR(svn_ra_get_inherited_props(ra_session, inherited_props,
- target_relative, revnum, FALSE,
+ target_relative, revnum,
scratch_pool, scratch_pool));
+ SVN_ERR(svn_ra_get_repos_root2(ra_session, &repos_root_url,
+ scratch_pool));
+ SVN_ERR(svn_client__iprop_relpaths_to_urls(*inherited_props,
+ repos_root_url,
+ scratch_pool,
+ scratch_pool));
}
/* Make a copy of any inherited PROPNAME properties in RESULT_POOL. */
@@ -871,9 +879,20 @@
return svn_error_trace(err);
if (inherited_props && local_iprops)
- SVN_ERR(svn_wc__get_iprops(inherited_props, ctx->wc_ctx,
- target, propname,
- result_pool, scratch_pool));
+ {
+ const char *repos_root_url;
+
+ SVN_ERR(svn_wc__get_iprops(inherited_props, ctx->wc_ctx,
+ target, propname,
+ result_pool, scratch_pool));
+ SVN_ERR(svn_client_get_repos_root(&repos_root_url, NULL,
+ target, ctx, scratch_pool,
+ scratch_pool));
+ SVN_ERR(svn_client__iprop_relpaths_to_urls(*inherited_props,
+ repos_root_url,
+ result_pool,
+ scratch_pool));
+ }
SVN_ERR(get_prop_from_wc(props, propname, target,
pristine, kind,
@@ -1105,11 +1124,23 @@
}
if (get_target_inherited_props)
- SVN_ERR(svn_ra_get_inherited_props(ra_session, &inherited_props,
- target_relative, revnum, FALSE,
- result_pool, scratch_pool));
+ {
+ const char *repos_root_url;
+
+ SVN_ERR(svn_ra_get_inherited_props(ra_session, &inherited_props,
+ target_relative, revnum,
+ result_pool, scratch_pool));
+ SVN_ERR(svn_ra_get_repos_root2(ra_session, &repos_root_url,
+ scratch_pool));
+ SVN_ERR(svn_client__iprop_relpaths_to_urls(inherited_props,
+ repos_root_url,
+ result_pool,
+ scratch_pool));
+ }
else
- inherited_props = NULL;
+ {
+ inherited_props = NULL;
+ }
if (get_explicit_props)
{
@@ -1389,9 +1420,15 @@
if (get_target_inherited_props)
{
apr_array_header_t *iprops;
+ const char *repos_root_url;
SVN_ERR(svn_wc__get_iprops(&iprops, ctx->wc_ctx, local_abspath,
NULL, scratch_pool, scratch_pool));
+ SVN_ERR(svn_client_get_repos_root(&repos_root_url, NULL, local_abspath,
+ ctx, scratch_pool, scratch_pool));
+ SVN_ERR(svn_client__iprop_relpaths_to_urls(iprops, repos_root_url,
+ scratch_pool,
+ scratch_pool));
SVN_ERR(call_receiver(path_or_url, NULL, iprops, receiver,
receiver_baton, scratch_pool));
}
diff --git a/subversion/libsvn_client/switch.c b/subversion/libsvn_client/switch.c
index 129ce63..0892c7d 100644
--- a/subversion/libsvn_client/switch.c
+++ b/subversion/libsvn_client/switch.c
@@ -267,7 +267,7 @@
if (needs_iprop_cache)
{
SVN_ERR(svn_ra_get_inherited_props(ra_session, &inherited_props,
- "", switch_loc->rev, TRUE, pool,
+ "", switch_loc->rev, pool,
pool));
apr_hash_set(wcroot_iprops, local_abspath, APR_HASH_KEY_STRING,
inherited_props);
diff --git a/subversion/libsvn_client/update.c b/subversion/libsvn_client/update.c
index 2c0ad31..a5c0968 100644
--- a/subversion/libsvn_client/update.c
+++ b/subversion/libsvn_client/update.c
@@ -377,7 +377,7 @@
dfb.anchor_url = anchor_loc->url;
err = svn_client__get_inheritable_props(&wcroot_iprops, local_abspath,
- revnum, depth, TRUE, ra_session,
+ revnum, depth, ra_session,
ctx, pool, pool);
/* We might be trying to update to a non-existant path-rev. */
diff --git a/subversion/libsvn_delta/svndiff.c b/subversion/libsvn_delta/svndiff.c
index 3dea258..0d55f58 100644
--- a/subversion/libsvn_delta/svndiff.c
+++ b/subversion/libsvn_delta/svndiff.c
@@ -203,7 +203,7 @@
assert(window->ops[0].offset == 0);
/* write stream header if necessary */
- if (eb->header_done == FALSE)
+ if (!eb->header_done)
{
eb->header_done = TRUE;
headers[0] = 'S';
@@ -269,7 +269,7 @@
return svn_error_trace(send_simple_insertion_window(window, eb));
/* Make sure we write the header. */
- if (eb->header_done == FALSE)
+ if (!eb->header_done)
{
char svnver[4] = {'S','V','N','\0'};
len = 4;
diff --git a/subversion/libsvn_fs_base/fs.c b/subversion/libsvn_fs_base/fs.c
index 9da2e8d..0bde9ca 100644
--- a/subversion/libsvn_fs_base/fs.c
+++ b/subversion/libsvn_fs_base/fs.c
@@ -1016,7 +1016,7 @@
sub_pool));
/* If log files do not match, go to the next log file. */
- if (files_match == FALSE)
+ if (!files_match)
continue;
}
diff --git a/subversion/libsvn_fs_fs/fs_fs.c b/subversion/libsvn_fs_fs/fs_fs.c
index 02a5bb8..dbc4890 100644
--- a/subversion/libsvn_fs_fs/fs_fs.c
+++ b/subversion/libsvn_fs_fs/fs_fs.c
@@ -2527,7 +2527,7 @@
return "-1";
#define DISPLAY_MAYBE_NULL_CHECKSUM(checksum) \
- ((may_be_corrupt == FALSE || (checksum) != NULL) \
+ ((!may_be_corrupt || (checksum) != NULL) \
? svn_checksum_to_cstring_display((checksum), pool) \
: "(null)")
@@ -4431,7 +4431,7 @@
*rep_state = rs;
*rep_args = ra;
- if (ra->is_delta == FALSE)
+ if (!ra->is_delta)
/* This is a plaintext, so just return the current rep_state. */
return SVN_NO_ERROR;
@@ -4784,7 +4784,7 @@
return SVN_NO_ERROR;
}
- if (rep_args->is_delta == FALSE)
+ if (!rep_args->is_delta)
{
/* This is a plaintext, so just return the current rep_state. */
*src_state = rs;
diff --git a/subversion/libsvn_ra/compat.c b/subversion/libsvn_ra/compat.c
index 2e1f788..69ccbb6 100644
--- a/subversion/libsvn_ra/compat.c
+++ b/subversion/libsvn_ra/compat.c
@@ -935,7 +935,9 @@
{
svn_prop_inherited_item_t *new_iprop =
apr_palloc(result_pool, sizeof(*new_iprop));
- new_iprop->path_or_url = apr_pstrdup(result_pool, parent_url);
+ new_iprop->path_or_url = svn_uri_skip_ancestor(repos_root_url,
+ parent_url,
+ result_pool);
new_iprop->prop_hash = final_hash;
svn_sort__array_insert(&new_iprop, *inherited_props, 0);
}
diff --git a/subversion/libsvn_ra/ra_loader.c b/subversion/libsvn_ra/ra_loader.c
index 25d2bcc..872221b 100644
--- a/subversion/libsvn_ra/ra_loader.c
+++ b/subversion/libsvn_ra/ra_loader.c
@@ -1299,7 +1299,6 @@
apr_array_header_t **iprops,
const char *path,
svn_revnum_t revision,
- svn_boolean_t use_relpath_keys,
apr_pool_t *result_pool,
apr_pool_t *scratch_pool)
{
@@ -1325,23 +1324,6 @@
result_pool, scratch_pool));
}
- if (use_relpath_keys && (*iprops)->nelts)
- {
- const char *repos_root_url;
- int i;
-
- SVN_ERR(svn_ra_get_repos_root2(session, &repos_root_url, scratch_pool));
- for (i = 0; i < (*iprops)->nelts; i++)
- {
- svn_prop_inherited_item_t *elt =
- APR_ARRAY_IDX(*iprops, i, svn_prop_inherited_item_t *);
- elt->path_or_url =
- svn_dirent_skip_ancestor(repos_root_url, elt->path_or_url);
- elt->path_or_url = svn_path_uri_decode(elt->path_or_url,
- result_pool);
- }
- }
-
return SVN_NO_ERROR;
}
diff --git a/subversion/libsvn_ra/ra_loader.h b/subversion/libsvn_ra/ra_loader.h
index 45db729..400f79f 100644
--- a/subversion/libsvn_ra/ra_loader.h
+++ b/subversion/libsvn_ra/ra_loader.h
@@ -496,11 +496,11 @@
/**
- * Fallback logic for svn_ra_get_fileX and svn_ra_get_dirX when those APIs
+ * Fallback logic for svn_ra_get_inherited_props() when that API
* need to find PATH's inherited properties on a legacy server that
* doesn't have the SVN_RA_CAPABILITY_INHERITED_PROPS capability.
*
- * All arguments are as per the two aforementioned APIs.
+ * All arguments are as per svn_ra_get_inherited_props().
*/
svn_error_t *
svn_ra__get_inherited_props_walk(svn_ra_session_t *session,
diff --git a/subversion/libsvn_ra_local/ra_plugin.c b/subversion/libsvn_ra_local/ra_plugin.c
index 960e78c..91b2c0e 100644
--- a/subversion/libsvn_ra_local/ra_plugin.c
+++ b/subversion/libsvn_ra_local/ra_plugin.c
@@ -1058,22 +1058,12 @@
SVN_ERR(svn_fs_node_proplist(props, root, path, result_pool));
}
- /* Turn FS-path keys into URLs. */
+ /* Get inherited properties if requested. */
if (inherited_props)
{
- int i;
-
SVN_ERR(svn_repos_fs_get_inherited_props(inherited_props, root, path,
NULL, NULL, NULL,
result_pool, scratch_pool));
-
- for (i = 0; i < (*inherited_props)->nelts; i++)
- {
- svn_prop_inherited_item_t *i_props =
- APR_ARRAY_IDX(*inherited_props, i, svn_prop_inherited_item_t *);
- i_props->path_or_url = svn_path_url_add_component2(
- sess->repos_url, i_props->path_or_url, result_pool);
- }
}
/* Now add some non-tweakable metadata to the hash as well... */
diff --git a/subversion/libsvn_ra_serf/commit.c b/subversion/libsvn_ra_serf/commit.c
index deecfe6..bb53847 100644
--- a/subversion/libsvn_ra_serf/commit.c
+++ b/subversion/libsvn_ra_serf/commit.c
@@ -1294,9 +1294,9 @@
{
post_response_ctx_t *prc;
const char *rel_path;
- svn_boolean_t post_with_revprops =
- apr_hash_get(ctx->session->supported_posts, "create-txn-with-props",
- APR_HASH_KEY_STRING) ? TRUE : FALSE;
+ svn_boolean_t post_with_revprops
+ = (apr_hash_get(ctx->session->supported_posts, "create-txn-with-props",
+ APR_HASH_KEY_STRING) != NULL);
/* Create our activity URL now on the server. */
handler = apr_pcalloc(ctx->pool, sizeof(*handler));
diff --git a/subversion/libsvn_ra_serf/locks.c b/subversion/libsvn_ra_serf/locks.c
index 154506c..db2d371 100644
--- a/subversion/libsvn_ra_serf/locks.c
+++ b/subversion/libsvn_ra_serf/locks.c
@@ -261,7 +261,7 @@
request, response, ctx->handler, pool));
}
- if (ctx->read_headers == FALSE)
+ if (!ctx->read_headers)
{
serf_bucket_t *headers;
const char *val;
diff --git a/subversion/libsvn_ra_serf/options.c b/subversion/libsvn_ra_serf/options.c
index 0964a7a..5040880 100644
--- a/subversion/libsvn_ra_serf/options.c
+++ b/subversion/libsvn_ra_serf/options.c
@@ -211,11 +211,14 @@
SVN_RA_CAPABILITY_EPHEMERAL_TXNPROPS, APR_HASH_KEY_STRING,
capability_yes);
}
-
if (svn_cstring_match_list(SVN_DAV_NS_DAV_SVN_INLINE_PROPS, vals))
{
session->supports_inline_props = TRUE;
}
+ if (svn_cstring_match_list(SVN_DAV_NS_DAV_SVN_REPLAY_REV_RESOURCE, vals))
+ {
+ session->supports_rev_rsrc_replay = TRUE;
+ }
}
/* SVN-specific headers -- if present, server supports HTTP protocol v2 */
diff --git a/subversion/libsvn_ra_serf/property.c b/subversion/libsvn_ra_serf/property.c
index 6fcf246..a3202eb 100644
--- a/subversion/libsvn_ra_serf/property.c
+++ b/subversion/libsvn_ra_serf/property.c
@@ -526,7 +526,7 @@
}
/* If we're not doing an allprop, add <prop> tags. */
- if (requested_allprop == FALSE)
+ if (!requested_allprop)
{
tmp = SERF_BUCKET_SIMPLE_STRING_LEN("<prop>",
sizeof("<prop>")-1,
@@ -540,7 +540,7 @@
serf_bucket_aggregate_prepend(body_bkt, tmp);
- if (requested_allprop == FALSE)
+ if (!requested_allprop)
{
tmp = SERF_BUCKET_SIMPLE_STRING_LEN("</prop>",
sizeof("</prop>")-1,
diff --git a/subversion/libsvn_ra_serf/ra_serf.h b/subversion/libsvn_ra_serf/ra_serf.h
index 94c1810..0ae7560 100644
--- a/subversion/libsvn_ra_serf/ra_serf.h
+++ b/subversion/libsvn_ra_serf/ra_serf.h
@@ -243,6 +243,10 @@
/* Indicates if the server supports sending inlined props in update editor
* in skelta mode (send-all == 'false'). */
svn_boolean_t supports_inline_props;
+
+ /* Indicates whether the server supports issuing replay REPORTs
+ against rev resources (children of `rev_stub', elsestruct). */
+ svn_boolean_t supports_rev_rsrc_replay;
};
#define SVN_RA_SERF__HAVE_HTTPV2_SUPPORT(sess) ((sess)->me_resource != NULL)
diff --git a/subversion/libsvn_ra_serf/replay.c b/subversion/libsvn_ra_serf/replay.c
index 81ee4ca..1fcecf4 100644
--- a/subversion/libsvn_ra_serf/replay.c
+++ b/subversion/libsvn_ra_serf/replay.c
@@ -107,16 +107,17 @@
const svn_delta_editor_t *editor;
void *editor_baton;
- /* current revision */
+ /* Path and revision used to filter replayed changes. If
+ INCLUDE_PATH is non-NULL, REVISION is unnecessary and will not be
+ included in the replay REPORT. (Because the REPORT is being
+ aimed an HTTP v2 revision resource.) */
+ const char *include_path;
svn_revnum_t revision;
/* Information needed to create the replay report body */
svn_revnum_t low_water_mark;
svn_boolean_t send_deltas;
- /* Cached report target url */
- const char *report_target;
-
/* Target and revision to fetch revision properties on */
const char *revprop_target;
svn_revnum_t revprop_rev;
@@ -128,8 +129,9 @@
/* Keep a reference to the XML parser ctx to report any errors. */
svn_ra_serf__xml_parser_t *parser_ctx;
- /* The propfind for the revision properties of the current revision */
+ /* Handlers for the PROPFIND and REPORT for the current revision. */
svn_ra_serf__handler_t *propfind_handler;
+ svn_ra_serf__handler_t *report_handler;
} replay_context_t;
@@ -602,10 +604,22 @@
"xmlns:S", SVN_XML_NAMESPACE,
NULL);
- svn_ra_serf__add_tag_buckets(body_bkt,
- "S:revision",
- apr_ltoa(ctx->src_rev_pool, ctx->revision),
- alloc);
+ /* If we have a non-NULL include path, we add it to the body and
+ omit the revision; otherwise, the reverse. */
+ if (ctx->include_path)
+ {
+ svn_ra_serf__add_tag_buckets(body_bkt,
+ "S:include-path",
+ ctx->include_path,
+ alloc);
+ }
+ else
+ {
+ svn_ra_serf__add_tag_buckets(body_bkt,
+ "S:revision",
+ apr_ltoa(ctx->src_rev_pool, ctx->revision),
+ alloc);
+ }
svn_ra_serf__add_tag_buckets(body_bkt,
"S:low-water-mark",
apr_ltoa(ctx->src_rev_pool, ctx->low_water_mark),
@@ -648,7 +662,6 @@
replay_ctx->revision = revision;
replay_ctx->low_water_mark = low_water_mark;
replay_ctx->send_deltas = send_deltas;
- replay_ctx->report_target = report_target;
replay_ctx->revs_props = apr_hash_make(replay_ctx->src_rev_pool);
handler = apr_pcalloc(pool, sizeof(*handler));
@@ -676,12 +689,17 @@
/* This is only needed to handle errors during XML parsing. */
replay_ctx->parser_ctx = parser_ctx;
+ replay_ctx->report_handler = handler; /* unused */
svn_ra_serf__request_create(handler);
err = svn_ra_serf__context_run_wait(&replay_ctx->done, session, pool);
- SVN_ERR(err);
+ SVN_ERR(svn_error_compose_create(
+ svn_ra_serf__error_on_status(handler->sline.code,
+ handler->path,
+ handler->location),
+ err));
return SVN_NO_ERROR;
}
@@ -732,9 +750,39 @@
svn_revnum_t rev = start_revision;
const char *report_target;
int active_reports = 0;
+ const char *include_path;
SVN_ERR(svn_ra_serf__report_resource(&report_target, session, NULL, pool));
+ /* Prior to 1.8, mod_dav_svn expect to get replay REPORT requests
+ aimed at the session URL. But that's incorrect -- these reports
+ aren't about specific resources -- they are above revisions. The
+ path-based filtering offered by this API is just that: a filter
+ applied to the full set of changes made in the revision. As
+ such, the correct target for these REPORT requests is the "me
+ resource" (or, pre-http-v2, the default VCC).
+
+ Our server should have told us if it supported this protocol
+ correction. If so, we aimed our report at the correct resource
+ and include the filtering path as metadata within the report
+ body. Otherwise, we fall back to the pre-1.8 behavior and just
+ wish for the best.
+
+ See issue #4287:
+ http://subversion.tigris.org/issues/show_bug.cgi?id=4287
+ */
+ if (session->supports_rev_rsrc_replay)
+ {
+ SVN_ERR(svn_ra_serf__get_relative_path(&include_path,
+ session->session_url.path,
+ session, session->conns[0],
+ pool));
+ }
+ else
+ {
+ include_path = NULL;
+ }
+
while (active_reports || rev <= end_revision)
{
svn_ra_serf__list_t *done_list;
@@ -751,6 +799,7 @@
svn_ra_serf__handler_t *handler;
svn_ra_serf__xml_parser_t *parser_ctx;
apr_pool_t *ctx_pool = svn_pool_create(pool);
+ const char *replay_target;
replay_ctx = apr_pcalloc(ctx_pool, sizeof(*replay_ctx));
replay_ctx->src_rev_pool = ctx_pool;
@@ -758,19 +807,20 @@
replay_ctx->revfinish_func = revfinish_func;
replay_ctx->replay_baton = replay_baton;
replay_ctx->done = FALSE;
+ replay_ctx->include_path = include_path;
replay_ctx->revision = rev;
replay_ctx->low_water_mark = low_water_mark;
replay_ctx->send_deltas = send_deltas;
replay_ctx->done_item.data = replay_ctx;
+
/* Request all properties of a certain revision. */
- replay_ctx->report_target = report_target;
replay_ctx->revs_props = apr_hash_make(replay_ctx->src_rev_pool);
if (SVN_RA_SERF__HAVE_HTTPV2_SUPPORT(session))
- {
- replay_ctx->revprop_target = apr_psprintf(pool, "%s/%ld",
- session->rev_stub, rev);
- replay_ctx->revprop_rev = SVN_INVALID_REVNUM;
+ {
+ replay_ctx->revprop_target = apr_psprintf(pool, "%s/%ld",
+ session->rev_stub, rev);
+ replay_ctx->revprop_rev = SVN_INVALID_REVNUM;
}
else
{
@@ -790,12 +840,22 @@
/* Spin up the serf request for the PROPFIND. */
svn_ra_serf__request_create(replay_ctx->propfind_handler);
- /* Send the replay report request. */
+ /* Send the replay REPORT request. */
+ if (session->supports_rev_rsrc_replay)
+ {
+ replay_target = apr_psprintf(pool, "%s/%ld",
+ session->rev_stub, rev);
+ }
+ else
+ {
+ replay_target = session->session_url.path;
+ }
+
handler = apr_pcalloc(replay_ctx->src_rev_pool, sizeof(*handler));
handler->handler_pool = replay_ctx->src_rev_pool;
handler->method = "REPORT";
- handler->path = session->session_url.path;
+ handler->path = replay_target;
handler->body_delegate = create_replay_body;
handler->body_delegate_baton = replay_ctx;
handler->conn = session->conns[0];
@@ -821,6 +881,7 @@
parser_ctx->done_item = &replay_ctx->done_item;
handler->response_handler = svn_ra_serf__handle_xml_parser;
handler->response_baton = parser_ctx;
+ replay_ctx->report_handler = handler;
/* This is only needed to handle errors during XML parsing. */
replay_ctx->parser_ctx = parser_ctx;
@@ -841,8 +902,12 @@
while (done_list)
{
replay_context_t *ctx = (replay_context_t *)done_list->data;
+ svn_ra_serf__handler_t *done_handler = ctx->report_handler;
done_list = done_list->next;
+ SVN_ERR(svn_ra_serf__error_on_status(done_handler->sline.code,
+ done_handler->path,
+ done_handler->location));
svn_pool_destroy(ctx->src_rev_pool);
active_reports--;
}
diff --git a/subversion/libsvn_ra_serf/update.c b/subversion/libsvn_ra_serf/update.c
index 77b7974..a2b8fd7 100644
--- a/subversion/libsvn_ra_serf/update.c
+++ b/subversion/libsvn_ra_serf/update.c
@@ -935,7 +935,7 @@
*/
if (fetch_ctx->read_headers)
{
- if (fetch_ctx->aborted_read == FALSE && fetch_ctx->read_size)
+ if (!fetch_ctx->aborted_read && fetch_ctx->read_size)
{
fetch_ctx->aborted_read = TRUE;
fetch_ctx->aborted_read_size = fetch_ctx->read_size;
@@ -1089,7 +1089,7 @@
/* ### new field. make sure we didn't miss some initialization. */
SVN_ERR_ASSERT(fetch_ctx->handler != NULL);
- if (fetch_ctx->read_headers == FALSE)
+ if (!fetch_ctx->read_headers)
{
serf_bucket_t *hdrs;
const char *val;
@@ -2252,7 +2252,7 @@
info->lock_token = apr_hash_get(ctx->lock_path_tokens, info->name,
APR_HASH_KEY_STRING);
- if (info->lock_token && info->fetch_props == FALSE)
+ if (info->lock_token && !info->fetch_props)
info->fetch_props = TRUE;
/* If possible, we'd like to fetch only a delta against a
@@ -3066,7 +3066,7 @@
{
/* Ensure that we opened and closed our root dir and that we closed
* all of our children. */
- if (report->closed_root == FALSE && report->root_dir != NULL)
+ if (!report->closed_root && report->root_dir != NULL)
{
SVN_ERR(close_all_dirs(report->root_dir));
}
@@ -3197,8 +3197,19 @@
}
else
{
- /* Pre-1.8 server didn't send the bulk_updates header. Do
- whatever is the default or what the user defined in the config. */
+ /* Pre-1.8 server didn't send the bulk_updates header. Check if server
+ supports inlining properties in update editor report. */
+ if (sess->supports_inline_props)
+ {
+ /* Inline props supported: do not use bulk updates. */
+ sess->bulk_updates = FALSE;
+ }
+ else
+ {
+ /* Inline props are noot supported: use bulk updates to avoid
+ * PROPFINDs for every added node. */
+ sess->bulk_updates = TRUE;
+ }
}
if (sess->bulk_updates)
diff --git a/subversion/libsvn_ra_serf/util.c b/subversion/libsvn_ra_serf/util.c
index ebfcbb3..559bc55 100644
--- a/subversion/libsvn_ra_serf/util.c
+++ b/subversion/libsvn_ra_serf/util.c
@@ -1559,7 +1559,7 @@
}
/* Woo-hoo. Nothing here to see. */
- if (sl.code == 404 && ctx->ignore_errors == FALSE)
+ if (sl.code == 404 && !ctx->ignore_errors)
{
err = handle_server_error(request, response, pool);
diff --git a/subversion/libsvn_ra_svn/client.c b/subversion/libsvn_ra_svn/client.c
index 08921c5..78181de 100644
--- a/subversion/libsvn_ra_svn/client.c
+++ b/subversion/libsvn_ra_svn/client.c
@@ -1304,7 +1304,7 @@
static svn_tristate_t
optbool_to_tristate(apr_uint64_t v)
{
- if (v == TRUE)
+ if (v == TRUE) /* not just non-zero but exactly equal to 'TRUE' */
return svn_tristate_true;
if (v == FALSE)
return svn_tristate_false;
diff --git a/subversion/libsvn_repos/authz.c b/subversion/libsvn_repos/authz.c
index d4bcf5a..2f0cf5b 100644
--- a/subversion/libsvn_repos/authz.c
+++ b/subversion/libsvn_repos/authz.c
@@ -304,10 +304,8 @@
svn_boolean_t conclusive;
/* Does the section apply to us? */
- if (is_applicable_section(b->qualified_repos_path,
- section_name) == FALSE
- && is_applicable_section(b->repos_path,
- section_name) == FALSE)
+ if (!is_applicable_section(b->qualified_repos_path, section_name)
+ && !is_applicable_section(b->repos_path, section_name))
return TRUE;
/* Work out what this section grants. */
diff --git a/subversion/libsvn_repos/fs-wrap.c b/subversion/libsvn_repos/fs-wrap.c
index 64573ce..881a25c 100644
--- a/subversion/libsvn_repos/fs-wrap.c
+++ b/subversion/libsvn_repos/fs-wrap.c
@@ -178,7 +178,7 @@
* LF line endings. */
if (svn_prop_needs_translation(name))
{
- if (svn_utf__is_valid(value->data, value->len) == FALSE)
+ if (!svn_utf__is_valid(value->data, value->len))
{
return svn_error_createf
(SVN_ERR_BAD_PROPERTY_VALUE, NULL,
diff --git a/subversion/libsvn_repos/repos.c b/subversion/libsvn_repos/repos.c
index decfc4d..d9208f3 100644
--- a/subversion/libsvn_repos/repos.c
+++ b/subversion/libsvn_repos/repos.c
@@ -1539,6 +1539,23 @@
if (open_fs)
SVN_ERR(svn_fs_open(&repos->fs, repos->db_path, fs_config, pool));
+#ifdef SVN_DEBUG_CRASH_AT_REPOS_OPEN
+ /* If $PATH/config/debug-abort exists, crash the server here.
+ This debugging feature can be used to test client recovery
+ when the server crashes.
+
+ See: Issue #4274 */
+ {
+ svn_node_kind_t kind;
+ svn_error_t *err = svn_io_check_path(
+ svn_dirent_join(repos->conf_path, "debug-abort", pool),
+ &kind, pool);
+ svn_error_clear(err);
+ if (!err && kind == svn_node_file)
+ SVN_ERR_MALFUNCTION_NO_RETURN();
+ }
+#endif /* SVN_DEBUG_CRASH_AT_REPOS_OPEN */
+
*repos_p = repos;
return SVN_NO_ERROR;
}
diff --git a/subversion/libsvn_subr/cmdline.c b/subversion/libsvn_subr/cmdline.c
index f8724db..97a9dae 100644
--- a/subversion/libsvn_subr/cmdline.c
+++ b/subversion/libsvn_subr/cmdline.c
@@ -485,7 +485,7 @@
pb->config_dir = config_dir;
}
- if (non_interactive == FALSE)
+ if (!non_interactive)
{
/* This provider doesn't prompt the user in order to get creds;
it prompts the user regarding the caching of creds. */
@@ -516,7 +516,7 @@
svn_auth_get_ssl_client_cert_file_provider(&provider, pool);
APR_ARRAY_PUSH(providers, svn_auth_provider_object_t *) = provider;
- if (non_interactive == FALSE)
+ if (!non_interactive)
{
/* This provider doesn't prompt the user in order to get creds;
it prompts the user regarding the caching of creds. */
@@ -531,7 +531,7 @@
}
APR_ARRAY_PUSH(providers, svn_auth_provider_object_t *) = provider;
- if (non_interactive == FALSE)
+ if (!non_interactive)
{
svn_boolean_t ssl_client_cert_file_prompt;
diff --git a/subversion/libsvn_subr/config.c b/subversion/libsvn_subr/config.c
index 31d725b..3c6485c 100644
--- a/subversion/libsvn_subr/config.c
+++ b/subversion/libsvn_subr/config.c
@@ -224,7 +224,7 @@
}
if (! red_config)
- *cfgp = NULL;
+ SVN_ERR(svn_config_create(cfgp, FALSE, pool));
return SVN_NO_ERROR;
}
diff --git a/subversion/libsvn_subr/deprecated.c b/subversion/libsvn_subr/deprecated.c
index 5827f34..987ddeb 100644
--- a/subversion/libsvn_subr/deprecated.c
+++ b/subversion/libsvn_subr/deprecated.c
@@ -364,7 +364,7 @@
{
if (cmd->valid_options[i])
{
- if (have_options == FALSE)
+ if (!have_options)
{
SVN_ERR(svn_cmdline_fputs(_("\nValid options:\n"),
stream, pool));
diff --git a/subversion/libsvn_subr/named_atomic.c b/subversion/libsvn_subr/named_atomic.c
index 508d8af..d07e742 100644
--- a/subversion/libsvn_subr/named_atomic.c
+++ b/subversion/libsvn_subr/named_atomic.c
@@ -372,7 +372,7 @@
result = svn_tristate_false;
}
- return result == svn_tristate_true ? TRUE : FALSE;
+ return result == svn_tristate_true;
#else
return TRUE;
#endif
diff --git a/subversion/libsvn_subr/opt.c b/subversion/libsvn_subr/opt.c
index 1fd69f5..6ecfb9a 100644
--- a/subversion/libsvn_subr/opt.c
+++ b/subversion/libsvn_subr/opt.c
@@ -296,7 +296,7 @@
{
if (cmd->valid_options[i])
{
- if (have_options == FALSE)
+ if (!have_options)
{
SVN_ERR(svn_cmdline_fputs(_("\nValid options:\n"),
stream, pool));
diff --git a/subversion/libsvn_subr/stream.c b/subversion/libsvn_subr/stream.c
index 5985534..42bc468 100644
--- a/subversion/libsvn_subr/stream.c
+++ b/subversion/libsvn_subr/stream.c
@@ -173,7 +173,7 @@
svn_boolean_t
svn_stream_supports_mark(svn_stream_t *stream)
{
- return stream->mark_fn == NULL ? FALSE : TRUE;
+ return stream->mark_fn != NULL;
}
svn_error_t *
diff --git a/subversion/libsvn_subr/subst.c b/subversion/libsvn_subr/subst.c
index 65f829d..e6a0390 100644
--- a/subversion/libsvn_subr/subst.c
+++ b/subversion/libsvn_subr/subst.c
@@ -987,14 +987,14 @@
b->keyword_buf[b->keyword_off++] = *p++;
keyword_matches = match_keyword(b->keyword_buf, b->keyword_off,
keyword_name, b->keywords);
- if (keyword_matches == FALSE)
+ if (!keyword_matches)
{
/* reuse the ending '$' */
p--;
b->keyword_off--;
}
- if (keyword_matches == FALSE ||
+ if (!keyword_matches ||
translate_keyword(b->keyword_buf, &b->keyword_off,
keyword_name, b->expand, b->keywords) ||
b->keyword_off >= SVN_KEYWORD_MAX_LEN)
diff --git a/subversion/libsvn_subr/win32_crashrpt.c b/subversion/libsvn_subr/win32_crashrpt.c
index 9cb88de..23fd11d 100644
--- a/subversion/libsvn_subr/win32_crashrpt.c
+++ b/subversion/libsvn_subr/win32_crashrpt.c
@@ -428,7 +428,7 @@
(void *)var_data);
fprintf(log_file, "%s=%s", sym_info->Name, value_str);
}
- if (log_params == FALSE && sym_info->Flags & SYMFLAG_LOCAL)
+ if (!log_params && sym_info->Flags & SYMFLAG_LOCAL)
{
format_value(value_str, sym_info->ModBase, sym_info->TypeIndex,
(void *)var_data);
@@ -738,13 +738,13 @@
return EXCEPTION_CONTINUE_SEARCH;
/* ... or if we can't create the log files ... */
- if (get_temp_filename(dmp_filename, LOGFILE_PREFIX, "dmp") == FALSE ||
- get_temp_filename(log_filename, LOGFILE_PREFIX, "log") == FALSE)
+ if (!get_temp_filename(dmp_filename, LOGFILE_PREFIX, "dmp") ||
+ !get_temp_filename(log_filename, LOGFILE_PREFIX, "log"))
return EXCEPTION_CONTINUE_SEARCH;
/* If we can't load a recent version of the dbghelp.dll, pass on this
exception */
- if (load_dbghelp_dll() == FALSE)
+ if (!load_dbghelp_dll())
return EXCEPTION_CONTINUE_SEARCH;
/* open log file */
diff --git a/subversion/libsvn_wc/adm_crawler.c b/subversion/libsvn_wc/adm_crawler.c
index c6f9962..28fac6a 100644
--- a/subversion/libsvn_wc/adm_crawler.c
+++ b/subversion/libsvn_wc/adm_crawler.c
@@ -104,6 +104,7 @@
svn_wc__db_status_t status;
svn_kind_t kind;
svn_node_kind_t disk_kind;
+ const svn_checksum_t *checksum;
SVN_ERR(svn_io_check_path(local_abspath, &disk_kind, scratch_pool));
@@ -113,27 +114,19 @@
svn_dirent_local_style(local_abspath,
scratch_pool));
-
-
SVN_ERR(svn_wc__db_read_info(&status, &kind, NULL, NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
+ NULL, NULL, NULL, &checksum, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL,
wc_ctx->db, local_abspath,
scratch_pool, scratch_pool));
- if (status == svn_wc__db_status_added)
- SVN_ERR(svn_wc__db_scan_addition(&status, NULL, NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL, NULL,
- wc_ctx->db, local_abspath,
- scratch_pool, scratch_pool));
-
if (status != svn_wc__db_status_normal
- && status != svn_wc__db_status_copied
- && status != svn_wc__db_status_moved_here
- && !(kind == svn_kind_dir
- && (status == svn_wc__db_status_added
- || status == svn_wc__db_status_incomplete)))
+ && !((status == svn_wc__db_status_added
+ || status == svn_wc__db_status_incomplete)
+ && (kind == svn_kind_dir
+ || (kind == svn_kind_file && checksum != NULL)
+ /* || (kind == svn_kind_symlink && target)*/)))
{
return svn_error_createf(SVN_ERR_WC_PATH_UNEXPECTED_STATUS, NULL,
_("The node '%s' can not be restored."),
@@ -278,7 +271,11 @@
|| SVN__APR_STATUS_IS_ENOTDIR(err->apr_err)))
{
svn_error_clear(err);
- dirents = apr_hash_make(scratch_pool);
+ /* There is no directory, and if we could create the directory
+ we would have already created it when walking the parent
+ directory */
+ restore_files = FALSE;
+ dirents = NULL;
}
else
SVN_ERR(err);
diff --git a/subversion/libsvn_wc/cleanup.c b/subversion/libsvn_wc/cleanup.c
index a613311..77332a4 100644
--- a/subversion/libsvn_wc/cleanup.c
+++ b/subversion/libsvn_wc/cleanup.c
@@ -143,12 +143,17 @@
{
int wc_format;
svn_boolean_t is_wcroot;
+ const char *lock_abspath;
/* Can we even work with this directory? */
SVN_ERR(can_be_cleaned(&wc_format, db, dir_abspath, scratch_pool));
- /* ### This fails if ADM_ABSPATH is locked indirectly via a
- ### recursive lock on an ancestor. */
+ /* We cannot obtain a lock on a directory that's within a locked
+ subtree, so always run cleanup from the lock owner. */
+ SVN_ERR(svn_wc__db_wclock_find_root(&lock_abspath, db, dir_abspath,
+ scratch_pool, scratch_pool));
+ if (lock_abspath)
+ dir_abspath = lock_abspath;
SVN_ERR(svn_wc__db_wclock_obtain(db, dir_abspath, -1, TRUE, scratch_pool));
/* Run our changes before the subdirectories. We may not have to recurse
diff --git a/subversion/libsvn_wc/conflicts.c b/subversion/libsvn_wc/conflicts.c
index ae3bbcd..b446477 100644
--- a/subversion/libsvn_wc/conflicts.c
+++ b/subversion/libsvn_wc/conflicts.c
@@ -1223,6 +1223,7 @@
generate_propconflict(svn_boolean_t *conflict_remains,
svn_wc__db_t *db,
const char *local_abspath,
+ svn_wc_operation_t operation,
const svn_wc_conflict_version_t *left_version,
const svn_wc_conflict_version_t *right_version,
const char *propname,
@@ -1248,6 +1249,7 @@
(kind == svn_kind_dir) ? svn_node_dir : svn_node_file,
propname, scratch_pool);
+ cdesc->operation = operation;
cdesc->src_left_version = left_version;
cdesc->src_right_version = right_version;
@@ -1481,10 +1483,10 @@
static svn_error_t*
eval_text_conflict_func_result(svn_skel_t **work_items,
enum svn_wc_merge_outcome_t *merge_outcome,
- svn_wc_conflict_choice_t choice,
- const apr_array_header_t *merge_options,
svn_wc__db_t *db,
const char *local_abspath,
+ svn_wc_conflict_choice_t choice,
+ const apr_array_header_t *merge_options,
const char *left_abspath,
const char *right_abspath,
const char *merged_file,
@@ -1670,20 +1672,19 @@
external 3-way merge. */
static svn_error_t*
resolve_text_conflicts(svn_skel_t **work_items,
+ svn_wc_merge_outcome_t *merge_outcome,
svn_wc__db_t *db,
const char *local_abspath,
const apr_array_header_t *merge_options,
+ svn_wc_operation_t operation,
const char *left_abspath,
const char *right_abspath,
- enum svn_wc_merge_outcome_t *merge_outcome,
const svn_wc_conflict_version_t *left_version,
const svn_wc_conflict_version_t *right_version,
const char *result_target,
const char *detranslated_target,
svn_wc_conflict_resolver_func2_t conflict_func,
void *conflict_baton,
- svn_cancel_func_t cancel_func,
- void *cancel_baton,
apr_pool_t *result_pool,
apr_pool_t *scratch_pool)
{
@@ -1708,6 +1709,7 @@
cdesc->their_abspath = right_abspath;
cdesc->my_abspath = detranslated_target;
cdesc->merged_file = result_target;
+ cdesc->operation = operation;
cdesc->src_left_version = left_version;
cdesc->src_right_version = right_version;
@@ -1732,9 +1734,9 @@
SVN_ERR(eval_text_conflict_func_result(&work_item,
merge_outcome,
+ db, local_abspath,
result->choice,
merge_options,
- db, local_abspath,
left_abspath,
right_abspath,
result->merged_file
@@ -1758,43 +1760,28 @@
static svn_error_t *
setup_tree_conflict_desc(svn_wc_conflict_description2_t **desc,
- svn_wc_operation_t operation,
- const apr_array_header_t *locations,
- const svn_skel_t *conflict_skel,
- const char *local_abspath,
svn_wc__db_t *db,
+ const char *local_abspath,
+ svn_wc_operation_t operation,
+ const svn_wc_conflict_version_t *left_version,
+ const svn_wc_conflict_version_t *right_version,
+ svn_wc_conflict_reason_t local_change,
+ svn_wc_conflict_action_t incoming_change,
apr_pool_t *result_pool,
apr_pool_t *scratch_pool)
{
- svn_wc_conflict_version_t *v1;
- svn_wc_conflict_version_t *v2;
svn_node_kind_t tc_kind;
- svn_wc_conflict_reason_t local_change;
- svn_wc_conflict_action_t incoming_change;
- SVN_ERR(svn_wc__conflict_read_tree_conflict(&local_change,
- &incoming_change,
- db, local_abspath,
- conflict_skel,
- result_pool, scratch_pool));
-
- v1 = (locations && locations->nelts > 0)
- ? APR_ARRAY_IDX(locations, 0, svn_wc_conflict_version_t *)
- : NULL;
-
- v2 = (locations && locations->nelts > 1)
- ? APR_ARRAY_IDX(locations, 1, svn_wc_conflict_version_t *)
- : NULL;
-
- if (v1)
- tc_kind = v1->node_kind;
- else if (v2)
- tc_kind = v2->node_kind;
+ if (left_version)
+ tc_kind = left_version->node_kind;
+ else if (right_version)
+ tc_kind = right_version->node_kind;
else
tc_kind = svn_node_file; /* Avoid assertion */
*desc = svn_wc_conflict_description_create_tree2(local_abspath, tc_kind,
- operation, v1, v2,
+ operation,
+ left_version, right_version,
result_pool);
(*desc)->reason = local_change;
(*desc)->action = incoming_change;
@@ -1810,6 +1797,8 @@
const apr_array_header_t *merge_options,
svn_wc_conflict_resolver_func2_t resolver_func,
void *resolver_baton,
+ svn_cancel_func_t cancel_func,
+ void *cancel_baton,
apr_pool_t *scratch_pool)
{
svn_boolean_t text_conflicted;
@@ -1817,6 +1806,8 @@
svn_boolean_t tree_conflicted;
svn_wc_operation_t operation;
const apr_array_header_t *locations;
+ const svn_wc_conflict_version_t *left_version = NULL;
+ const svn_wc_conflict_version_t *right_version = NULL;
SVN_ERR(svn_wc__conflict_read_info(&operation, &locations,
&text_conflicted, &prop_conflicted,
@@ -1824,6 +1815,12 @@
db, local_abspath, conflict_skel,
scratch_pool, scratch_pool));
+ if (locations && locations->nelts > 0)
+ left_version = APR_ARRAY_IDX(locations, 0, const svn_wc_conflict_version_t *);
+
+ if (locations && locations->nelts > 1)
+ right_version = APR_ARRAY_IDX(locations, 1, const svn_wc_conflict_version_t *);
+
/* Quick and dirty compatibility wrapper. My guess would be that most resolvers
would want to look at all properties at the same time.
@@ -1868,9 +1865,15 @@
svn_pool_clear(iterpool);
+ if (cancel_func)
+ SVN_ERR(cancel_func(cancel_baton));
+
SVN_ERR(generate_propconflict(&conflict_remains,
db, local_abspath,
- NULL, NULL, propname,
+ operation,
+ left_version,
+ right_version,
+ propname,
old_props
? apr_hash_get(old_props, propname,
APR_HASH_KEY_STRING)
@@ -1904,7 +1907,7 @@
const char *mine_abspath;
const char *their_original_abspath;
const char *their_abspath;
- svn_skel_t *work_item = NULL;
+ svn_skel_t *work_items;
svn_wc_merge_outcome_t merge_outcome = svn_wc_merge_conflict;
SVN_ERR(svn_wc__conflict_read_text_conflict(&their_original_abspath,
@@ -1914,23 +1917,28 @@
conflict_skel,
scratch_pool, scratch_pool));
- SVN_ERR(resolve_text_conflicts(&work_item, db, local_abspath,
+ SVN_ERR(resolve_text_conflicts(&work_items, &merge_outcome,
+ db, local_abspath,
merge_options,
+ operation,
their_original_abspath, their_abspath,
- &merge_outcome,
- NULL /* left_version */,
- NULL /* right_version */,
+ left_version,
+ right_version,
local_abspath,
mine_abspath,
resolver_func, resolver_baton,
- NULL, NULL,
scratch_pool, scratch_pool));
if (merge_outcome == svn_wc_merge_merged)
{
SVN_ERR(svn_wc__db_op_mark_resolved(db, local_abspath, TRUE, FALSE,
- FALSE, work_item, scratch_pool));
- SVN_ERR(svn_wc__wq_run(db, local_abspath, NULL, NULL, scratch_pool));
+ FALSE, work_items, scratch_pool));
+ if (work_items)
+ {
+ SVN_ERR(svn_wc__wq_run(db, local_abspath,
+ cancel_func, cancel_baton,
+ scratch_pool));
+ }
}
}
@@ -1946,9 +1954,13 @@
db, local_abspath,
conflict_skel,
scratch_pool, scratch_pool));
- SVN_ERR(setup_tree_conflict_desc(&desc, operation, locations,
- conflict_skel, local_abspath, db,
+
+ SVN_ERR(setup_tree_conflict_desc(&desc,
+ db, local_abspath,
+ operation, left_version, right_version,
+ local_change, incoming_change,
scratch_pool, scratch_pool));
+
/* Tell the resolver func about this conflict. */
SVN_ERR(resolver_func(&result, desc, resolver_baton, scratch_pool,
scratch_pool));
@@ -1976,6 +1988,9 @@
const char *local_abspath,
svn_skel_t *conflict_skel,
svn_boolean_t create_tempfiles,
+ svn_wc_operation_t operation,
+ const svn_wc_conflict_version_t *left_version,
+ const svn_wc_conflict_version_t *right_version,
apr_pool_t *result_pool,
apr_pool_t *scratch_pool)
{
@@ -2010,6 +2025,10 @@
* ### conflict description struct for this. */
desc->their_abspath = apr_pstrdup(result_pool, prop_reject_file);
+ desc->operation = operation;
+ desc->src_left_version = left_version;
+ desc->src_right_version = right_version;
+
APR_ARRAY_PUSH(conflicts, svn_wc_conflict_description2_t*) = desc;
return SVN_NO_ERROR;
@@ -2033,6 +2052,10 @@
propname,
result_pool);
+ desc->operation = operation;
+ desc->src_left_version = left_version;
+ desc->src_right_version = right_version;
+
desc->property_name = apr_pstrdup(result_pool, propname);
my_value = apr_hash_get(my_props, propname, APR_HASH_KEY_STRING);
@@ -2129,6 +2152,8 @@
svn_boolean_t tree_conflicted;
svn_wc_operation_t operation;
const apr_array_header_t *locations;
+ const svn_wc_conflict_version_t *left_version = NULL;
+ const svn_wc_conflict_version_t *right_version = NULL;
SVN_ERR(svn_wc__db_read_conflict(&conflict_skel, db, local_abspath,
scratch_pool, scratch_pool));
@@ -2149,9 +2174,15 @@
cflcts = apr_array_make(result_pool, 4,
sizeof(svn_wc_conflict_description2_t*));
+ if (locations && locations->nelts > 0)
+ left_version = APR_ARRAY_IDX(locations, 0, const svn_wc_conflict_version_t *);
+ if (locations && locations->nelts > 1)
+ right_version = APR_ARRAY_IDX(locations, 1, const svn_wc_conflict_version_t *);
+
if (prop_conflicted)
SVN_ERR(read_prop_conflicts(cflcts, db, local_abspath, conflict_skel,
create_tempfiles,
+ operation, left_version, right_version,
result_pool, scratch_pool));
if (text_conflicted)
@@ -2160,6 +2191,10 @@
desc = svn_wc_conflict_description_create_text2(local_abspath,
result_pool);
+ desc->operation = operation;
+ desc->src_left_version = left_version;
+ desc->src_right_version = right_version;
+
SVN_ERR(svn_wc__conflict_read_text_conflict(&desc->my_abspath,
&desc->base_abspath,
&desc->their_abspath,
@@ -2174,11 +2209,22 @@
if (tree_conflicted)
{
+ svn_wc_conflict_reason_t local_change;
+ svn_wc_conflict_action_t incoming_change;
svn_wc_conflict_description2_t *desc;
- SVN_ERR(setup_tree_conflict_desc(&desc, operation, locations,
- conflict_skel, local_abspath, db,
- result_pool, scratch_pool));
+ SVN_ERR(svn_wc__conflict_read_tree_conflict(&local_change,
+ &incoming_change,
+ db, local_abspath,
+ conflict_skel,
+ scratch_pool, scratch_pool));
+
+ SVN_ERR(setup_tree_conflict_desc(&desc,
+ db, local_abspath,
+ operation, left_version, right_version,
+ local_change, incoming_change,
+ scratch_pool, scratch_pool));
+
APR_ARRAY_PUSH(cflcts, const svn_wc_conflict_description2_t *) = desc;
}
diff --git a/subversion/libsvn_wc/conflicts.h b/subversion/libsvn_wc/conflicts.h
index dfcfcb9..1a73c72 100644
--- a/subversion/libsvn_wc/conflicts.h
+++ b/subversion/libsvn_wc/conflicts.h
@@ -262,9 +262,12 @@
*
* Output arguments can be NULL if the value is not necessary.
*
- * ### stsp asks: what is LOCATIONS?
- * ### Set *LOCATIONS to an array of (svn_wc_conflict_version_t *)
- * representing ...
+ * Set *LOCATIONS to an array of (svn_wc_conflict_version_t *). For
+ * conflicts written by current code, there are 2 elements: index [0] is
+ * the 'old' or 'left' side and [1] is the 'new' or 'right' side.
+ *
+ * For conflicts written by 1.6 or 1.7 there are 2 locations for a tree
+ * conflict, but none for a text or property conflict.
*
* TEXT_, PROP_ and TREE_CONFLICTED (when not NULL) will be set to TRUE
* when the conflict contains the specified kind of conflict, otherwise
@@ -389,6 +392,8 @@
const apr_array_header_t *merge_options,
svn_wc_conflict_resolver_func2_t resolver_func,
void *resolver_baton,
+ svn_cancel_func_t cancel_func,
+ void *cancel_baton,
apr_pool_t *scratch_pool);
diff --git a/subversion/libsvn_wc/copy.c b/subversion/libsvn_wc/copy.c
index ea46e06..f1544be 100644
--- a/subversion/libsvn_wc/copy.c
+++ b/subversion/libsvn_wc/copy.c
@@ -166,9 +166,6 @@
If IS_MOVE is true, record move information in working copy meta
data in addition to copying the file.
- If COPY_PRISTINE_FILE is true, make sure the necessary pristine files are
- available in the destination working copy.
-
If the versioned file has a text conflict, and the .mine file exists in
the filesystem, copy the .mine file to DST_ABSPATH. Otherwise, copy the
versioned file itself.
@@ -181,7 +178,6 @@
const char *dst_abspath,
const char *dst_op_root_abspath,
const char *tmpdir_abspath,
- svn_boolean_t copy_pristine_file,
svn_boolean_t metadata_only,
svn_boolean_t conflicted,
svn_boolean_t is_move,
@@ -196,12 +192,6 @@
/* In case we are copying from one WC to another (e.g. an external dir),
ensure the destination WC has a copy of the pristine text. */
- if (copy_pristine_file)
- SVN_ERR(svn_wc__db_pristine_transfer(db, src_abspath,
- dst_op_root_abspath,
- cancel_func, cancel_baton,
- scratch_pool));
-
/* Prepare a temp copy of the filesystem node. It is usually a file, but
copy recursively if it's a dir. */
if (!metadata_only)
@@ -288,9 +278,7 @@
otherwise copy both the versioned metadata and the filesystem nodes (even
if they are the wrong kind, and including unversioned children).
If IS_MOVE is true, record move information in working copy meta
- data in addition to copying the directory. If IS_MOVE is TRUE and
- ALLOW_MIXED_REVISIONS is FALSE, raise an error if a move of a
- mixed-revision subtree is attempted.
+ data in addition to copying the directory.
WITHIN_ONE_WC is TRUE if the copy/move is within a single working copy (root)
*/
@@ -302,8 +290,6 @@
const char *tmpdir_abspath,
svn_boolean_t metadata_only,
svn_boolean_t is_move,
- svn_boolean_t allow_mixed_revisions,
- svn_boolean_t within_one_wc,
svn_cancel_func_t cancel_func,
void *cancel_baton,
svn_wc_notify_func2_t notify_func,
@@ -319,24 +305,6 @@
svn_node_kind_t disk_kind;
apr_pool_t *iterpool;
- if (is_move && !allow_mixed_revisions)
- {
- svn_revnum_t min_rev;
- svn_revnum_t max_rev;
-
- /* Verify that the move source is a single-revision subtree. */
- SVN_ERR(svn_wc__db_min_max_revisions(&min_rev, &max_rev, db,
- src_abspath, FALSE, scratch_pool));
- if (SVN_IS_VALID_REVNUM(min_rev) && SVN_IS_VALID_REVNUM(max_rev) &&
- min_rev != max_rev)
- return svn_error_createf(SVN_ERR_WC_MIXED_REVISIONS, NULL,
- _("Cannot move mixed-revision subtree '%s' "
- "[%lu:%lu]; try updating it first"),
- svn_dirent_local_style(src_abspath,
- scratch_pool),
- min_rev, max_rev);
- }
-
/* Prepare a temp copy of the single filesystem node (usually a dir). */
if (!metadata_only)
{
@@ -423,7 +391,6 @@
child_dst_abspath,
dst_op_root_abspath,
tmpdir_abspath,
- !within_one_wc && info->has_checksum,
metadata_only, info->conflicted,
is_move,
cancel_func, cancel_baton,
@@ -435,7 +402,6 @@
child_src_abspath, child_dst_abspath,
dst_op_root_abspath, tmpdir_abspath,
metadata_only, is_move,
- allow_mixed_revisions, within_one_wc,
cancel_func, cancel_baton, NULL, NULL,
iterpool));
else
@@ -561,7 +527,6 @@
svn_kind_t src_db_kind;
const char *dstdir_abspath;
svn_boolean_t conflicted;
- const svn_checksum_t *checksum;
const char *tmpdir_abspath;
const char *src_wcroot_abspath;
const char *dst_wcroot_abspath;
@@ -582,7 +547,7 @@
err = svn_wc__db_read_info(&src_status, &src_db_kind, NULL, NULL,
&src_repos_root_url, &src_repos_uuid, NULL,
- NULL, NULL, NULL, &checksum, NULL, NULL, NULL,
+ NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, &conflicted,
NULL, NULL, NULL, NULL, NULL, NULL,
db, src_abspath, scratch_pool, scratch_pool);
@@ -772,12 +737,16 @@
is_move = FALSE;
}
+ if (!within_one_wc)
+ SVN_ERR(svn_wc__db_pristine_transfer(db, src_abspath, dst_wcroot_abspath,
+ cancel_func, cancel_baton,
+ scratch_pool));
+
if (src_db_kind == svn_kind_file
|| src_db_kind == svn_kind_symlink)
{
err = copy_versioned_file(db, src_abspath, dst_abspath, dst_abspath,
tmpdir_abspath,
- !within_one_wc && (checksum != NULL),
metadata_only, conflicted, is_move,
cancel_func, cancel_baton,
notify_func, notify_baton,
@@ -785,9 +754,26 @@
}
else
{
+ if (is_move && !allow_mixed_revisions)
+ {
+ svn_revnum_t min_rev;
+ svn_revnum_t max_rev;
+
+ /* Verify that the move source is a single-revision subtree. */
+ SVN_ERR(svn_wc__db_min_max_revisions(&min_rev, &max_rev, db,
+ src_abspath, FALSE, scratch_pool));
+ if (SVN_IS_VALID_REVNUM(min_rev) && SVN_IS_VALID_REVNUM(max_rev) &&
+ min_rev != max_rev)
+ return svn_error_createf(SVN_ERR_WC_MIXED_REVISIONS, NULL,
+ _("Cannot move mixed-revision subtree '%s' "
+ "[%ld:%ld]; try updating it first"),
+ svn_dirent_local_style(src_abspath,
+ scratch_pool),
+ min_rev, max_rev);
+ }
+
err = copy_versioned_dir(db, src_abspath, dst_abspath, dst_abspath,
tmpdir_abspath, metadata_only, is_move,
- allow_mixed_revisions, within_one_wc,
cancel_func, cancel_baton,
notify_func, notify_baton,
scratch_pool);
diff --git a/subversion/libsvn_wc/entries.c b/subversion/libsvn_wc/entries.c
index 58eb6fd..d71e833 100644
--- a/subversion/libsvn_wc/entries.c
+++ b/subversion/libsvn_wc/entries.c
@@ -1778,6 +1778,17 @@
working_node->revision = parent_node->work->revision;
working_node->op_depth = parent_node->work->op_depth;
}
+ else if (parent_node->below_work
+ && parent_node->below_work->repos_relpath)
+ {
+ working_node->repos_id = repos_id;
+ working_node->repos_relpath
+ = svn_relpath_join(parent_node->below_work->repos_relpath,
+ svn_relpath_basename(local_relpath, NULL),
+ result_pool);
+ working_node->revision = parent_node->below_work->revision;
+ working_node->op_depth = parent_node->below_work->op_depth;
+ }
else
return svn_error_createf(SVN_ERR_ENTRY_MISSING_URL, NULL,
_("No copyfrom URL for '%s'"),
@@ -2082,6 +2093,10 @@
below_working_node->presence = svn_wc__db_status_normal;
below_working_node->kind = entry->kind;
below_working_node->repos_id = work->repos_id;
+
+ /* This is just guessing. If the node below would have been switched
+ or if it was updated to a different version, the guess would
+ fail. But we don't have better information pre wc-ng :( */
if (work->repos_relpath)
below_working_node->repos_relpath
= svn_relpath_join(work->repos_relpath, entry->name,
@@ -2111,6 +2126,30 @@
below_working_node->depth = svn_depth_infinity;
below_working_node->recorded_time = 0;
below_working_node->properties = NULL;
+
+ if (working_node
+ && entry->schedule == svn_wc_schedule_delete
+ && working_node->repos_relpath)
+ {
+ /* We are lucky, our guesses above are not necessary. The known
+ correct information is in working. But our op_depth design
+ expects more information here */
+ below_working_node->repos_relpath = working_node->repos_relpath;
+ below_working_node->repos_id = working_node->repos_id;
+ below_working_node->revision = working_node->revision;
+
+ /* Nice for 'svn status' */
+ below_working_node->changed_rev = entry->cmt_rev;
+ below_working_node->changed_date = entry->cmt_date;
+ below_working_node->changed_author = entry->cmt_author;
+
+ /* And now remove it from WORKING, because in wc-ng code
+ should read it from the lower layer */
+ working_node->repos_relpath = NULL;
+ working_node->repos_id = 0;
+ working_node->revision = SVN_INVALID_REVNUM;
+ }
+
SVN_ERR(insert_node(sdb, below_working_node, scratch_pool));
}
diff --git a/subversion/libsvn_wc/externals.c b/subversion/libsvn_wc/externals.c
index 9087ba8..a672d65 100644
--- a/subversion/libsvn_wc/externals.c
+++ b/subversion/libsvn_wc/externals.c
@@ -617,6 +617,7 @@
eb->file_closed = TRUE; /* We bump the revision here */
+ /* Check the checksum, if provided */
if (expected_md5_digest)
{
svn_checksum_t *expected_md5_checksum;
@@ -659,7 +660,6 @@
}
/* Merge the changes */
-
{
svn_skel_t *all_work_items = NULL;
svn_skel_t *conflict_skel = NULL;
@@ -681,12 +681,11 @@
new_checksum = eb->original_checksum;
if (eb->had_props)
- SVN_ERR(svn_wc__db_base_get_props(&base_props, eb->db,
- eb->local_abspath,
- pool, pool));
+ SVN_ERR(svn_wc__db_base_get_props(
+ &base_props, eb->db, eb->local_abspath, pool, pool));
- SVN_ERR(svn_wc__db_read_props(&actual_props, eb->db,
- eb->local_abspath, pool, pool));
+ SVN_ERR(svn_wc__db_read_props(
+ &actual_props, eb->db, eb->local_abspath, pool, pool));
}
if (!base_props)
@@ -698,6 +697,7 @@
if (eb->new_sha1_checksum)
new_checksum = eb->new_sha1_checksum;
+ /* Merge the properties */
{
apr_array_header_t *entry_prop_changes;
apr_array_header_t *dav_prop_changes;
@@ -708,6 +708,7 @@
&dav_prop_changes, ®ular_prop_changes,
pool));
+ /* Read the entry-prop changes to update the last-changed info. */
for (i = 0; i < entry_prop_changes->nelts; i++)
{
const svn_prop_t *prop = &APR_ARRAY_IDX(entry_prop_changes, i,
@@ -729,9 +730,13 @@
pool));
}
+ /* Store the DAV-prop (aka WC-prop) changes. (This treats a list
+ * of changes as a list of new props, but we only use this when
+ * adding a new file and it's equivalent in that case.) */
if (dav_prop_changes->nelts > 0)
new_dav_props = svn_prop_array_to_hash(dav_prop_changes, pool);
+ /* Merge the regular prop changes. */
if (regular_prop_changes->nelts > 0)
{
new_pristine_props = svn_prop__patch(base_props, regular_prop_changes,
@@ -753,6 +758,7 @@
}
}
+ /* Merge the text */
if (eb->new_sha1_checksum)
{
svn_node_kind_t disk_kind;
@@ -833,6 +839,7 @@
/* ### Retranslate on magic property changes, etc. */
}
+ /* Generate a conflict description, if needed */
if (conflict_skel)
{
SVN_ERR(svn_wc__conflict_skel_set_op_switch(
@@ -852,17 +859,15 @@
svn_node_file,
pool),
pool, pool));
-
-
SVN_ERR(svn_wc__conflict_create_markers(&work_item,
eb->db, eb->local_abspath,
conflict_skel,
pool, pool));
-
all_work_items = svn_wc__wq_merge(all_work_items, work_item,
pool);
}
+ /* Install the file in the DB */
SVN_ERR(svn_wc__db_external_add_file(
eb->db,
eb->local_abspath,
@@ -894,10 +899,12 @@
clear the iprops so as not to set them again in close_edit. */
eb->iprops = NULL;
+ /* Run the work queue to complete the installation */
SVN_ERR(svn_wc__wq_run(eb->db, eb->wri_abspath,
eb->cancel_func, eb->cancel_baton, pool));
}
+ /* Notify */
if (eb->notify_func)
{
svn_wc_notify_action_t action;
@@ -922,7 +929,6 @@
eb->notify_func(eb->notify_baton, notify, pool);
}
-
return SVN_NO_ERROR;
}
diff --git a/subversion/libsvn_wc/merge.c b/subversion/libsvn_wc/merge.c
index 140ea32..d3570f5 100644
--- a/subversion/libsvn_wc/merge.c
+++ b/subversion/libsvn_wc/merge.c
@@ -58,18 +58,18 @@
/* Return a pointer to the svn_prop_t structure from PROP_DIFF
belonging to PROP_NAME, if any. NULL otherwise.*/
static const svn_prop_t *
-get_prop(const merge_target_t *mt,
+get_prop(const apr_array_header_t *prop_diff,
const char *prop_name)
{
- if (mt && mt->prop_diff)
+ if (prop_diff)
{
int i;
- for (i = 0; i < mt->prop_diff->nelts; i++)
+ for (i = 0; i < prop_diff->nelts; i++)
{
- const svn_prop_t *elt = &APR_ARRAY_IDX(mt->prop_diff, i,
+ const svn_prop_t *elt = &APR_ARRAY_IDX(prop_diff, i,
svn_prop_t);
- if (strcmp(elt->name,prop_name) == 0)
+ if (strcmp(elt->name, prop_name) == 0)
return elt;
}
}
@@ -171,7 +171,7 @@
- old and new mime-types are binary, or
- old mime-type is binary and no new mime-type specified */
if (is_binary
- && (((prop = get_prop(mt, SVN_PROP_MIME_TYPE))
+ && (((prop = get_prop(mt->prop_diff, SVN_PROP_MIME_TYPE))
&& prop->value && svn_mime_type_is_binary(prop->value->data))
|| prop == NULL))
{
@@ -182,7 +182,7 @@
style = svn_subst_eol_style_none;
}
else if ((!is_binary)
- && (prop = get_prop(mt, SVN_PROP_MIME_TYPE))
+ && (prop = get_prop(mt->prop_diff, SVN_PROP_MIME_TYPE))
&& prop->value && svn_mime_type_is_binary(prop->value->data))
{
/* Old props indicate texty, new props indicate binary:
@@ -215,7 +215,7 @@
else
{
/* In case a new eol style was set, use that for detranslation */
- if ((prop = get_prop(mt, SVN_PROP_EOL_STYLE)) && prop->value)
+ if ((prop = get_prop(mt->prop_diff, SVN_PROP_EOL_STYLE)) && prop->value)
{
/* Value added or changed */
svn_subst_eol_style_from_value(&style, &eol, prop->value->data);
@@ -288,19 +288,19 @@
}
/* Updates (by copying and translating) the eol style in
- OLD_TARGET returning the filename containing the
- correct eol style in NEW_TARGET, if an eol style
- change is contained in PROP_DIFF */
+ OLD_TARGET_ABSPATH returning the filename containing the
+ correct eol style in NEW_TARGET_ABSPATH, if an eol style
+ change is contained in PROP_DIFF. */
static svn_error_t *
maybe_update_target_eols(const char **new_target_abspath,
- const merge_target_t *mt,
+ const apr_array_header_t *prop_diff,
const char *old_target_abspath,
svn_cancel_func_t cancel_func,
void *cancel_baton,
apr_pool_t *result_pool,
apr_pool_t *scratch_pool)
{
- const svn_prop_t *prop = get_prop(mt, SVN_PROP_EOL_STYLE);
+ const svn_prop_t *prop = get_prop(prop_diff, SVN_PROP_EOL_STYLE);
if (prop && prop->value)
{
@@ -366,16 +366,16 @@
}
/* Do a 3-way merge of the files at paths LEFT, DETRANSLATED_TARGET,
- * and RIGHT, using diff options provided in OPTIONS. Store the merge
+ * and RIGHT, using diff options provided in MERGE_OPTIONS. Store the merge
* result in the file RESULT_F.
* If there are conflicts, set *CONTAINS_CONFLICTS to true, and use
* TARGET_LABEL, LEFT_LABEL, and RIGHT_LABEL as labels for conflict
* markers. Else, set *CONTAINS_CONFLICTS to false.
* Do all allocations in POOL. */
-static svn_error_t*
+static svn_error_t *
do_text_merge(svn_boolean_t *contains_conflicts,
apr_file_t *result_f,
- const merge_target_t *mt,
+ const apr_array_header_t *merge_options,
const char *detranslated_target,
const char *left,
const char *right,
@@ -393,9 +393,9 @@
diff3_options = svn_diff_file_options_create(pool);
- if (mt->merge_options)
+ if (merge_options)
SVN_ERR(svn_diff_file_options_parse(diff3_options,
- mt->merge_options, pool));
+ merge_options, pool));
init_conflict_markers(&target_marker, &left_marker, &right_marker,
@@ -424,10 +424,11 @@
/* Same as do_text_merge() above, but use the external diff3
* command DIFF3_CMD to perform the merge. Pass MERGE_OPTIONS
* to the diff3 command. Do all allocations in POOL. */
-static svn_error_t*
+static svn_error_t *
do_text_merge_external(svn_boolean_t *contains_conflicts,
apr_file_t *result_f,
- const merge_target_t *mt,
+ const char *diff3_cmd,
+ const apr_array_header_t *merge_options,
const char *detranslated_target,
const char *left_abspath,
const char *right_abspath,
@@ -441,8 +442,8 @@
SVN_ERR(svn_io_run_diff3_3(&exit_code, ".",
detranslated_target, left_abspath, right_abspath,
target_label, left_label, right_label,
- result_f, mt->diff3_cmd,
- mt->merge_options, scratch_pool));
+ result_f, diff3_cmd,
+ merge_options, scratch_pool));
*contains_conflicts = exit_code == 1;
@@ -467,6 +468,7 @@
If target_abspath is not versioned use detranslated_target_abspath
as the target file.
+ ### NOT IMPLEMENTED -- 'detranslated_target_abspath' is not used.
*/
static svn_error_t *
preserve_pre_merge_files(svn_skel_t **work_items,
@@ -607,16 +609,42 @@
return SVN_NO_ERROR;
}
-/* Attempt a trivial merge of LEFT_ABSPATH and RIGHT_ABSPATH to TARGET_ABSPATH.
- * The merge is trivial if the file at LEFT_ABSPATH equals the detranslated
- * form of the target at DETRANSLATED_TARGET_ABSPATH, because in this case
- * the content of RIGHT_ABSPATH can be copied to the target.
- * Another trivial case is if DETRANSLATED_TARGET_ABSPATH is identical to
- * RIGHT_ABSPATH - we can just accept the existing content as merge result.
+/* Attempt a trivial merge of LEFT_ABSPATH and RIGHT_ABSPATH to
+ * the target file at TARGET_ABSPATH.
+ *
+ * These are the inherently trivial cases:
+ *
+ * left == right == target => no-op
+ * left != right, left == target => target := right
+ *
+ * This case is also treated as trivial:
+ *
+ * left != right, right == target => no-op
+ *
+ * ### Strictly, this case is a conflict, and the no-op outcome is only
+ * one of the possible resolutions.
+ *
+ * TODO: Raise a conflict at this level and implement the 'no-op'
+ * resolution of that conflict at a higher level, in preparation for
+ * being able to support stricter conflict detection.
+ *
+ * This case is inherently trivial but not currently handled here:
+ *
+ * left == right != target => no-op
+ *
+ * The files at LEFT_ABSPATH and RIGHT_ABSPATH are in repository normal
+ * form. The file at DETRANSLATED_TARGET_ABSPATH is a copy of the target,
+ * 'detranslated' to repository normal form, or may be the target file
+ * itself if no translation is necessary.
+ *
+ * When this function updates the target file, it translates to working copy
+ * form.
+ *
* On success, set *MERGE_OUTCOME to SVN_WC_MERGE_MERGED in case the
* target was changed, or to SVN_WC_MERGE_UNCHANGED if the target was not
* changed. Install work queue items allocated in RESULT_POOL in *WORK_ITEMS.
- * On failure, set *MERGE_OUTCOME to SVN_WC_MERGE_NO_MERGE. */
+ * On failure, set *MERGE_OUTCOME to SVN_WC_MERGE_NO_MERGE.
+ */
static svn_error_t *
merge_file_trivial(svn_skel_t **work_items,
enum svn_wc_merge_outcome_t *merge_outcome,
@@ -660,9 +688,8 @@
* copy RIGHT directly. */
if (same_left_target)
{
- /* Check whether the left side equals the right side.
- * If it does, there is no change to merge so we leave the target
- * unchanged. */
+ /* If the left side equals the right side, there is no change to merge
+ * so we leave the target unchanged. */
if (same_left_right)
{
*merge_outcome = svn_wc_merge_unchanged;
@@ -733,9 +760,8 @@
}
else
{
- /* Check whether the existing version equals the right side. If it
- * does, the locally existing, changed file equals the incoming
- * file, so there is no conflict. For binary files, we historically
+ /* If the locally existing, changed file equals the incoming 'right'
+ * file, there is no conflict. For binary files, we historically
* conflicted them needlessly, while merge_text_file figured it out
* eventually and returned svn_wc_merge_unchanged for them, which
* is what we do here. */
@@ -751,7 +777,26 @@
}
-/* XXX Insane amount of parameters... */
+/* Handle a non-trivial merge of 'text' files. (Assume that a trivial
+ * merge was not possible.)
+ *
+ * Set *WORK_ITEMS, *CONFLICT_SKEL and *MERGE_OUTCOME according to the
+ * result -- to install the merged file, or to indicate a conflict.
+ *
+ * On successful merge, leave the result in a temporary file and set
+ * *WORK_ITEMS to hold work items that will translate and install that
+ * file into its proper form and place (unless DRY_RUN) and delete the
+ * temporary file (in any case). Set *MERGE_OUTCOME to 'merged' or
+ * 'unchanged'.
+ *
+ * If a conflict occurs, set *MERGE_OUTCOME to 'conflicted', and (unless
+ * DRY_RUN) set *WORK_ITEMS and *CONFLICT_SKEL to record the conflict
+ * and copies of the pre-merge files. See preserve_pre_merge_files()
+ * for details.
+ *
+ * On entry, all of the output pointers must be non-null and *CONFLICT_SKEL
+ * must either point to an existing conflict skel or be NULL.
+ */
static svn_error_t*
merge_text_file(svn_skel_t **work_items,
svn_skel_t **conflict_skel,
@@ -795,7 +840,8 @@
if (mt->diff3_cmd)
SVN_ERR(do_text_merge_external(&contains_conflicts,
result_f,
- mt,
+ mt->diff3_cmd,
+ mt->merge_options,
detranslated_target_abspath,
left_abspath,
right_abspath,
@@ -806,7 +852,7 @@
else /* Use internal merge. */
SVN_ERR(do_text_merge(&contains_conflicts,
result_f,
- mt,
+ mt->merge_options,
detranslated_target_abspath,
left_abspath,
right_abspath,
@@ -817,6 +863,7 @@
SVN_ERR(svn_io_file_close(result_f, pool));
+ /* Determine the MERGE_OUTCOME, and record any conflict. */
if (contains_conflicts && ! dry_run)
{
*merge_outcome = svn_wc_merge_conflict;
@@ -898,7 +945,32 @@
return SVN_NO_ERROR;
}
-/* XXX Insane amount of parameters... */
+/* Handle a non-trivial merge of 'binary' files: don't actually merge, just
+ * flag a conflict. (Assume that a trivial merge was not possible.)
+ *
+ * Copy* the files at LEFT_ABSPATH and RIGHT_ABSPATH into the same directory
+ * as the target file, giving them unique names that start with the target
+ * file's name and end with LEFT_LABEL and RIGHT_LABEL respectively.
+ * If the merge target has been 'detranslated' to repository normal form,
+ * move the detranslated file similarly to a unique name ending with
+ * TARGET_LABEL.
+ *
+ * ### * Why do we copy the left and right temp files when we could (maybe
+ * not always?) move them?
+ *
+ * On entry, all of the output pointers must be non-null and *CONFLICT_SKEL
+ * must either point to an existing conflict skel or be NULL.
+ *
+ * Set *WORK_ITEMS, *CONFLICT_SKEL and *MERGE_OUTCOME to indicate the
+ * conflict.
+ *
+ * ### Why do we not use preserve_pre_merge_files() in here? The
+ * behaviour would be slightly different, more consistent: the
+ * preserved 'left' and 'right' files would be translated to working
+ * copy form, which may make a difference when a binary file
+ * contains keyword expansions or when some versions of the file are
+ * not 'binary' even though we're merging in 'binary files' mode.
+ */
static svn_error_t *
merge_binary_file(svn_skel_t **work_items,
svn_skel_t **conflict_skel,
@@ -925,9 +997,6 @@
svn_dirent_split(&merge_dirpath, &merge_filename, mt->local_abspath, pool);
- /* If we get here the binary files differ. Because we don't know how
- * to merge binary files in a non-trivial way we always flag a conflict. */
-
if (dry_run)
{
*merge_outcome = svn_wc_merge_conflict;
@@ -994,7 +1063,6 @@
return SVN_NO_ERROR;
}
-/* XXX Insane amount of parameters... */
svn_error_t *
svn_wc__internal_merge(svn_skel_t **work_items,
svn_skel_t **conflict_skel,
@@ -1039,7 +1107,7 @@
mt.merge_options = merge_options;
/* Decide if the merge target is a text or binary file. */
- if ((mimeprop = get_prop(&mt, SVN_PROP_MIME_TYPE))
+ if ((mimeprop = get_prop(prop_diff, SVN_PROP_MIME_TYPE))
&& mimeprop->value)
is_binary = svn_mime_type_is_binary(mimeprop->value->data);
else
@@ -1059,7 +1127,7 @@
/* We cannot depend on the left file to contain the same eols as the
right file. If the merge target has mods, this will mark the entire
file as conflicted, so we need to compensate. */
- SVN_ERR(maybe_update_target_eols(&left_abspath, &mt, left_abspath,
+ SVN_ERR(maybe_update_target_eols(&left_abspath, prop_diff, left_abspath,
cancel_func, cancel_baton,
scratch_pool, scratch_pool));
@@ -1070,8 +1138,12 @@
result_pool, scratch_pool));
if (*merge_outcome == svn_wc_merge_no_merge)
{
+ /* We have a non-trivial merge. If we classify it as a merge of
+ * 'binary' files we'll just raise a conflict, otherwise we'll do
+ * the actual merge of 'text' file contents. */
if (is_binary)
{
+ /* Raise a text conflict */
SVN_ERR(merge_binary_file(work_items,
conflict_skel,
merge_outcome,
@@ -1227,6 +1299,8 @@
actual_props = apr_hash_make(scratch_pool);
}
+ /* Merge the properties, if requested. We merge the properties first
+ * because the properties can affect the text (EOL style, keywords). */
if (merge_props_outcome)
{
int i;
@@ -1256,7 +1330,7 @@
scratch_pool, scratch_pool));
}
- /* Queue all the work. */
+ /* Merge the text. */
SVN_ERR(svn_wc__internal_merge(&work_items,
&conflict_skel,
merge_content_outcome,
@@ -1318,6 +1392,7 @@
SVN_ERR(svn_wc__conflict_invoke_resolver(wc_ctx->db, target_abspath,
conflict_skel, merge_options,
conflict_func, conflict_baton,
+ cancel_func, cancel_baton,
scratch_pool));
}
diff --git a/subversion/libsvn_wc/props.c b/subversion/libsvn_wc/props.c
index c900332..445d967 100644
--- a/subversion/libsvn_wc/props.c
+++ b/subversion/libsvn_wc/props.c
@@ -353,6 +353,7 @@
SVN_ERR(svn_wc__conflict_invoke_resolver(db, local_abspath, conflict_skel,
NULL /* merge_options */,
conflict_func, conflict_baton,
+ cancel_func, cancel_baton,
scratch_pool));
return SVN_NO_ERROR;
diff --git a/subversion/libsvn_wc/status.c b/subversion/libsvn_wc/status.c
index 8b18de8..787adc9 100644
--- a/subversion/libsvn_wc/status.c
+++ b/subversion/libsvn_wc/status.c
@@ -514,52 +514,23 @@
!= 0);
}
- /* Examine whether our target is missing or obstructed. To detect
- * obstructions, we have to look at the on-disk status in DIRENT. */
- if (info->kind == svn_kind_dir)
+ if (info->status == svn_wc__db_status_incomplete || info->incomplete)
{
- if (info->status == svn_wc__db_status_incomplete || info->incomplete)
- {
- /* Highest precedence. */
- node_status = svn_wc_status_incomplete;
- }
- else if (info->status == svn_wc__db_status_deleted)
- {
- node_status = svn_wc_status_deleted;
-
- if (!info->have_base)
- copied = TRUE;
- else
- {
- const char *work_del_abspath;
-
- /* Find out details of our deletion. */
- SVN_ERR(svn_wc__db_scan_deletion(NULL, NULL,
- &work_del_abspath, NULL,
- db, local_abspath,
- scratch_pool, scratch_pool));
- if (work_del_abspath)
- copied = TRUE; /* Working deletion */
- }
- }
- else if (!dirent || dirent->kind != svn_node_dir)
- {
- /* A present or added directory should be on disk, so it is
- reported missing or obstructed. */
- if (!dirent || dirent->kind == svn_node_none)
- node_status = svn_wc_status_missing;
- else
- node_status = svn_wc_status_obstructed;
- }
+ /* Highest precedence. */
+ node_status = svn_wc_status_incomplete;
}
- else
+ else if (info->status == svn_wc__db_status_deleted)
{
- if (info->status == svn_wc__db_status_deleted)
+ node_status = svn_wc_status_deleted;
+
+ if (!info->have_base || info->have_more_work || info->copied)
+ copied = TRUE;
+ else if (!info->have_more_work && info->have_base)
+ copied = FALSE;
+ else
{
const char *work_del_abspath;
- node_status = svn_wc_status_deleted;
-
/* Find out details of our deletion. */
SVN_ERR(svn_wc__db_scan_deletion(NULL, NULL,
&work_del_abspath, NULL,
@@ -568,9 +539,18 @@
if (work_del_abspath)
copied = TRUE; /* Working deletion */
}
- else if (!dirent || dirent->kind != svn_node_file)
+ }
+ else
+ {
+ /* Examine whether our target is missing or obstructed. To detect
+ * obstructions, we have to look at the on-disk status in DIRENT. */
+ svn_node_kind_t expected_kind = (info->kind == svn_kind_dir)
+ ? svn_node_dir
+ : svn_node_file;
+
+ if (!dirent || dirent->kind != expected_kind)
{
- /* A present or added file should be on disk, so it is
+ /* A present or added node should be on disk, so it is
reported missing or obstructed. */
if (!dirent || dirent->kind == svn_node_none)
node_status = svn_wc_status_missing;
diff --git a/subversion/libsvn_wc/update_editor.c b/subversion/libsvn_wc/update_editor.c
index 84253ae..d18b5c0 100644
--- a/subversion/libsvn_wc/update_editor.c
+++ b/subversion/libsvn_wc/update_editor.c
@@ -322,6 +322,10 @@
marked as deleted. */
svn_boolean_t shadowed;
+ /* Set on a node when the existing node is obstructed, and the edit operation
+ continues as semi-shadowed update */
+ svn_boolean_t edit_obstructed;
+
/* The (new) changed_* information, cached to avoid retrieving it later */
svn_revnum_t changed_rev;
apr_time_t changed_date;
@@ -621,7 +625,7 @@
if (pb)
{
d->skip_this = pb->skip_this;
- d->shadowed = pb->shadowed;
+ d->shadowed = pb->shadowed || pb->edit_obstructed;
}
/* The caller of this function needs to fill these in. */
@@ -734,6 +738,10 @@
in the working copy (replaced, deleted, etc.). */
svn_boolean_t shadowed;
+ /* Set on a node when the existing node is obstructed, and the edit operation
+ continues as semi-shadowed update */
+ svn_boolean_t edit_obstructed;
+
/* The (new) changed_* information, cached to avoid retrieving it later */
svn_revnum_t changed_rev;
apr_time_t changed_date;
@@ -830,7 +838,7 @@
f->obstruction_found = FALSE;
f->add_existed = FALSE;
f->skip_this = pb->skip_this;
- f->shadowed = pb->shadowed;
+ f->shadowed = pb->shadowed || pb->edit_obstructed;
f->dir_baton = pb;
f->changed_rev = SVN_INVALID_REVNUM;
@@ -1232,8 +1240,6 @@
svn_wc__db_t *db; /* wc_db to access nodes */
svn_boolean_t found_mod; /* whether a modification has been found */
svn_boolean_t found_not_delete; /* Found a not-delete modification */
- svn_boolean_t is_copy; /* check for post-copy modifications only */
- const char *modcheck_root_abspath;
} modcheck_baton_t;
/* An implementation of svn_wc_status_func4_t. */
@@ -1261,30 +1267,13 @@
case svn_wc_status_missing:
case svn_wc_status_obstructed:
- if (status->prop_status != svn_wc_status_modified)
- break;
-
mb->found_mod = TRUE;
mb->found_not_delete = TRUE;
/* Exit from the status walker: We know what we want to know */
return svn_error_create(SVN_ERR_CEASE_INVOCATION, NULL, NULL);
- case svn_wc_status_added:
- /* Ignore the copy status if we expect a copy, but don't ignore
- other changes */
- if (!mb->is_copy
- || status->text_status == svn_wc_status_modified
- || status->prop_status == svn_wc_status_modified
- || strcmp(mb->modcheck_root_abspath, local_abspath) != 0)
- {
- mb->found_mod = TRUE;
- mb->found_not_delete = TRUE;
- /* Exit from the status walker: We know what we want to know */
- return svn_error_create(SVN_ERR_CEASE_INVOCATION, NULL, NULL);
- }
- break;
-
default:
+ case svn_wc_status_added:
case svn_wc_status_replaced:
case svn_wc_status_modified:
mb->found_mod = TRUE;
@@ -1301,25 +1290,20 @@
* tree rooted at LOCAL_ABSPATH, using DB. If *MODIFIED
* is set to true and all the local modifications were deletes then set
* *ALL_EDITS_ARE_DELETES to true, set it to false otherwise. LOCAL_ABSPATH
- * may be a file or a directory. If IS_COPY is TRUE, LOCAL_ABSPATH is a
- * copied (or moved) node, and nodes at or within LOCAL_ABSPATH are only
- * considered modified if they were modified post-copy. */
+ * may be a file or a directory. */
static svn_error_t *
node_has_local_mods(svn_boolean_t *modified,
svn_boolean_t *all_edits_are_deletes,
- svn_boolean_t is_copy,
svn_wc__db_t *db,
const char *local_abspath,
svn_cancel_func_t cancel_func,
void *cancel_baton,
apr_pool_t *scratch_pool)
{
- modcheck_baton_t modcheck_baton = { NULL, FALSE, FALSE, FALSE };
+ modcheck_baton_t modcheck_baton = { NULL, FALSE, FALSE };
svn_error_t *err;
modcheck_baton.db = db;
- modcheck_baton.is_copy = is_copy;
- modcheck_baton.modcheck_root_abspath = local_abspath;
/* Walk the WC tree for status with depth infinity, looking for any local
* modifications. If it's a "sparse" directory, that's OK: there can be
@@ -1353,9 +1337,9 @@
* The edit baton EB gives information including whether the operation is
* an update or a switch.
*
- * WORKING_STATUS and WORKING_KIND are the current node status of LOCAL_ABSPATH
+ * WORKING_STATUS is the current node status of LOCAL_ABSPATH
* and EXISTS_IN_REPOS specifies whether a BASE_NODE representation for exists
- * for this node.
+ * for this node. In that case the on disk type is compared to EXPECTED_KIND.
*
* If a tree conflict reason was found for the incoming action, the resulting
* tree conflict info is returned in *PCONFLICT. PCONFLICT must be non-NULL,
@@ -1370,6 +1354,7 @@
const char *local_abspath,
svn_wc__db_status_t working_status,
svn_boolean_t exists_in_repos,
+ svn_node_kind_t expected_kind,
svn_wc_conflict_action_t action,
apr_pool_t *result_pool,
apr_pool_t *scratch_pool)
@@ -1444,10 +1429,29 @@
* missing information (hopefully). */
case svn_wc__db_status_normal:
if (action == svn_wc_conflict_action_edit)
- /* An edit onto a local edit or onto *no* local changes is no
- * tree-conflict. (It's possibly a text- or prop-conflict,
- * but we don't handle those here.) */
- return SVN_NO_ERROR;
+ {
+ /* An edit onto a local edit or onto *no* local changes is no
+ * tree-conflict. (It's possibly a text- or prop-conflict,
+ * but we don't handle those here.)
+ *
+ * Except when there is a local obstruction
+ */
+ if (exists_in_repos)
+ {
+ svn_node_kind_t disk_kind;
+
+ SVN_ERR(svn_io_check_path(local_abspath, &disk_kind,
+ scratch_pool));
+
+ if (disk_kind != expected_kind && disk_kind != svn_node_none)
+ {
+ reason = svn_wc_conflict_reason_obstructed;
+ break;
+ }
+
+ }
+ return SVN_NO_ERROR;
+ }
/* Replace is handled as delete and then specifically in
add_directory() and add_file(), so we only expect deletes here */
@@ -1461,7 +1465,7 @@
* not visit the subdirectories of a directory that it wants to delete.
* Therefore, we need to start a separate crawl here. */
- SVN_ERR(node_has_local_mods(&modified, &all_mods_are_deletes, FALSE,
+ SVN_ERR(node_has_local_mods(&modified, &all_mods_are_deletes,
eb->db, local_abspath,
eb->cancel_func, eb->cancel_baton,
scratch_pool));
@@ -1500,6 +1504,7 @@
/* Sanity checks. Note that if there was no action on the node, this function
* would not have been called in the first place.*/
if (reason == svn_wc_conflict_reason_edited
+ || reason == svn_wc_conflict_reason_obstructed
|| reason == svn_wc_conflict_reason_deleted
|| reason == svn_wc_conflict_reason_moved_away
|| reason == svn_wc_conflict_reason_replaced)
@@ -1716,10 +1721,13 @@
/* Check for conflicts only when we haven't already recorded
* a tree-conflict on a parent node. */
- if (!pb->shadowed)
+ if (!pb->shadowed && !pb->edit_obstructed)
{
SVN_ERR(check_tree_conflict(&tree_conflict, eb, local_abspath,
status, TRUE,
+ (kind == svn_kind_dir)
+ ? svn_node_dir
+ : svn_node_file,
svn_wc_conflict_action_delete,
pb->pool, scratch_pool));
}
@@ -1742,7 +1750,8 @@
tree_conflict,
scratch_pool, scratch_pool));
- if (reason == svn_wc_conflict_reason_edited)
+ if (reason == svn_wc_conflict_reason_edited
+ || reason == svn_wc_conflict_reason_obstructed)
{
/* The item exists locally and has some sort of local mod.
* It no longer exists in the repository at its target URL@REV.
@@ -1816,7 +1825,7 @@
svn_wc_notify_action_t action = svn_wc_notify_update_delete;
svn_node_kind_t node_kind;
- if (pb->shadowed)
+ if (pb->shadowed || pb->edit_obstructed)
action = svn_wc_notify_update_shadowed_delete;
if (kind == svn_kind_dir)
@@ -2091,7 +2100,7 @@
{
SVN_ERR(check_tree_conflict(&tree_conflict, eb,
db->local_abspath,
- status, FALSE,
+ status, FALSE, svn_node_none,
svn_wc_conflict_action_add,
pool, pool));
}
@@ -2160,7 +2169,7 @@
/* If this add was obstructed by dir scheduled for addition without
- history let close_file() handle the notification because there
+ history let close_directory() handle the notification because there
might be properties to deal with. If PATH was added inside a locally
deleted tree, then suppress notification, a tree conflict was already
issued. */
@@ -2170,7 +2179,7 @@
if (db->shadowed)
action = svn_wc_notify_update_shadowed_add;
- else if (db->obstruction_found)
+ else if (db->obstruction_found || db->add_existed)
action = svn_wc_notify_exists;
else
action = svn_wc_notify_update_add;
@@ -2277,7 +2286,7 @@
* a tree-conflict on a parent node. */
if (!db->shadowed)
SVN_ERR(check_tree_conflict(&tree_conflict, eb, db->local_abspath,
- status, TRUE,
+ status, TRUE, svn_node_dir,
svn_wc_conflict_action_edit,
db->pool, pool));
@@ -2294,10 +2303,14 @@
db->pool, db->pool));
SVN_ERR_ASSERT(reason == svn_wc_conflict_reason_deleted
|| reason == svn_wc_conflict_reason_moved_away
- || reason == svn_wc_conflict_reason_replaced);
+ || reason == svn_wc_conflict_reason_replaced
+ || reason == svn_wc_conflict_reason_obstructed);
/* Continue updating BASE */
- db->shadowed = TRUE;
+ if (reason == svn_wc_conflict_reason_obstructed)
+ db->edit_obstructed = TRUE;
+ else
+ db->shadowed = TRUE;
}
/* Mark directory as being at target_revision and URL, but incomplete. */
@@ -2764,6 +2777,8 @@
NULL /* merge_options */,
eb->conflict_func,
eb->conflict_baton,
+ eb->cancel_func,
+ eb->conflict_baton,
scratch_pool));
/* Notify of any prop changes on this directory -- but do nothing if
@@ -2776,7 +2791,7 @@
svn_wc_notify_t *notify;
svn_wc_notify_action_t action;
- if (db->shadowed)
+ if (db->shadowed || db->edit_obstructed)
action = svn_wc_notify_update_shadowed_update;
else if (db->obstruction_found || db->add_existed)
action = svn_wc_notify_exists;
@@ -3165,7 +3180,7 @@
{
SVN_ERR(check_tree_conflict(&tree_conflict, eb,
fb->local_abspath,
- status, FALSE,
+ status, FALSE, svn_node_none,
svn_wc_conflict_action_add,
scratch_pool, scratch_pool));
}
@@ -3329,13 +3344,11 @@
return SVN_NO_ERROR;
}
- fb->shadowed = pb->shadowed;
-
/* Check for conflicts only when we haven't already recorded
* a tree-conflict on a parent node. */
if (!fb->shadowed)
SVN_ERR(check_tree_conflict(&tree_conflict, eb, fb->local_abspath,
- status, TRUE,
+ status, TRUE, svn_node_file,
svn_wc_conflict_action_edit,
fb->pool, scratch_pool));
@@ -3349,13 +3362,17 @@
SVN_ERR(svn_wc__conflict_read_tree_conflict(&reason, NULL,
eb->db, fb->local_abspath,
tree_conflict,
- fb->pool, fb->pool));
+ scratch_pool, scratch_pool));
SVN_ERR_ASSERT(reason == svn_wc_conflict_reason_deleted
|| reason == svn_wc_conflict_reason_moved_away
- || reason == svn_wc_conflict_reason_replaced);
+ || reason == svn_wc_conflict_reason_replaced
+ || reason == svn_wc_conflict_reason_obstructed);
/* Continue updating BASE */
- fb->shadowed = TRUE;
+ if (reason == svn_wc_conflict_reason_obstructed)
+ fb->edit_obstructed = TRUE;
+ else
+ fb->shadowed = TRUE;
}
svn_pool_destroy(scratch_pool);
@@ -3766,7 +3783,9 @@
svn_boolean_t is_locally_modified;
enum svn_wc_merge_outcome_t merge_outcome = svn_wc_merge_unchanged;
- SVN_ERR_ASSERT(! fb->shadowed && !fb->obstruction_found);
+ SVN_ERR_ASSERT(! fb->shadowed
+ && ! fb->obstruction_found
+ && ! fb->edit_obstructed);
/*
When this function is called on file F, we assume the following
@@ -4137,7 +4156,7 @@
SVN_ERR_ASSERT(new_base_props != NULL && new_actual_props != NULL);
/* Merge the text. This will queue some additional work. */
- if (!fb->obstruction_found)
+ if (!fb->obstruction_found && !fb->edit_obstructed)
{
svn_error_t *err;
err = merge_file(&work_item, &conflict_skel,
@@ -4351,6 +4370,8 @@
NULL /* merge_options */,
eb->conflict_func,
eb->conflict_baton,
+ eb->cancel_func,
+ eb->cancel_baton,
scratch_pool));
/* Deal with the WORKING tree, based on updates to the BASE tree. */
@@ -4368,7 +4389,7 @@
if (fb->edited)
{
- if (fb->shadowed)
+ if (fb->shadowed || fb->edit_obstructed)
action = fb->adding_file
? svn_wc_notify_update_shadowed_add
: svn_wc_notify_update_shadowed_update;
diff --git a/subversion/libsvn_wc/wc-queries.sql b/subversion/libsvn_wc/wc-queries.sql
index 44e1be5..719da1e 100644
--- a/subversion/libsvn_wc/wc-queries.sql
+++ b/subversion/libsvn_wc/wc-queries.sql
@@ -96,7 +96,7 @@
WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3
-- STMT_SELECT_LOWEST_WORKING_NODE
-SELECT op_depth, presence
+SELECT op_depth, presence, kind
FROM nodes
WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth > ?3
ORDER BY op_depth
@@ -238,13 +238,17 @@
wc_id, local_relpath, op_depth, parent_relpath, repos_id, repos_path,
revision, presence, depth, kind, changed_revision, changed_date,
changed_author, checksum, properties, translated_size, last_mod_time,
- symlink_target, moved_here )
+ symlink_target, moved_here, moved_to )
SELECT
wc_id, ?4 /*local_relpath */, ?5 /*op_depth*/, ?6 /* parent_relpath */,
repos_id,
repos_path, revision, presence, depth, kind, changed_revision,
changed_date, changed_author, checksum, properties, translated_size,
- last_mod_time, symlink_target, 1
+ last_mod_time, symlink_target, 1,
+ (SELECT dst.moved_to FROM nodes AS dst
+ WHERE dst.wc_id = ?1
+ AND dst.local_relpath = ?4
+ AND dst.op_depth = ?5)
FROM nodes
WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3
@@ -751,6 +755,25 @@
DELETE FROM pristine
WHERE checksum = ?1 AND refcount = 0
+-- STMT_SELECT_COPY_PRISTINES
+/* For the root itself */
+SELECT n.checksum, md5_checksum, size
+FROM nodes_current n
+LEFT JOIN pristine p ON n.checksum = p.checksum
+WHERE wc_id = ?1
+ AND n.local_relpath = ?2
+ AND n.checksum IS NOT NULL
+UNION ALL
+/* And all descendants */
+SELECT n.checksum, md5_checksum, size
+FROM nodes n
+LEFT JOIN pristine p ON n.checksum = p.checksum
+WHERE wc_id = ?1
+ AND IS_STRICT_DESCENDANT_OF(n.local_relpath, ?2)
+ AND op_depth >=
+ (SELECT MAX(op_depth) FROM nodes WHERE wc_id = ?1 AND local_relpath = ?2)
+ AND n.checksum IS NOT NULL
+
-- STMT_VACUUM
VACUUM
@@ -1419,6 +1442,17 @@
AND moved_to IS NOT NULL
AND NOT IS_STRICT_DESCENDANT_OF(moved_to, ?2)
+-- STMT_SELECT_MOVED_PAIR3
+SELECT local_relpath, moved_to, op_depth FROM nodes
+WHERE wc_id = ?1
+ AND (local_relpath = ?2 OR IS_STRICT_DESCENDANT_OF(local_relpath, ?2))
+ AND op_depth > ?3
+ AND moved_to IS NOT NULL
+
+-- STMT_HAS_LAYER_BETWEEN
+SELECT 1 FROM NODES
+WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth > ?3 AND op_depth < ?4
+
/* ------------------------------------------------------------------------- */
/* Queries for verification. */
diff --git a/subversion/libsvn_wc/wc.h b/subversion/libsvn_wc/wc.h
index 857e9a0..e816164 100644
--- a/subversion/libsvn_wc/wc.h
+++ b/subversion/libsvn_wc/wc.h
@@ -390,8 +390,8 @@
/* Prepare to merge a file content change into the working copy. This
does not merge properties; see svn_wc__merge_props() for that. This
- ### [does | does not]
- change the working file on disk as well as returning work items.
+ does not change the working file on disk; it returns work items that
+ will replace the working file on disk when they are run.
Merge the difference between LEFT_ABSPATH and RIGHT_ABSPATH into
TARGET_ABSPATH.
diff --git a/subversion/libsvn_wc/wc_db.c b/subversion/libsvn_wc/wc_db.c
index 248994d..0fd26b8 100644
--- a/subversion/libsvn_wc/wc_db.c
+++ b/subversion/libsvn_wc/wc_db.c
@@ -9145,15 +9145,7 @@
/* If we didn't filter everything then keep this iprop. */
if (apr_hash_count(cached_iprop->prop_hash))
- {
- /* Convert the repository relative path in the
- cache to a full URL. */
- cached_iprop->path_or_url =
- svn_path_url_add_component2(repos_root_url,
- cached_iprop->path_or_url,
- result_pool);
- svn_sort__array_insert(&cached_iprop, *iprops, 0);
- }
+ svn_sort__array_insert(&cached_iprop, *iprops, 0);
}
}
@@ -10399,6 +10391,9 @@
TRUE /* is_root */, FALSE, db,
scratch_pool));
+ SVN_ERR(svn_wc__db_bump_moved_away(wcroot, local_relpath, depth,
+ scratch_pool));
+
return SVN_NO_ERROR;
}
@@ -12904,12 +12899,12 @@
}
-/* The body of svn_wc__db_wclocked().
- */
+/* The body of svn_wc__db_wclock_find_root() and svn_wc__db_wclocked(). */
static svn_error_t *
-is_wclocked(svn_boolean_t *locked,
+find_wclock(const char **lock_relpath,
svn_wc__db_wcroot_t *wcroot,
const char *dir_relpath,
+ apr_pool_t *result_pool,
apr_pool_t *scratch_pool)
{
svn_sqlite__stmt_t *stmt;
@@ -12953,7 +12948,7 @@
if (locked_levels == -1
|| locked_levels + row_depth >= dir_depth)
{
- *locked = TRUE;
+ *lock_relpath = apr_pstrdup(result_pool, relpath);
SVN_ERR(svn_sqlite__reset(stmt));
return SVN_NO_ERROR;
}
@@ -12962,11 +12957,54 @@
SVN_ERR(svn_sqlite__step(&have_row, stmt));
}
- *locked = FALSE;
+ *lock_relpath = NULL;
return svn_error_trace(svn_sqlite__reset(stmt));
}
+static svn_error_t *
+is_wclocked(svn_boolean_t *locked,
+ svn_wc__db_wcroot_t *wcroot,
+ const char *dir_relpath,
+ apr_pool_t *scratch_pool)
+{
+ const char *lock_relpath;
+
+ SVN_ERR(find_wclock(&lock_relpath, wcroot, dir_relpath,
+ scratch_pool, scratch_pool));
+ *locked = (lock_relpath != NULL);
+ return SVN_NO_ERROR;
+}
+
+
+svn_error_t*
+svn_wc__db_wclock_find_root(const char **lock_abspath,
+ svn_wc__db_t *db,
+ const char *local_abspath,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool)
+{
+ svn_wc__db_wcroot_t *wcroot;
+ const char *local_relpath;
+ const char *lock_relpath;
+
+ SVN_ERR(svn_wc__db_wcroot_parse_local_abspath(&wcroot, &local_relpath, db,
+ local_abspath, scratch_pool, scratch_pool));
+ VERIFY_USABLE_WCROOT(wcroot);
+
+ SVN_WC__DB_WITH_TXN(
+ find_wclock(&lock_relpath, wcroot, local_relpath,
+ scratch_pool, scratch_pool),
+ wcroot);
+
+ if (!lock_relpath)
+ *lock_abspath = NULL;
+ else
+ SVN_ERR(svn_wc__db_from_relpath(lock_abspath, db, wcroot->abspath,
+ lock_relpath, result_pool, scratch_pool));
+ return SVN_NO_ERROR;
+}
+
svn_error_t *
svn_wc__db_wclocked(svn_boolean_t *locked,
diff --git a/subversion/libsvn_wc/wc_db.h b/subversion/libsvn_wc/wc_db.h
index 25b7794..8915bbc 100644
--- a/subversion/libsvn_wc/wc_db.h
+++ b/subversion/libsvn_wc/wc_db.h
@@ -994,8 +994,8 @@
apr_pool_t *scratch_pool);
-/* If necessary transfers the PRISTINE file of SRC_LOCAL_ABSPATH to the
- working copy identified by DST_WRI_ABSPATH. */
+/* If necessary transfers the PRISTINE files of the tree rooted at
+ SRC_LOCAL_ABSPATH to the working copy identified by DST_WRI_ABSPATH. */
svn_error_t *
svn_wc__db_pristine_transfer(svn_wc__db_t *db,
const char *src_local_abspath,
@@ -2075,14 +2075,19 @@
/**
- * Set @a *inherited_props to a depth-first ordered array of
+ * Set @a *iprops to a depth-first ordered array of
* #svn_prop_inherited_item_t * structures representing the properties
* inherited by @a local_abspath from the ACTUAL tree above
* @a local_abspath (looking through to the WORKING or BASE tree as
* required), up to and including the root of the working copy and
* any cached inherited properties inherited by the root.
*
- * Allocate @a *inherited_props in @a result_pool. Use @a scratch_pool
+ * The #svn_prop_inherited_item_t->path_or_url members of the
+ * #svn_prop_inherited_item_t * structures in @a *iprops are
+ * paths relative to the repository root URL for cached inherited
+ * properties and absolute working copy paths otherwise.
+ *
+ * Allocate @a *iprops in @a result_pool. Use @a scratch_pool
* for temporary allocations.
*/
svn_error_t *
@@ -2894,6 +2899,15 @@
svn_boolean_t steal_lock,
apr_pool_t *scratch_pool);
+/* Set LOCK_ABSPATH to the path of the the directory that owns the
+ lock on LOCAL_ABSPATH, or NULL, if LOCAL_ABSPATH is not locked. */
+svn_error_t*
+svn_wc__db_wclock_find_root(const char **lock_abspath,
+ svn_wc__db_t *db,
+ const char *local_abspath,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool);
+
/* Check if somebody has a wclock on LOCAL_ABSPATH */
svn_error_t *
svn_wc__db_wclocked(svn_boolean_t *locked,
diff --git a/subversion/libsvn_wc/wc_db_pristine.c b/subversion/libsvn_wc/wc_db_pristine.c
index fb45589..5021b7f 100644
--- a/subversion/libsvn_wc/wc_db_pristine.c
+++ b/subversion/libsvn_wc/wc_db_pristine.c
@@ -25,6 +25,7 @@
#define SVN_WC__I_AM_WC_DB
+#include "svn_pools.h"
#include "svn_dirent_uri.h"
#include "wc.h"
@@ -500,118 +501,84 @@
return svn_error_trace(svn_sqlite__reset(stmt));
}
-/* Transaction implementation of svn_wc__db_pristine_transfer().
- We have a lock on DST_WCROOT and a lock on SRC_WCROOT.
-
- Outputs:
- *TEMPFILE_ABSPATH is the path to the source file that is to be moved
- into place.
- *PRISTINE_ABSPATH is the target path for the file (within the pristine
- store).
- *SHA1_CHECKSUM is the pristine text's SHA-1 checksum.
- *MD5_CHECKSUM is the pristine text's MD-5 checksum.
-
- If there is nothing to transfer (it is not found in the source, or is
- already in the destination), then set *TEMPFILE_ABSPATH_P to NULL.
- */
+/* Handle the moving of a pristine from SRC_WCROOT to DST_WCROOT. The existing
+ pristine in SRC_WCROOT is described by CHECKSUM, MD5_CHECKSUM and SIZE */
static svn_error_t *
-pristine_transfer_txn2(const char **tempfile_abspath,
- const char **pristine_abspath,
- const svn_checksum_t **sha1_checksum,
- const svn_checksum_t **md5_checksum,
- svn_wc__db_wcroot_t *src_wcroot,
- svn_wc__db_wcroot_t *dst_wcroot,
- const char *src_relpath,
- svn_cancel_func_t cancel_func,
- void *cancel_baton,
- apr_pool_t *scratch_pool)
+maybe_transfer_one_pristine(svn_wc__db_wcroot_t *src_wcroot,
+ svn_wc__db_wcroot_t *dst_wcroot,
+ const svn_checksum_t *checksum,
+ const svn_checksum_t *md5_checksum,
+ apr_int64_t size,
+ svn_cancel_func_t cancel_func,
+ void *cancel_baton,
+ apr_pool_t *scratch_pool)
{
+ const char *pristine_abspath;
svn_sqlite__stmt_t *stmt;
- svn_boolean_t have_row;
+ svn_stream_t *src_stream;
+ svn_stream_t *dst_stream;
+ const char *tmp_abspath;
+ const char *src_abspath;
+ int affected_rows;
+ svn_error_t *err;
- *tempfile_abspath = NULL;
-
- /* Get the SHA1 checksum */
- SVN_ERR(svn_sqlite__get_statement(&stmt, src_wcroot->sdb,
- STMT_SELECT_NODE_INFO));
- SVN_ERR(svn_sqlite__bindf(stmt, "is",
- src_wcroot->wc_id, src_relpath));
- SVN_ERR(svn_sqlite__step(&have_row, stmt));
- if (have_row)
- SVN_ERR(svn_sqlite__column_checksum(sha1_checksum, stmt, 6,
- scratch_pool));
- SVN_ERR(svn_sqlite__reset(stmt));
-
- if (! *sha1_checksum)
- return SVN_NO_ERROR; /* Nothing to transfer */
-
- /* Check if we have the pristine in the destination wcroot */
SVN_ERR(svn_sqlite__get_statement(&stmt, dst_wcroot->sdb,
- STMT_SELECT_PRISTINE));
- SVN_ERR(svn_sqlite__bind_checksum(stmt, 1, *sha1_checksum,
- scratch_pool));
- SVN_ERR(svn_sqlite__step(&have_row, stmt));
- SVN_ERR(svn_sqlite__reset(stmt));
+ STMT_INSERT_OR_IGNORE_PRISTINE));
+ SVN_ERR(svn_sqlite__bind_checksum(stmt, 1, checksum, scratch_pool));
+ SVN_ERR(svn_sqlite__bind_checksum(stmt, 2, md5_checksum, scratch_pool));
+ SVN_ERR(svn_sqlite__bind_int64(stmt, 3, size));
- /* Destination repository already has this pristine. We're done */
- if (have_row)
+ SVN_ERR(svn_sqlite__update(&affected_rows, stmt));
+
+ if (affected_rows == 0)
return SVN_NO_ERROR;
- /* Verify if the pristine actually exists and get the MD5 in one query */
- SVN_ERR(svn_sqlite__get_statement(&stmt, src_wcroot->sdb,
- STMT_SELECT_PRISTINE));
- SVN_ERR(svn_sqlite__bind_checksum(stmt, 1, *sha1_checksum,
- scratch_pool));
- SVN_ERR(svn_sqlite__step(&have_row, stmt));
+ SVN_ERR(svn_stream_open_unique(&dst_stream, &tmp_abspath,
+ pristine_get_tempdir(dst_wcroot,
+ scratch_pool,
+ scratch_pool),
+ svn_io_file_del_on_pool_cleanup,
+ scratch_pool, scratch_pool));
- if (!have_row)
- {
- return svn_error_createf(SVN_ERR_WC_DB_ERROR, svn_sqlite__reset(stmt),
- _("The pristine text with checksum '%s' was "
- "not found"),
- svn_checksum_to_cstring_display(
- *sha1_checksum, scratch_pool));
- }
- SVN_ERR(svn_sqlite__column_checksum(md5_checksum, stmt, 0,
- scratch_pool));
- SVN_ERR(svn_sqlite__reset(stmt));
+ SVN_ERR(get_pristine_fname(&src_abspath, src_wcroot->abspath, checksum,
+ scratch_pool, scratch_pool));
- /* We have read locks in both working copies, so we can safely copy the
- file to the temp location of the destination working copy */
- {
- svn_stream_t *src_stream;
- svn_stream_t *dst_stream;
- const char *tmp_abspath;
- const char *src_abspath;
-
- SVN_ERR(svn_stream_open_unique(&dst_stream, &tmp_abspath,
- pristine_get_tempdir(dst_wcroot,
- scratch_pool,
- scratch_pool),
- svn_io_file_del_on_pool_cleanup,
+ SVN_ERR(svn_stream_open_readonly(&src_stream, src_abspath,
scratch_pool, scratch_pool));
- SVN_ERR(get_pristine_fname(&src_abspath, src_wcroot->abspath,
- *sha1_checksum,
- scratch_pool, scratch_pool));
+ /* ### Should we verify the SHA1 or MD5 here, or is that too expensive? */
+ SVN_ERR(svn_stream_copy3(src_stream, dst_stream,
+ cancel_func, cancel_baton,
+ scratch_pool));
- SVN_ERR(svn_stream_open_readonly(&src_stream, src_abspath,
- scratch_pool, scratch_pool));
+ SVN_ERR(get_pristine_fname(&pristine_abspath, dst_wcroot->abspath, checksum,
+ scratch_pool, scratch_pool));
- /* ### Should we verify the SHA1 or MD5 here, or is that too expensive? */
- SVN_ERR(svn_stream_copy3(src_stream, dst_stream,
- cancel_func, cancel_baton,
- scratch_pool));
+ /* Move the file to its target location. (If it is already there, it is
+ * an orphan file and it doesn't matter if we overwrite it.) */
+ err = svn_io_file_rename(tmp_abspath, pristine_abspath, scratch_pool);
- /* And now set the right information to install once we leave the
- src transaction */
+ /* Maybe the directory doesn't exist yet? */
+ if (err && APR_STATUS_IS_ENOENT(err->apr_err))
+ {
+ svn_error_t *err2;
- SVN_ERR(get_pristine_fname(pristine_abspath,
- dst_wcroot->abspath,
- *sha1_checksum,
- scratch_pool, scratch_pool));
- *tempfile_abspath = tmp_abspath;
- }
+ err2 = svn_io_dir_make(svn_dirent_dirname(pristine_abspath,
+ scratch_pool),
+ APR_OS_DEFAULT, scratch_pool);
+
+ if (err2)
+ /* Creating directory didn't work: Return all errors */
+ return svn_error_trace(svn_error_compose_create(err, err2));
+ else
+ /* We could create a directory: retry install */
+ svn_error_clear(err);
+
+ SVN_ERR(svn_io_file_rename(tmp_abspath, pristine_abspath, scratch_pool));
+ }
+ else
+ SVN_ERR(err);
+
return SVN_NO_ERROR;
}
@@ -619,32 +586,53 @@
We have a lock on DST_WCROOT.
*/
static svn_error_t *
-pristine_transfer_txn1(svn_wc__db_wcroot_t *src_wcroot,
+pristine_transfer_txn(svn_wc__db_wcroot_t *src_wcroot,
svn_wc__db_wcroot_t *dst_wcroot,
const char *src_relpath,
svn_cancel_func_t cancel_func,
void *cancel_baton,
apr_pool_t *scratch_pool)
{
- const char *tempfile_abspath;
- const char *pristine_abspath;
- const svn_checksum_t *sha1_checksum;
- const svn_checksum_t *md5_checksum;
+ svn_sqlite__stmt_t *stmt;
+ svn_boolean_t got_row;
+ apr_pool_t *iterpool = svn_pool_create(scratch_pool);
- /* Get all the info within a src wcroot lock */
- SVN_WC__DB_WITH_TXN(
- pristine_transfer_txn2(&tempfile_abspath, &pristine_abspath,
- &sha1_checksum, &md5_checksum,
- src_wcroot, dst_wcroot, src_relpath,
- cancel_func, cancel_baton, scratch_pool),
- src_wcroot);
+ SVN_ERR(svn_sqlite__get_statement(&stmt, src_wcroot->sdb,
+ STMT_SELECT_COPY_PRISTINES));
+ SVN_ERR(svn_sqlite__bindf(stmt, "is", src_wcroot->wc_id, src_relpath));
- /* And do the final install, while we still have the dst lock */
- if (tempfile_abspath)
- SVN_ERR(pristine_install_txn(dst_wcroot->sdb,
- tempfile_abspath, pristine_abspath,
- sha1_checksum, md5_checksum,
- scratch_pool));
+ /* This obtains an sqlite read lock on src_wcroot */
+ SVN_ERR(svn_sqlite__step(&got_row, stmt));
+
+ while (got_row)
+ {
+ const svn_checksum_t *checksum;
+ const svn_checksum_t *md5_checksum;
+ apr_int64_t size;
+ svn_error_t *err;
+
+ svn_pool_clear(iterpool);
+
+ SVN_ERR(svn_sqlite__column_checksum(&checksum, stmt, 0, iterpool));
+ SVN_ERR(svn_sqlite__column_checksum(&md5_checksum, stmt, 1, iterpool));
+ size = svn_sqlite__column_int64(stmt, 2);
+
+ err = maybe_transfer_one_pristine(src_wcroot, dst_wcroot,
+ checksum, md5_checksum, size,
+ cancel_func, cancel_baton,
+ iterpool);
+
+ if (err)
+ return svn_error_trace(svn_error_compose_create(
+ err,
+ svn_sqlite__reset(stmt)));
+
+ SVN_ERR(svn_sqlite__step(&got_row, stmt));
+ }
+ SVN_ERR(svn_sqlite__reset(stmt));
+
+ svn_pool_destroy(iterpool);
+
return SVN_NO_ERROR;
}
@@ -675,8 +663,8 @@
}
SVN_WC__DB_WITH_TXN(
- pristine_transfer_txn1(src_wcroot, dst_wcroot, src_relpath,
- cancel_func, cancel_baton, scratch_pool),
+ pristine_transfer_txn(src_wcroot, dst_wcroot, src_relpath,
+ cancel_func, cancel_baton, scratch_pool),
dst_wcroot);
return SVN_NO_ERROR;
diff --git a/subversion/libsvn_wc/wc_db_private.h b/subversion/libsvn_wc/wc_db_private.h
index 32d8d76..97c4e45 100644
--- a/subversion/libsvn_wc/wc_db_private.h
+++ b/subversion/libsvn_wc/wc_db_private.h
@@ -367,4 +367,14 @@
int op_depth,
apr_pool_t *scratch_pool);
+/* Do a post-drive revision bump for the moved-away destination for
+ any move sources under LOCAL_RELPATH. This is called from within
+ the revision bump transaction after the tree at LOCAL_RELPATH has
+ been bumped. */
+svn_error_t *
+svn_wc__db_bump_moved_away(svn_wc__db_wcroot_t *wcroot,
+ const char *local_relpath,
+ svn_depth_t depth,
+ apr_pool_t *scratch_pool);
+
#endif /* WC_DB_PRIVATE_H */
diff --git a/subversion/libsvn_wc/wc_db_update_move.c b/subversion/libsvn_wc/wc_db_update_move.c
index 7874a46..4a36db8 100644
--- a/subversion/libsvn_wc/wc_db_update_move.c
+++ b/subversion/libsvn_wc/wc_db_update_move.c
@@ -90,6 +90,7 @@
#include "wc-queries.h"
#include "conflicts.h"
#include "workqueue.h"
+#include "token-map.h"
/*
* Receiver code.
@@ -109,6 +110,11 @@
svn_wc__db_t *db;
svn_wc__db_wcroot_t *wcroot;
const char *move_root_dst_relpath;
+
+ /* The most recent conflict raised during this drive. We rely on the
+ non-Ev2, depth-first, drive for this to make sense. */
+ const char *conflict_root_relpath;
+
svn_wc_conflict_version_t *old_version;
svn_wc_conflict_version_t *new_version;
svn_wc_notify_func2_t notify_func;
@@ -116,13 +122,73 @@
apr_pool_t *result_pool;
};
-/* If LOCAL_RELPATH is shadowed then raise a tree-conflict on the root
- of the obstruction if such a tree-conflict does not already exist.
+static svn_error_t *
+mark_tree_conflict(struct tc_editor_baton *b,
+ const char *local_relpath,
+ svn_node_kind_t old_kind,
+ svn_node_kind_t new_kind,
+ svn_wc_conflict_reason_t reason,
+ svn_wc_conflict_action_t action,
+ apr_pool_t *scratch_pool)
+{
+ const char *repos_relpath;
+ svn_skel_t *conflict = svn_wc__conflict_skel_create(scratch_pool);
+ svn_wc_conflict_version_t *old_version, *new_version;
- KIND is the node kind of ... ### what?
+ b->conflict_root_relpath = apr_pstrdup(b->result_pool, local_relpath);
- Set *IS_CONFLICTED ... ### if/iff what?
- */
+ SVN_ERR(svn_wc__conflict_skel_add_tree_conflict(
+ conflict, NULL,
+ svn_dirent_join(b->wcroot->abspath, local_relpath,
+ scratch_pool),
+ reason,
+ action,
+ scratch_pool,
+ scratch_pool));
+
+ if (reason != svn_wc_conflict_reason_unversioned)
+ {
+ repos_relpath = svn_relpath_join(b->old_version->path_in_repos,
+ svn_relpath_skip_ancestor(b->move_root_dst_relpath,
+ local_relpath),
+ scratch_pool);
+ old_version = svn_wc_conflict_version_create2(b->old_version->repos_url,
+ b->old_version->repos_uuid,
+ repos_relpath,
+ b->old_version->peg_rev,
+ old_kind,
+ scratch_pool);
+ }
+ else
+ old_version = NULL;
+
+ repos_relpath = svn_relpath_join(b->new_version->path_in_repos,
+ svn_relpath_skip_ancestor(b->move_root_dst_relpath,
+ local_relpath),
+ scratch_pool);
+ new_version = svn_wc_conflict_version_create2(b->new_version->repos_url,
+ b->new_version->repos_uuid,
+ repos_relpath,
+ b->new_version->peg_rev,
+ new_kind,
+ scratch_pool);
+
+ /* What about switch? */
+ SVN_ERR(svn_wc__conflict_skel_set_op_update(conflict,
+ old_version, new_version,
+ scratch_pool, scratch_pool));
+ SVN_ERR(svn_wc__db_mark_conflict_internal(b->wcroot, local_relpath,
+ conflict, scratch_pool));
+
+ return SVN_NO_ERROR;
+}
+
+/* If LOCAL_RELPATH is a child of the most recently raised
+ tree-conflict or is shadowed then set *IS_CONFLICTED to TRUE and
+ raise a tree-conflict on the root of the obstruction if such a
+ tree-conflict does not already exist. KIND is the kind of the
+ incoming LOCAL_RELPATH. This relies on the non-Ev2, depth-first,
+ drive. */
static svn_error_t *
check_tree_conflict(svn_boolean_t *is_conflicted,
struct tc_editor_baton *b,
@@ -134,10 +200,20 @@
svn_boolean_t have_row;
int dst_op_depth = relpath_depth(b->move_root_dst_relpath);
int op_depth;
+ svn_node_kind_t old_kind;
const char *conflict_root_relpath = local_relpath;
const char *moved_to_relpath;
svn_skel_t *conflict;
- svn_wc_conflict_version_t *version;
+
+ if (b->conflict_root_relpath)
+ {
+ if (svn_relpath_skip_ancestor(b->conflict_root_relpath, local_relpath))
+ {
+ *is_conflicted = TRUE;
+ return SVN_NO_ERROR;
+ }
+ b->conflict_root_relpath = NULL;
+ }
SVN_ERR(svn_sqlite__get_statement(&stmt, b->wcroot->sdb,
STMT_SELECT_LOWEST_WORKING_NODE));
@@ -145,7 +221,11 @@
dst_op_depth));
SVN_ERR(svn_sqlite__step(&have_row, stmt));
if (have_row)
- op_depth = svn_sqlite__column_int(stmt, 0);
+ {
+ op_depth = svn_sqlite__column_int(stmt, 0);
+ old_kind = svn__node_kind_from_kind(svn_sqlite__column_token(stmt, 2,
+ kind_map));
+ }
SVN_ERR(svn_sqlite__reset(stmt));
if (!have_row)
@@ -157,8 +237,11 @@
*is_conflicted = TRUE;
while (relpath_depth(conflict_root_relpath) > op_depth)
- conflict_root_relpath = svn_relpath_dirname(conflict_root_relpath,
- scratch_pool);
+ {
+ conflict_root_relpath = svn_relpath_dirname(conflict_root_relpath,
+ scratch_pool);
+ old_kind = svn_node_dir;
+ }
SVN_ERR(svn_wc__db_read_conflict_internal(&conflict, b->wcroot,
conflict_root_relpath,
@@ -173,67 +256,12 @@
b->wcroot, conflict_root_relpath,
scratch_pool, scratch_pool));
- conflict = svn_wc__conflict_skel_create(scratch_pool);
- SVN_ERR(svn_wc__conflict_skel_add_tree_conflict(
- conflict, NULL,
- svn_dirent_join(b->wcroot->abspath, conflict_root_relpath,
- scratch_pool),
- (moved_to_relpath
- ? svn_wc_conflict_reason_moved_away
- : svn_wc_conflict_reason_deleted),
- svn_wc_conflict_action_edit,
- scratch_pool,
- scratch_pool));
-
- version = svn_wc_conflict_version_create2(b->old_version->repos_url,
- b->old_version->repos_uuid,
- local_relpath /* ### need *repos* relpath */,
- b->old_version->peg_rev,
- kind /* ### need *old* kind for this node */,
- scratch_pool);
-
- /* What about switch? */
- SVN_ERR(svn_wc__conflict_skel_set_op_update(conflict, version, NULL /* ### derive from b->new_version & new kind? */,
- scratch_pool, scratch_pool));
- SVN_ERR(svn_wc__db_mark_conflict_internal(b->wcroot, conflict_root_relpath,
- conflict, scratch_pool));
-
- return SVN_NO_ERROR;
-}
-
-/* Mark a unversioned-add tree-conflict on RELPATH. */
-static svn_error_t *
-mark_unversioned_add_conflict(struct tc_editor_baton *b,
- const char *relpath,
- svn_node_kind_t kind,
- apr_pool_t *scratch_pool)
-{
- svn_skel_t *conflict = svn_wc__conflict_skel_create(scratch_pool);
- svn_wc_conflict_version_t *version;
-
- SVN_ERR(svn_wc__conflict_skel_add_tree_conflict(
- conflict, NULL,
- svn_dirent_join(b->wcroot->abspath, relpath,
- scratch_pool),
- svn_wc_conflict_reason_unversioned,
- svn_wc_conflict_action_add,
- scratch_pool,
- scratch_pool));
-
- version = svn_wc_conflict_version_create2(b->old_version->repos_url,
- b->old_version->repos_uuid,
- relpath /* ### need *repos* relpath */,
- b->old_version->peg_rev,
- kind /* ### need *old* kind for this node */,
- scratch_pool);
-
- /* ### How about switch? */
- SVN_ERR(svn_wc__conflict_skel_set_op_update(conflict, version,
- NULL /* ### derive from b->new_version & new kind? */,
- scratch_pool, scratch_pool));
- SVN_ERR(svn_wc__db_mark_conflict_internal(b->wcroot, relpath,
- conflict, scratch_pool));
-
+ SVN_ERR(mark_tree_conflict(b, conflict_root_relpath, old_kind, kind,
+ (moved_to_relpath
+ ? svn_wc_conflict_reason_moved_away
+ : svn_wc_conflict_reason_deleted),
+ svn_wc_conflict_action_edit,
+ scratch_pool));
return SVN_NO_ERROR;
}
@@ -271,8 +299,10 @@
{
case svn_node_file:
default:
- SVN_ERR(mark_unversioned_add_conflict(b, relpath, svn_node_dir,
- scratch_pool));
+ SVN_ERR(mark_tree_conflict(b, relpath, kind, svn_node_dir,
+ svn_wc_conflict_reason_unversioned,
+ svn_wc_conflict_action_add,
+ scratch_pool));
break;
case svn_node_none:
@@ -322,8 +352,10 @@
if (kind != svn_node_none)
{
- SVN_ERR(mark_unversioned_add_conflict(b, relpath, svn_node_file,
- scratch_pool));
+ SVN_ERR(mark_tree_conflict(b, relpath, kind, svn_node_file,
+ svn_wc_conflict_reason_unversioned,
+ svn_wc_conflict_action_add,
+ scratch_pool));
return SVN_NO_ERROR;
}
@@ -718,8 +750,6 @@
new_version.checksum = new_checksum ? new_checksum : old_version.checksum;
new_version.props = new_props ? new_props : old_version.props;
- /* ### TODO update revision etc. in NODES table */
-
/* Update file and prop contents if the update has changed them. */
if (!svn_checksum_match(new_checksum, old_version.checksum)
/* ### || props have changed */)
@@ -1004,6 +1034,8 @@
SVN_ERR(svn_wc__db_read_pristine_props(&new_props, db, src_abspath,
scratch_pool, scratch_pool));
+ /* This is a non-Ev2, depth-first, drive that calls add/alter on all
+ directories. */
if (add)
SVN_ERR(svn_editor_add_directory(tc_editor, dst_relpath,
new_children, new_props,
@@ -1108,7 +1140,6 @@
svn_pool_clear(iterpool);
child_dst_relpath = svn_relpath_join(dst_relpath, dst_name, iterpool);
- /* FIXME: editor API violation: missing svn_editor_alter_directory. */
SVN_ERR(svn_editor_delete(tc_editor, child_dst_relpath,
move_root_dst_revision));
}
@@ -1359,3 +1390,93 @@
return SVN_NO_ERROR;
}
+
+static svn_error_t *
+bump_moved_away(svn_wc__db_wcroot_t *wcroot,
+ const char *local_relpath,
+ svn_depth_t depth,
+ int op_depth,
+ apr_pool_t *scratch_pool)
+{
+ svn_sqlite__stmt_t *stmt;
+ svn_boolean_t have_row;
+ apr_pool_t *iterpool;
+
+ iterpool = svn_pool_create(scratch_pool);
+
+ SVN_ERR(svn_sqlite__get_statement(&stmt, wcroot->sdb,
+ STMT_SELECT_MOVED_PAIR3));
+ SVN_ERR(svn_sqlite__bindf(stmt, "isd", wcroot->wc_id, local_relpath,
+ op_depth));
+ SVN_ERR(svn_sqlite__step(&have_row, stmt));
+ while(have_row)
+ {
+ svn_sqlite__stmt_t *stmt2;
+ const char *src_relpath, *dst_relpath;
+ int src_op_depth = svn_sqlite__column_int(stmt, 2);
+ svn_error_t *err;
+ svn_skel_t *conflict;
+
+ svn_pool_clear(iterpool);
+
+ src_relpath = svn_sqlite__column_text(stmt, 0, iterpool);
+ dst_relpath = svn_sqlite__column_text(stmt, 1, iterpool);
+
+ err = svn_sqlite__get_statement(&stmt2, wcroot->sdb,
+ STMT_HAS_LAYER_BETWEEN);
+ if (!err)
+ err = svn_sqlite__bindf(stmt2, "isdd", wcroot->wc_id, local_relpath,
+ op_depth, src_op_depth);
+ if (!err)
+ err = svn_sqlite__step(&have_row, stmt2);
+ if (!err)
+ err = svn_sqlite__reset(stmt2);
+ if (!err && !have_row)
+ {
+ const char *src_root_relpath = src_relpath;
+
+ while (relpath_depth(src_root_relpath) > src_op_depth)
+ src_root_relpath = svn_relpath_dirname(src_root_relpath, iterpool);
+
+ err = svn_wc__db_read_conflict_internal(&conflict, wcroot,
+ src_root_relpath,
+ iterpool, iterpool);
+ /* ### TODO: check this is the right sort of tree-conflict? */
+ if (!err && !conflict)
+ {
+ /* ### TODO: verify moved_here? */
+ err = replace_moved_layer(src_relpath, dst_relpath, op_depth,
+ wcroot, iterpool);
+
+ if (!err)
+ err = bump_moved_away(wcroot, dst_relpath, depth,
+ relpath_depth(dst_relpath), iterpool);
+ }
+ }
+
+ if (err)
+ return svn_error_compose_create(err, svn_sqlite__reset(stmt));
+
+ SVN_ERR(svn_sqlite__step(&have_row, stmt));
+ }
+ SVN_ERR(svn_sqlite__reset(stmt));
+
+ svn_pool_destroy(iterpool);
+
+ return SVN_NO_ERROR;
+}
+
+svn_error_t *
+svn_wc__db_bump_moved_away(svn_wc__db_wcroot_t *wcroot,
+ const char *local_relpath,
+ svn_depth_t depth,
+ apr_pool_t *scratch_pool)
+{
+ /* ### TODO: raise tree-conflicts? */
+ if (depth != svn_depth_infinity)
+ return SVN_NO_ERROR;
+
+ SVN_ERR(bump_moved_away(wcroot, local_relpath, depth, 0, scratch_pool));
+
+ return SVN_NO_ERROR;
+}
diff --git a/subversion/libsvn_wc/wc_db_util.c b/subversion/libsvn_wc/wc_db_util.c
index a6616e4..39dd034 100644
--- a/subversion/libsvn_wc/wc_db_util.c
+++ b/subversion/libsvn_wc/wc_db_util.c
@@ -136,6 +136,22 @@
svn_dirent_local_style(sdb_abspath,
scratch_pool));
}
+#ifndef WIN32
+ else
+ {
+ apr_file_t *f;
+
+ /* A standard SQLite build creates a DB with mode 644 ^ !umask
+ which means the file doesn't have group/world write access
+ even when umask allows it. By ensuring the file exists before
+ SQLite gets involved we give it the permissions allowed by
+ umask. */
+ SVN_ERR(svn_io_file_open(&f, sdb_abspath,
+ (APR_READ | APR_WRITE | APR_CREATE),
+ APR_OS_DEFAULT, scratch_pool));
+ SVN_ERR(svn_io_file_close(f, scratch_pool));
+ }
+#endif
SVN_ERR(svn_sqlite__open(sdb, sdb_abspath, smode,
my_statements ? my_statements : statements,
diff --git a/subversion/mod_dav_svn/deadprops.c b/subversion/mod_dav_svn/deadprops.c
index 5beb102..ff7a144 100644
--- a/subversion/mod_dav_svn/deadprops.c
+++ b/subversion/mod_dav_svn/deadprops.c
@@ -136,7 +136,7 @@
propname, db->p);
else
serr = svn_repos_fs_revision_prop(pvalue,
- db->resource->info-> repos->repos,
+ db->resource->info->repos->repos,
db->resource->info->root.rev,
propname, db->authz_read_func,
db->authz_read_baton, db->p);
diff --git a/subversion/mod_dav_svn/reports/replay.c b/subversion/mod_dav_svn/reports/replay.c
index 2873346..0e47d9a 100644
--- a/subversion/mod_dav_svn/reports/replay.c
+++ b/subversion/mod_dav_svn/reports/replay.c
@@ -418,11 +418,11 @@
{
dav_error *derr = NULL;
svn_revnum_t low_water_mark = SVN_INVALID_REVNUM;
- svn_revnum_t rev = SVN_INVALID_REVNUM;
+ svn_revnum_t rev;
const svn_delta_editor_t *editor;
svn_boolean_t send_deltas = TRUE;
dav_svn__authz_read_baton arb;
- const char *base_dir = resource->info->repos_path;
+ const char *base_dir;
apr_bucket_brigade *bb;
apr_xml_elem *child;
svn_fs_root_t *root;
@@ -430,10 +430,27 @@
void *edit_baton;
int ns;
- /* The request won't have a repos_path if it's for the root. */
- if (! base_dir)
- base_dir = "";
+ /* In Subversion 1.8, we allowed this REPORT to be issue against a
+ revision resource. Doing so means the REV is part of the request
+ URL, and BASE_DIR is embedded in the request body.
+ The old-school (and incorrect, see issue #4287 --
+ http://subversion.tigris.org/issues/show_bug.cgi?id=4287) way was
+ to REPORT on the public URL of the BASE_DIR and embed the REV in
+ the report body.
+ */
+ if (resource->baselined
+ && (resource->type == DAV_RESOURCE_TYPE_VERSION))
+ {
+ rev = resource->info->root.rev;
+ base_dir = NULL;
+ }
+ else
+ {
+ rev = SVN_INVALID_REVNUM;
+ base_dir = resource->info->repos_path;
+ }
+
arb.r = resource->info->r;
arb.repos = resource->info->repos;
@@ -455,9 +472,17 @@
if (strcmp(child->name, "revision") == 0)
{
+ if (SVN_IS_VALID_REVNUM(rev))
+ {
+ /* Uh... we already have a revision to use, either
+ because this tag is non-unique or because the
+ request was submitted against a revision-bearing
+ resource URL. Either way, something's not
+ right. */
+ return malformed_element_error("revision", resource->pool);
+ }
+
cdata = dav_xml_get_cdata(child, resource->pool, 1);
- if (! cdata)
- return malformed_element_error("revision", resource->pool);
rev = SVN_STR_TO_REV(cdata);
}
else if (strcmp(child->name, "low-water-mark") == 0)
@@ -481,7 +506,16 @@
svn_error_clear(err);
return malformed_element_error("send-deltas", resource->pool);
}
- send_deltas = parsed_val ? TRUE : FALSE;
+ send_deltas = parsed_val != 0;
+ }
+ else if (strcmp(child->name, "include-path") == 0)
+ {
+ cdata = dav_xml_get_cdata(child, resource->pool, 1);
+ if ((derr = dav_svn__test_canonical(cdata, resource->pool)))
+ return derr;
+
+ /* Force BASE_DIR to be a relative path, not an fspath. */
+ base_dir = svn_relpath_canonicalize(cdata, resource->pool);
}
}
}
@@ -498,6 +532,9 @@
"Request was missing the low-water-mark argument.",
SVN_DAV_ERROR_NAMESPACE, SVN_DAV_ERROR_TAG);
+ if (! base_dir)
+ base_dir = "";
+
bb = apr_brigade_create(resource->pool, output->c->bucket_alloc);
if ((err = svn_fs_revision_root(&root, resource->info->repos->fs, rev,
diff --git a/subversion/mod_dav_svn/version.c b/subversion/mod_dav_svn/version.c
index 6a6b3aa..54c85f4 100644
--- a/subversion/mod_dav_svn/version.c
+++ b/subversion/mod_dav_svn/version.c
@@ -266,6 +266,14 @@
{ "create-txn-with-props", { 1, 8, 0, "" } },
};
+ /* Add the header which indicates that this server can handle
+ replay REPORTs submitted against an HTTP v2 revision resource. */
+ apr_table_addn(r->headers_out, "DAV",
+ SVN_DAV_NS_DAV_SVN_REPLAY_REV_RESOURCE);
+
+ /* Add a bunch of HTTP v2 headers which carry resource and
+ resource stub URLs that the client can use to naively build
+ addressable resources. */
apr_table_set(r->headers_out, SVN_DAV_ROOT_URI_HEADER, repos_root_uri);
apr_table_set(r->headers_out, SVN_DAV_ME_RESOURCE_HEADER,
apr_pstrcat(resource->pool, repos_root_uri, "/",
diff --git a/subversion/po/de.po b/subversion/po/de.po
index 859791f..72d47cb 100644
--- a/subversion/po/de.po
+++ b/subversion/po/de.po
@@ -94,7 +94,7 @@
msgstr ""
"Project-Id-Version: subversion 1.7\n"
"Report-Msgid-Bugs-To: dev@subversion.apache.org\n"
-"POT-Creation-Date: 2010-11-12 08:49-0600\n"
+"POT-Creation-Date: 2013-01-11 20:07+0000\n"
"PO-Revision-Date: 2009-03-18 09:53+0100\n"
"Last-Translator: Subversion Developers <dev@subversion.tigris.org>\n"
"Language-Team: German <dev@subversion.tigris.org>\n"
@@ -107,80 +107,80 @@
#. Constructing nice error messages for roots.
#. Build an SVN_ERR_FS_NOT_FOUND error, with a detailed error text,
#. for PATH in ROOT. ROOT is of type svn_fs_root_t *.
-#: ../include/private/svn_fs_util.h:68
+#: ../include/private/svn_fs_util.h:83
#, c-format
msgid "File not found: transaction '%s', path '%s'"
msgstr "Datei nicht gefunden: Transaktion »%s«, Pfad »%s«"
-#: ../include/private/svn_fs_util.h:73
+#: ../include/private/svn_fs_util.h:88
#, c-format
msgid "File not found: revision %ld, path '%s'"
msgstr "Datei nicht gefunden: Revision %ld, Pfad »%s«"
#. Build a detailed `file already exists' message for PATH in ROOT.
#. ROOT is of type svn_fs_root_t *.
-#: ../include/private/svn_fs_util.h:84
+#: ../include/private/svn_fs_util.h:99
#, c-format
msgid "File already exists: filesystem '%s', transaction '%s', path '%s'"
msgstr "Datei existiert bereits: Dateisystem »%s«, Transaktion »%s«, Pfad »%s«"
-#: ../include/private/svn_fs_util.h:89
+#: ../include/private/svn_fs_util.h:104
#, c-format
msgid "File already exists: filesystem '%s', revision %ld, path '%s'"
msgstr "Datei existiert bereits: Dateisystem »%s«, Revision %ld, Pfad »%s«"
#. ROOT is of type svn_fs_root_t *.
-#: ../include/private/svn_fs_util.h:97
+#: ../include/private/svn_fs_util.h:112
msgid "Root object must be a transaction root"
msgstr "Basisobjekt muss eine Transaktionsbasis sein"
#. SVN_FS__ERR_NOT_MUTABLE: the caller attempted to change a node
#. outside of a transaction. FS is of type "svn_fs_t *".
-#: ../include/private/svn_fs_util.h:104
+#: ../include/private/svn_fs_util.h:119
#, c-format
msgid "File is not mutable: filesystem '%s', revision %ld, path '%s'"
msgstr "Datei ist nicht veränderlich: Dateisystem »%s«, Revision %ld, Pfad »%s«"
-#. FS is of type "svn fs_t *".
-#: ../include/private/svn_fs_util.h:111
+#. FS is of type "svn_fs_t *".
+#: ../include/private/svn_fs_util.h:126
#, c-format
msgid "'%s' is not a directory in filesystem '%s'"
msgstr "»%s« ist kein Verzeichnis im Dateisystem »%s«"
-#. FS is of type "svn fs_t *".
-#: ../include/private/svn_fs_util.h:118
+#. FS is of type "svn_fs_t *".
+#: ../include/private/svn_fs_util.h:133
#, c-format
msgid "'%s' is not a file in filesystem '%s'"
msgstr "»%s« ist im Dateisystem »%s« keine Datei"
-#. FS is of type "svn fs_t *", LOCK is of type "svn_lock_t *".
-#: ../include/private/svn_fs_util.h:126
+#. FS is of type "svn_fs_t *", LOCK is of type "svn_lock_t *".
+#: ../include/private/svn_fs_util.h:141
#, c-format
msgid "Path '%s' is already locked by user '%s' in filesystem '%s'"
msgstr "Pfad »%s« ist bereits vom Benutzer »%s« im Dateisystem »%s« gesperrt"
-#. FS is of type "svn fs_t *".
-#: ../include/private/svn_fs_util.h:133
+#. FS is of type "svn_fs_t *".
+#: ../include/private/svn_fs_util.h:148
#, c-format
msgid "No lock on path '%s' in filesystem '%s'"
msgstr "Keine Sperre für Pfad »%s« im Dateisystem »%s«"
-#. FS is of type "svn fs_t *".
-#: ../include/private/svn_fs_util.h:140
+#. FS is of type "svn_fs_t *".
+#: ../include/private/svn_fs_util.h:155
#, c-format
msgid "Lock has expired: lock-token '%s' in filesystem '%s'"
msgstr "Sperre lief aus: Sperrmarke »%s« in Dateisystem »%s«"
-#. FS is of type "svn fs_t *".
-#: ../include/private/svn_fs_util.h:147
+#. FS is of type "svn_fs_t *".
+#: ../include/private/svn_fs_util.h:162
#, c-format
msgid "No username is currently associated with filesystem '%s'"
msgstr "Zurzeit ist kein Benutzername mit dem Dateisystem »%s« verbunden"
#. SVN_FS__ERR_LOCK_OWNER_MISMATCH: trying to use a lock whose
#. LOCK_OWNER doesn't match the USERNAME associated with FS.
-#. FS is of type "svn fs_t *".
-#: ../include/private/svn_fs_util.h:156
+#. FS is of type "svn_fs_t *".
+#: ../include/private/svn_fs_util.h:171
#, c-format
msgid "User '%s' is trying to use a lock owned by '%s' in filesystem '%s'"
msgstr "Der Benutzer »%s« versucht, eine von »%s« besessene Sperre im Dateisystem »%s« zu benutzen"
@@ -221,7 +221,7 @@
msgid "Bogus UUID"
msgstr "Ungültige UUID"
-#: ../include/svn_error_codes.h:203 ../include/svn_error_codes.h:887
+#: ../include/svn_error_codes.h:203 ../include/svn_error_codes.h:935
msgid "Invalid configuration value"
msgstr "Ungültiger Konfigurationswert"
@@ -241,1072 +241,1161 @@
msgid "Unknown string value of token"
msgstr "Unbekannter Zeichenkettenwert für Sperrmarke"
-#: ../include/svn_error_codes.h:226
+#: ../include/svn_error_codes.h:225
+#, fuzzy
+msgid "Invalid changelist name"
+msgstr "Ungültiger Änderungstyp"
+
+#: ../include/svn_error_codes.h:230
+#, fuzzy
+msgid "Invalid atomic"
+msgstr "Ungültige Sperre"
+
+#: ../include/svn_error_codes.h:236
msgid "No such XML tag attribute"
msgstr "Ein solches Attribut des XML-Tags existiert nicht"
-#: ../include/svn_error_codes.h:230
+#: ../include/svn_error_codes.h:240
msgid "<delta-pkg> is missing ancestry"
msgstr "<delta-pkg> fehlt die Herkunft"
-#: ../include/svn_error_codes.h:234
+#: ../include/svn_error_codes.h:244
msgid "Unrecognized binary data encoding; can't decode"
msgstr "Unbekannte binäre Datenkodierung, kann nicht entschlüsseln"
-#: ../include/svn_error_codes.h:238
+#: ../include/svn_error_codes.h:248
msgid "XML data was not well-formed"
msgstr "XML Daten nicht wohlgeformt"
-#: ../include/svn_error_codes.h:242
+#: ../include/svn_error_codes.h:252
msgid "Data cannot be safely XML-escaped"
msgstr "Daten können nicht sicher in XML eingebettet werden"
-#: ../include/svn_error_codes.h:248
+#: ../include/svn_error_codes.h:258
msgid "Inconsistent line ending style"
msgstr "Stil für Zeilenende ist inkonsistent"
-#: ../include/svn_error_codes.h:252
+#: ../include/svn_error_codes.h:262
msgid "Unrecognized line ending style"
msgstr "Stil für Zeilenende nicht erkannt"
-#: ../include/svn_error_codes.h:257
+#: ../include/svn_error_codes.h:267
msgid "Line endings other than expected"
msgstr "Zeilenende anders als erwartet"
-#: ../include/svn_error_codes.h:261
+#: ../include/svn_error_codes.h:271
msgid "Ran out of unique names"
msgstr "Eindeutige Namen ausgegangen"
-#: ../include/svn_error_codes.h:266
+#: ../include/svn_error_codes.h:276
msgid "Framing error in pipe protocol"
msgstr "Rahmenfehler im »Pipe«-Protokoll"
-#: ../include/svn_error_codes.h:271
+#: ../include/svn_error_codes.h:281
msgid "Read error in pipe"
msgstr "Lesefehler in »Pipe«"
-#: ../include/svn_error_codes.h:275 ../libsvn_subr/cmdline.c:341
-#: ../libsvn_subr/cmdline.c:358 ../svn/util.c:923 ../svnlook/main.c:1802
+#: ../include/svn_error_codes.h:285 ../libsvn_subr/cmdline.c:359
+#: ../libsvn_subr/cmdline.c:382 ../svn/util.c:569 ../svnlook/svnlook.c:1986
#, c-format
msgid "Write error"
msgstr "Schreibfehler"
-#: ../include/svn_error_codes.h:281
+#: ../include/svn_error_codes.h:290
+#, fuzzy
+msgid "Write error in pipe"
+msgstr "Lesefehler in »Pipe«"
+
+#: ../include/svn_error_codes.h:296
msgid "Unexpected EOF on stream"
msgstr "Unerwartetes EOF im Datenstrom"
-#: ../include/svn_error_codes.h:285
+#: ../include/svn_error_codes.h:300
msgid "Malformed stream data"
msgstr "Fehlerhafter Datenstrom"
-#: ../include/svn_error_codes.h:289
+#: ../include/svn_error_codes.h:304
msgid "Unrecognized stream data"
msgstr "Unbekannter Datenstrom"
-#: ../include/svn_error_codes.h:294
+#: ../include/svn_error_codes.h:309
msgid "Stream doesn't support seeking"
msgstr "Datenstrom unterstützt das Setzen der Position nicht"
-#: ../include/svn_error_codes.h:300
+#: ../include/svn_error_codes.h:315
msgid "Unknown svn_node_kind"
msgstr "Unbekannter svn_node_kind"
-#: ../include/svn_error_codes.h:304
+#: ../include/svn_error_codes.h:319
msgid "Unexpected node kind found"
msgstr "Unerwarteter Knotentyp gefunden"
-#: ../include/svn_error_codes.h:310
+#: ../include/svn_error_codes.h:325
msgid "Can't find an entry"
msgstr "Kann keinen Eintrag finden"
-#: ../include/svn_error_codes.h:316
+#: ../include/svn_error_codes.h:331
msgid "Entry already exists"
msgstr "Eintrag existiert bereits"
-#: ../include/svn_error_codes.h:320
+#: ../include/svn_error_codes.h:335
msgid "Entry has no revision"
msgstr "Eintrag hat keine Revision"
-#: ../include/svn_error_codes.h:324
+#: ../include/svn_error_codes.h:339
msgid "Entry has no URL"
msgstr "Eintrag hat keine URL"
-#: ../include/svn_error_codes.h:328
+#: ../include/svn_error_codes.h:343
msgid "Entry has an invalid attribute"
msgstr "Eintrag hat ein ungültiges Attribut"
-#: ../include/svn_error_codes.h:332
+#: ../include/svn_error_codes.h:347
msgid "Can't create an entry for a forbidden name"
msgstr "Kann keinen Eintrag für einen verbotenen Namen erzeugen"
-#: ../include/svn_error_codes.h:338
+#: ../include/svn_error_codes.h:353
msgid "Obstructed update"
msgstr "Aktualisierung behindert"
-#: ../include/svn_error_codes.h:343
+#: ../include/svn_error_codes.h:358
msgid "Mismatch popping the WC unwind stack"
msgstr "Fehler beim Abrufen des Abwicklungsstapels der Arbeitskopie"
-#: ../include/svn_error_codes.h:348
+#: ../include/svn_error_codes.h:363
msgid "Attempt to pop empty WC unwind stack"
msgstr "Versuch, leeren Abwicklungsstapel abzurufen"
-#: ../include/svn_error_codes.h:353
+#: ../include/svn_error_codes.h:368
msgid "Attempt to unlock with non-empty unwind stack"
msgstr "Versuch, mit nicht leerem Abwicklungsstapel zu entsperren"
-#: ../include/svn_error_codes.h:357
+#: ../include/svn_error_codes.h:372
msgid "Attempted to lock an already-locked dir"
msgstr "Versuch, ein bereits gesperrtes Verzeichnis erneut zu sperren"
-#: ../include/svn_error_codes.h:361
+#: ../include/svn_error_codes.h:376
msgid "Working copy not locked; this is probably a bug, please report"
msgstr "Arbeitskopie nicht gesperrt. Dies ist wahrscheinlich ein Fehler. Bitte melden."
-#: ../include/svn_error_codes.h:366
+#: ../include/svn_error_codes.h:381
msgid "Invalid lock"
msgstr "Ungültige Sperre"
-#: ../include/svn_error_codes.h:373
+#: ../include/svn_error_codes.h:387 ../include/svn_error_codes.h:393
msgid "Path is not a working copy directory"
msgstr "Pfad ist kein Verzeichnis in einer Arbeitskopie"
-#: ../include/svn_error_codes.h:381
+#: ../include/svn_error_codes.h:397
msgid "Path is not a working copy file"
msgstr "Pfad ist keine Datei in einer Arbeitskopie"
-#: ../include/svn_error_codes.h:385
+#: ../include/svn_error_codes.h:401
msgid "Problem running log"
msgstr "Problem während der Ausführung des Logs"
-#: ../include/svn_error_codes.h:389
+#: ../include/svn_error_codes.h:405
msgid "Can't find a working copy path"
msgstr "Kann keinen Pfad einer Arbeitskopie finden"
-#: ../include/svn_error_codes.h:393
+#: ../include/svn_error_codes.h:409
msgid "Working copy is not up-to-date"
msgstr "Arbeitskopie ist nicht aktuell"
-#: ../include/svn_error_codes.h:397
+#: ../include/svn_error_codes.h:413
msgid "Left locally modified or unversioned files"
msgstr "Lokal veränderte oder nicht versionierte Dateien zurück gelassen"
-#: ../include/svn_error_codes.h:401
+#: ../include/svn_error_codes.h:417
msgid "Unmergeable scheduling requested on an entry"
msgstr "Nicht zusammenführbare Planungsanforderung für einen Eintrag"
-#: ../include/svn_error_codes.h:405
+#: ../include/svn_error_codes.h:421
msgid "Found a working copy path"
msgstr "Pfad einer Arbeitskopie gefunden"
-#: ../include/svn_error_codes.h:409
+#: ../include/svn_error_codes.h:425
msgid "A conflict in the working copy obstructs the current operation"
msgstr "Ein Konflikt in der Arbeitskopie behindert die aktuelle Operation"
-#: ../include/svn_error_codes.h:413
+#: ../include/svn_error_codes.h:429
msgid "Working copy is corrupt"
msgstr "Arbeitskopie ist beschädigt"
-#: ../include/svn_error_codes.h:417
+#: ../include/svn_error_codes.h:433
msgid "Working copy text base is corrupt"
msgstr "Textbasis der Arbeitskopie ist beschädigt"
-#: ../include/svn_error_codes.h:421
+#: ../include/svn_error_codes.h:437
msgid "Cannot change node kind"
msgstr "Kann Knotentyp nicht ändern"
-#: ../include/svn_error_codes.h:425
+#: ../include/svn_error_codes.h:441
msgid "Invalid operation on the current working directory"
msgstr "Ungültige Operation auf dem aktuellen Arbeitsverzeichnis"
-#: ../include/svn_error_codes.h:429
+#: ../include/svn_error_codes.h:445
msgid "Problem on first log entry in a working copy"
msgstr "Problem mit dem ersten Log-Eintrag in einer Arbeitskopie"
-#: ../include/svn_error_codes.h:433
+#: ../include/svn_error_codes.h:449
msgid "Unsupported working copy format"
msgstr "Nicht unterstütztes Format der Arbeitskopie"
-#: ../include/svn_error_codes.h:437
+#: ../include/svn_error_codes.h:453
msgid "Path syntax not supported in this context"
msgstr "Pfadsyntax wird in diesem Zusammenhang nicht unterstützt"
-#: ../include/svn_error_codes.h:442
+#: ../include/svn_error_codes.h:458
msgid "Invalid schedule"
msgstr "Ungültiger Plan"
-#: ../include/svn_error_codes.h:447
+#: ../include/svn_error_codes.h:463
msgid "Invalid relocation"
msgstr "Ungültiges Umplatzieren"
-#: ../include/svn_error_codes.h:452
+#: ../include/svn_error_codes.h:468
msgid "Invalid switch"
msgstr "Ungültiges Wechseln"
-#: ../include/svn_error_codes.h:457
+#: ../include/svn_error_codes.h:473
msgid "Changelist doesn't match"
msgstr "Änderungsliste passt nicht"
-#: ../include/svn_error_codes.h:462
+#: ../include/svn_error_codes.h:478
msgid "Conflict resolution failed"
msgstr "Konfliktauflösung schlug fehl"
-#: ../include/svn_error_codes.h:466
+#: ../include/svn_error_codes.h:482
msgid "Failed to locate 'copyfrom' path in working copy"
msgstr "Pfad von »copyfrom« konnte in der Arbeitskopie nicht gefunden werden"
-#: ../include/svn_error_codes.h:473
+#: ../include/svn_error_codes.h:490
msgid "Moving a path from one changelist to another"
msgstr "Verschieben eines Pfades von einer Änderungsliste in eine andere"
-#: ../include/svn_error_codes.h:478
+#: ../include/svn_error_codes.h:495
msgid "Cannot delete a file external"
msgstr "Kann externen Dateiverweis nicht löschen"
-#: ../include/svn_error_codes.h:483
+#: ../include/svn_error_codes.h:500
msgid "Cannot move a file external"
msgstr "Kann externen Dateiverweis nicht verschieben"
-#: ../include/svn_error_codes.h:488
+#: ../include/svn_error_codes.h:505
msgid "Something's amiss with the wc sqlite database"
msgstr "Irgendetwas ist mit der sqlite-Datenbank der Arbeitskopie falsch"
-#: ../include/svn_error_codes.h:493
+#: ../include/svn_error_codes.h:510
msgid "The working copy is missing"
msgstr "Die Arbeitskopie fehlt"
-#: ../include/svn_error_codes.h:498
+#: ../include/svn_error_codes.h:515
msgid "The specified node is not a symlink"
msgstr "Der spezifizierte Knoten ist kein symbolischer Link"
-#: ../include/svn_error_codes.h:503
+#: ../include/svn_error_codes.h:520
msgid "The specified path has an unexpected status"
msgstr "Der angegebene Pfad hat einen unerwarteten Status"
-#: ../include/svn_error_codes.h:508
+#: ../include/svn_error_codes.h:525
msgid "The working copy needs to be upgraded"
msgstr "Die Arbeitskopie muss in ein neueres Format gebracht werden"
-#: ../include/svn_error_codes.h:513
-msgid "Previous operation was interrupted; run 'svn cleanup'"
+#: ../include/svn_error_codes.h:530
+#, fuzzy
+msgid "Previous operation has not finished; run 'cleanup' if it was interrupted"
msgstr "Die vorhergehende Operation wurde unterbrochen; Starten Sie »svn cleanup«"
-#: ../include/svn_error_codes.h:518
-msgid "This operation can not be performed with just this depth."
+#: ../include/svn_error_codes.h:536
+#, fuzzy
+msgid "The operation cannot be performed with the specified depth"
msgstr "Diese Operation kann nicht allein mit dieser Tiefe durch geführt werden."
-#: ../include/svn_error_codes.h:524
+#: ../include/svn_error_codes.h:541
+msgid "Couldn't open a working copy file because access was denied"
+msgstr ""
+
+#: ../include/svn_error_codes.h:546
+msgid "Mixed-revision working copy was found but not expected"
+msgstr ""
+
+#: ../include/svn_error_codes.h:551
+#, fuzzy
+msgid "Duplicate targets in svn:externals property"
+msgstr "Format einer svn:externals Eigenschaft war ungültig"
+
+#: ../include/svn_error_codes.h:557
msgid "General filesystem error"
msgstr "Allgemeiner Dateisystemfehler"
-#: ../include/svn_error_codes.h:528
+#: ../include/svn_error_codes.h:561
msgid "Error closing filesystem"
msgstr "Fehler beim Schließen des Dateisystems"
-#: ../include/svn_error_codes.h:532
+#: ../include/svn_error_codes.h:565
msgid "Filesystem is already open"
msgstr "Dateisystem ist bereits geöffnet"
-#: ../include/svn_error_codes.h:536
+#: ../include/svn_error_codes.h:569
msgid "Filesystem is not open"
msgstr "Dateisystem ist nicht geöffnet"
-#: ../include/svn_error_codes.h:540
+#: ../include/svn_error_codes.h:573
msgid "Filesystem is corrupt"
msgstr "Dateisystem ist beschädigt"
-#: ../include/svn_error_codes.h:544
+#: ../include/svn_error_codes.h:577
msgid "Invalid filesystem path syntax"
msgstr "Ungültige Pfadsyntax des Dateisystems"
-#: ../include/svn_error_codes.h:548
+#: ../include/svn_error_codes.h:581
msgid "Invalid filesystem revision number"
msgstr "Ungültige Revisionsnummer des Dateisystems"
-#: ../include/svn_error_codes.h:552
+#: ../include/svn_error_codes.h:585
msgid "Invalid filesystem transaction name"
msgstr "Ungültiger Transaktionsname des Dateisystems"
-#: ../include/svn_error_codes.h:556
+#: ../include/svn_error_codes.h:589
msgid "Filesystem directory has no such entry"
msgstr "Verzeichnis des Dateisystems hat keinen solchen Eintrag"
-#: ../include/svn_error_codes.h:560
+#: ../include/svn_error_codes.h:593
msgid "Filesystem has no such representation"
msgstr "Dateisystem hat keine solche Darstellung"
-#: ../include/svn_error_codes.h:564
+#: ../include/svn_error_codes.h:597
msgid "Filesystem has no such string"
msgstr "Dateisystem hat keinen solchen String"
-#: ../include/svn_error_codes.h:568
+#: ../include/svn_error_codes.h:601
msgid "Filesystem has no such copy"
msgstr "Dateisystem hat keine solche Kopie"
-#: ../include/svn_error_codes.h:572
+#: ../include/svn_error_codes.h:605
msgid "The specified transaction is not mutable"
msgstr "Die spezifizierte Transaktion ist nicht veränderlich"
-#: ../include/svn_error_codes.h:576
+#: ../include/svn_error_codes.h:609
msgid "Filesystem has no item"
msgstr "Dateisystem hat keinen Eintrag"
-#: ../include/svn_error_codes.h:580
+#: ../include/svn_error_codes.h:613
msgid "Filesystem has no such node-rev-id"
msgstr "Dateisystem hat keine solche Knotenrevisions-Id"
-#: ../include/svn_error_codes.h:584
+#: ../include/svn_error_codes.h:617
msgid "String does not represent a node or node-rev-id"
msgstr "Zeichenkette stellt keinen Knoten oder keine Knotenrevisions-Id dar"
-#: ../include/svn_error_codes.h:588
+#: ../include/svn_error_codes.h:621
msgid "Name does not refer to a filesystem directory"
msgstr "Name bezeichnet kein Verzeichnis des Dateisystems"
-#: ../include/svn_error_codes.h:592
+#: ../include/svn_error_codes.h:625
msgid "Name does not refer to a filesystem file"
msgstr "Name bezeichnet keine Datei des Dateisystems"
-#: ../include/svn_error_codes.h:596
+#: ../include/svn_error_codes.h:629
msgid "Name is not a single path component"
msgstr "Name ist keine einzelne Pfadkomponente"
-#: ../include/svn_error_codes.h:600
+#: ../include/svn_error_codes.h:633
msgid "Attempt to change immutable filesystem node"
msgstr "Versuch, einen nicht-veränderlichen Knoten des Dateisystems zu ändern"
-#: ../include/svn_error_codes.h:604
+#: ../include/svn_error_codes.h:637
msgid "Item already exists in filesystem"
msgstr "Objekt existiert bereits im Dateisystem"
-#: ../include/svn_error_codes.h:608
+#: ../include/svn_error_codes.h:641
msgid "Attempt to remove or recreate fs root dir"
msgstr "Versuch, Basisverzeichnis des Dateisystems zu entfernen oder neu zu erstellen"
-#: ../include/svn_error_codes.h:612
+#: ../include/svn_error_codes.h:645
msgid "Object is not a transaction root"
msgstr "Objekt ist keine Transaktionsbasis"
-#: ../include/svn_error_codes.h:616
+#: ../include/svn_error_codes.h:649
msgid "Object is not a revision root"
msgstr "Objekt ist keine Revisionsbasis"
-#: ../include/svn_error_codes.h:620
+#: ../include/svn_error_codes.h:653
msgid "Merge conflict during commit"
msgstr "Konflikt beim Zusammenführen während der Übertragung"
-#: ../include/svn_error_codes.h:624
+#: ../include/svn_error_codes.h:657
msgid "A representation vanished or changed between reads"
msgstr "Eine Darstellung ist zwischen Lesezugriffen verschwunden oder hat sich verändert"
-#: ../include/svn_error_codes.h:628
+#: ../include/svn_error_codes.h:661
msgid "Tried to change an immutable representation"
msgstr "Versuchte, eine nicht-veränderliche Darstellung zu ändern"
-#: ../include/svn_error_codes.h:632
+#: ../include/svn_error_codes.h:665
msgid "Malformed skeleton data"
msgstr "Fehlerhafte Schablonendaten"
-#: ../include/svn_error_codes.h:636
+#: ../include/svn_error_codes.h:669
msgid "Transaction is out of date"
msgstr "Transaktion ist veraltet"
-#: ../include/svn_error_codes.h:640
+#: ../include/svn_error_codes.h:673
msgid "Berkeley DB error"
msgstr "Berkeley-DB-Fehler"
-#: ../include/svn_error_codes.h:644
+#: ../include/svn_error_codes.h:677
msgid "Berkeley DB deadlock error"
msgstr "Deadlock-Fehler der Berkeley Datenbank"
-#: ../include/svn_error_codes.h:648
+#: ../include/svn_error_codes.h:681
msgid "Transaction is dead"
msgstr "Transaktion ist tot"
-#: ../include/svn_error_codes.h:652
+#: ../include/svn_error_codes.h:685
msgid "Transaction is not dead"
msgstr "Transaktion ist nicht tot"
-#: ../include/svn_error_codes.h:657
+#: ../include/svn_error_codes.h:690
msgid "Unknown FS type"
msgstr "Unbekannter Dateisystemtyp"
-#: ../include/svn_error_codes.h:662
+#: ../include/svn_error_codes.h:695
msgid "No user associated with filesystem"
msgstr "Kein Benutzer mit dem Dateisystem verbunden"
-#: ../include/svn_error_codes.h:667
+#: ../include/svn_error_codes.h:700
msgid "Path is already locked"
msgstr "Pfad ist bereits gesperrt"
-#: ../include/svn_error_codes.h:672 ../include/svn_error_codes.h:834
+#: ../include/svn_error_codes.h:705 ../include/svn_error_codes.h:882
msgid "Path is not locked"
msgstr "Pfad ist nicht gesperrt"
-#: ../include/svn_error_codes.h:677
+#: ../include/svn_error_codes.h:710
msgid "Lock token is incorrect"
msgstr "Sperrmarke ist fehlerhaft"
-#: ../include/svn_error_codes.h:682
+#: ../include/svn_error_codes.h:715
msgid "No lock token provided"
msgstr "Keine Sperrmarke angegeben"
-#: ../include/svn_error_codes.h:687
+#: ../include/svn_error_codes.h:720
msgid "Username does not match lock owner"
msgstr "Benutzername und Sperreigner stimmen nicht überein"
-#: ../include/svn_error_codes.h:692
+#: ../include/svn_error_codes.h:725
msgid "Filesystem has no such lock"
msgstr "Dateisystem hat keine solche Sperre"
-#: ../include/svn_error_codes.h:697
+#: ../include/svn_error_codes.h:730
msgid "Lock has expired"
msgstr "Sperre ist abgelaufen"
-#: ../include/svn_error_codes.h:702 ../include/svn_error_codes.h:821
+#: ../include/svn_error_codes.h:735 ../include/svn_error_codes.h:869
msgid "Item is out of date"
msgstr "Eintrag ist veraltet"
-#: ../include/svn_error_codes.h:714
+#: ../include/svn_error_codes.h:747
msgid "Unsupported FS format"
msgstr "Nicht unterstütztes Dateisystemformat"
-#: ../include/svn_error_codes.h:719
+#: ../include/svn_error_codes.h:752
msgid "Representation is being written"
msgstr "Darstellung wird geschrieben"
-#: ../include/svn_error_codes.h:724
+#: ../include/svn_error_codes.h:757
msgid "The generated transaction name is too long"
msgstr "Der erzeugte Transaktionsname ist zu lang"
-#: ../include/svn_error_codes.h:729
+#: ../include/svn_error_codes.h:762
msgid "Filesystem has no such node origin record"
msgstr "Dateisystem hat keinen solchen Knotenursprungsdatensatz"
-#: ../include/svn_error_codes.h:734
+#: ../include/svn_error_codes.h:767
msgid "Filesystem upgrade is not supported"
msgstr "Dateisystemaktualisierung wird nicht unterstützt"
-#: ../include/svn_error_codes.h:739
+#: ../include/svn_error_codes.h:772
msgid "Filesystem has no such checksum-representation index record"
msgstr "Dateisystem hat keinen solchen Indexdatensatz zur Prüfsummen-Repräsentation"
-#: ../include/svn_error_codes.h:744
+#: ../include/svn_error_codes.h:777
msgid "Property value in filesystem differs from the provided base value"
msgstr "Eigenschaftswert im Dateisystem weicht von dem angegebenen Basiswert ab"
-#: ../include/svn_error_codes.h:751
+#: ../include/svn_error_codes.h:783
+msgid "The filesystem editor completion process was not followed"
+msgstr ""
+
+#: ../include/svn_error_codes.h:788
+#, fuzzy
+msgid "A packed revprop could not be read"
+msgstr "[Fehlerausgabe konnte nicht gelesen werden.]"
+
+#: ../include/svn_error_codes.h:793
+#, fuzzy
+msgid "Could not initialize the revprop caching infrastructure."
+msgstr "Konnte den gemeinsam genutzten SQLite-Zwischenspeicher nicht initialisieren"
+
+#: ../include/svn_error_codes.h:799
msgid "The repository is locked, perhaps for db recovery"
msgstr "Das Projektarchiv ist gesperrt, möglicherweise zum Retten der Datenbank"
-#: ../include/svn_error_codes.h:755
+#: ../include/svn_error_codes.h:803
msgid "A repository hook failed"
msgstr "Eine Aktion im Projektarchiv schlug fehl"
-#: ../include/svn_error_codes.h:759
+#: ../include/svn_error_codes.h:807
msgid "Incorrect arguments supplied"
msgstr "Inkorrekte Parameter übergeben"
-#: ../include/svn_error_codes.h:763
+#: ../include/svn_error_codes.h:811
msgid "A report cannot be generated because no data was supplied"
msgstr "Es kann kein Report erzeugt werden, da keine Daten geliefert wurden"
-#: ../include/svn_error_codes.h:767
+#: ../include/svn_error_codes.h:815
msgid "Bogus revision report"
msgstr "Ungültiger Revisionsreport"
-#: ../include/svn_error_codes.h:776
+#: ../include/svn_error_codes.h:824
msgid "Unsupported repository version"
msgstr "Nicht unterstützte Version des Projektarchivs"
-#: ../include/svn_error_codes.h:780
+#: ../include/svn_error_codes.h:828
msgid "Disabled repository feature"
msgstr "Deaktiviertes Merkmal des Projektarchivs"
-#: ../include/svn_error_codes.h:784
+#: ../include/svn_error_codes.h:832
msgid "Error running post-commit hook"
msgstr "Fehler beim Ausführen der Aktion »post-commit«"
-#: ../include/svn_error_codes.h:789
+#: ../include/svn_error_codes.h:837
msgid "Error running post-lock hook"
msgstr "Fehler beim Ausführen der Aktion »post-lock«"
-#: ../include/svn_error_codes.h:794
+#: ../include/svn_error_codes.h:842
msgid "Error running post-unlock hook"
msgstr "Fehler beim Ausführen der Aktion »post-unlock«"
-#: ../include/svn_error_codes.h:799
+#: ../include/svn_error_codes.h:847
msgid "Repository upgrade is not supported"
msgstr "Projektarchivaktualisierung wird nicht unterstützt"
-#: ../include/svn_error_codes.h:805
+#: ../include/svn_error_codes.h:853
msgid "Bad URL passed to RA layer"
msgstr "Ungültige URL an die ZM-Schicht übergeben"
-#: ../include/svn_error_codes.h:809
+#: ../include/svn_error_codes.h:857
msgid "Authorization failed"
msgstr "Autorisierung schlug fehl"
-#: ../include/svn_error_codes.h:813
+#: ../include/svn_error_codes.h:861
msgid "Unknown authorization method"
msgstr "Unbekannte Autorisierungsmethode"
-#: ../include/svn_error_codes.h:817
+#: ../include/svn_error_codes.h:865
msgid "Repository access method not implemented"
msgstr "Zugriffsmethode zum Projektarchiv nicht implementiert"
-#: ../include/svn_error_codes.h:825
+#: ../include/svn_error_codes.h:873
msgid "Repository has no UUID"
msgstr "Projektarchiv hat keine UUID"
-#: ../include/svn_error_codes.h:829
+#: ../include/svn_error_codes.h:877
msgid "Unsupported RA plugin ABI version"
msgstr "Nicht unterstützte ABI-Version des ZM-Plugins"
-#: ../include/svn_error_codes.h:839
+#: ../include/svn_error_codes.h:887
msgid "Server can only replay from the root of a repository"
msgstr "Der Server kann nur von der Basis des Projektarchivs fortfahren"
-#: ../include/svn_error_codes.h:844
+#: ../include/svn_error_codes.h:892
msgid "Repository UUID does not match expected UUID"
msgstr "Die UUID des Projektarchivs entspricht nicht der erwarteten UUID"
-#: ../include/svn_error_codes.h:849
+#: ../include/svn_error_codes.h:897
msgid "Repository root URL does not match expected root URL"
msgstr "Die URL der Projektarchivwurzel entspricht nicht der erwarteten Wurzel-URL"
-#: ../include/svn_error_codes.h:854
+#: ../include/svn_error_codes.h:902
msgid "Session URL does not match expected session URL"
msgstr "Die Sitzungs-URL entspricht nicht der erwarteten Sitzungs-URL"
-#: ../include/svn_error_codes.h:860
+#: ../include/svn_error_codes.h:908
msgid "RA layer failed to init socket layer"
msgstr "ZM-Schicht konnte die Verbindungsschicht nicht initialisieren"
-#: ../include/svn_error_codes.h:864
+#: ../include/svn_error_codes.h:912
msgid "RA layer failed to create HTTP request"
msgstr "ZM-Schicht konnte keine HTTP-Anforderung erzeugen"
-#: ../include/svn_error_codes.h:868
+#: ../include/svn_error_codes.h:916
msgid "RA layer request failed"
msgstr "ZM-Schicht Anforderung gescheitert"
-#: ../include/svn_error_codes.h:872
+#: ../include/svn_error_codes.h:920
msgid "RA layer didn't receive requested OPTIONS info"
msgstr "ZM-Schicht hat die angeforderte OPTIONS-Information nicht erhalten"
-#: ../include/svn_error_codes.h:876
+#: ../include/svn_error_codes.h:924
msgid "RA layer failed to fetch properties"
msgstr "ZM-Schicht konnte keine Eigenschaften bestimmen"
-#: ../include/svn_error_codes.h:880
+#: ../include/svn_error_codes.h:928
msgid "RA layer file already exists"
msgstr "ZM-Schichtdatei existiert bereits"
-#: ../include/svn_error_codes.h:894
+#: ../include/svn_error_codes.h:942
msgid "HTTP Path Not Found"
msgstr "HTTP Pfad nicht gefunden"
-#: ../include/svn_error_codes.h:898
+#: ../include/svn_error_codes.h:946
msgid "Failed to execute WebDAV PROPPATCH"
msgstr "Konnte WebDAV PROPPATCH nicht ausführen"
-#: ../include/svn_error_codes.h:903 ../include/svn_error_codes.h:954
-#: ../libsvn_ra_svn/marshal.c:714 ../libsvn_ra_svn/marshal.c:832
-#: ../libsvn_ra_svn/marshal.c:859
+#: ../include/svn_error_codes.h:951 ../include/svn_error_codes.h:1002
+#: ../libsvn_ra_svn/marshal.c:1390 ../libsvn_ra_svn/marshal.c:1597
+#: ../libsvn_ra_svn/marshal.c:1624
msgid "Malformed network data"
msgstr "Fehlerhafte Netzwerkdaten"
-#: ../include/svn_error_codes.h:908
+#: ../include/svn_error_codes.h:956
msgid "Unable to extract data from response header"
msgstr "Kann keine Daten aus dem Antwortkopf extrahieren"
-#: ../include/svn_error_codes.h:913
+#: ../include/svn_error_codes.h:961
msgid "Repository has been moved"
msgstr "Projektarchiv wurde verschoben"
-#: ../include/svn_error_codes.h:918 ../libsvn_ra_serf/replay.c:844
-#: ../libsvn_ra_serf/update.c:2326 ../libsvn_ra_serf/util.c:689
+#: ../include/svn_error_codes.h:966 ../libsvn_ra_serf/update.c:2861
+#: ../libsvn_ra_serf/util.c:767
msgid "Connection timed out"
msgstr "Die Wartezeit für die Verbindung ist abgelaufen"
-#: ../include/svn_error_codes.h:923
+#: ../include/svn_error_codes.h:971
msgid "URL access forbidden for unknown reason"
msgstr "URL-Zugriff wegen unbekannter Ursache verboten"
-#: ../include/svn_error_codes.h:929 ../include/svn_error_codes.h:958
+#: ../include/svn_error_codes.h:977 ../include/svn_error_codes.h:1006
msgid "Couldn't find a repository"
msgstr "Konnte Projektarchiv nicht finden"
-#: ../include/svn_error_codes.h:933
+#: ../include/svn_error_codes.h:981
msgid "Couldn't open a repository"
msgstr "Konnte Projektarchiv nicht öffnen"
-#: ../include/svn_error_codes.h:938
+#: ../include/svn_error_codes.h:986
msgid "Special code for wrapping server errors to report to client"
msgstr "Spezieller Fehlerkode, um Serverfehler an den Client zu melden"
-#: ../include/svn_error_codes.h:942
+#: ../include/svn_error_codes.h:990
msgid "Unknown svn protocol command"
msgstr "Unbekanntes svn-Protokollkommando"
-#: ../include/svn_error_codes.h:946
+#: ../include/svn_error_codes.h:994
msgid "Network connection closed unexpectedly"
msgstr "Netzwerkverbindung wurde unerwartet geschlossen"
-#: ../include/svn_error_codes.h:950
+#: ../include/svn_error_codes.h:998
msgid "Network read/write error"
msgstr "Netzwerk-Lese-/-Schreibfehler"
-#: ../include/svn_error_codes.h:962
+#: ../include/svn_error_codes.h:1010
msgid "Client/server version mismatch"
msgstr "Client- und Serverversion stimmen nicht überein"
-#: ../include/svn_error_codes.h:967
+#: ../include/svn_error_codes.h:1015
msgid "Cannot negotiate authentication mechanism"
msgstr "Kann Anmeldungsmechanismus nicht aushandeln"
-#: ../include/svn_error_codes.h:972
+#: ../include/svn_error_codes.h:1020
msgid "Editor drive was aborted"
msgstr "Editor-Steuerung wurde unterbrochen"
-#: ../include/svn_error_codes.h:978
+#: ../include/svn_error_codes.h:1026
msgid "Initialization of SSPI library failed"
msgstr "Initialisierung der SSPI-Bibliothek schlug fehl"
-#: ../include/svn_error_codes.h:982
+#: ../include/svn_error_codes.h:1030
msgid "Server SSL certificate untrusted"
msgstr "Server-SSL-Zertifikat ist nicht vertrauenswürdig"
-#: ../include/svn_error_codes.h:986
+#: ../include/svn_error_codes.h:1034
msgid "Initialization of the GSSAPI context failed"
msgstr "Initialisierung des GSSAPI-Kontextes schlug fehl"
-#: ../include/svn_error_codes.h:991
+#: ../include/svn_error_codes.h:1039
msgid "While handling serf response:"
msgstr "Während der Abwicklung einer serf Antwort:"
-#: ../include/svn_error_codes.h:999
+#: ../include/svn_error_codes.h:1047
msgid "Credential data unavailable"
msgstr "Beglaubigungsdaten nicht verfügbar"
-#: ../include/svn_error_codes.h:1003
+#: ../include/svn_error_codes.h:1051
msgid "No authentication provider available"
msgstr "Kein Anbieter für Anmeldung verfügbar"
-#: ../include/svn_error_codes.h:1007
+#: ../include/svn_error_codes.h:1055
msgid "All authentication providers exhausted"
msgstr "Alle Anmeldemöglichkeiten erschöpft"
-#: ../include/svn_error_codes.h:1011
+#: ../include/svn_error_codes.h:1059
msgid "Credentials not saved"
msgstr "Beglaubigungsdaten nicht gespeichert"
-#: ../include/svn_error_codes.h:1016
+#: ../include/svn_error_codes.h:1064
msgid "Authentication failed"
msgstr "Authentifizierung schlug fehl"
-#: ../include/svn_error_codes.h:1022
+#: ../include/svn_error_codes.h:1070
msgid "Read access denied for root of edit"
msgstr "Lesezugriff verweigert für Basis dieser Änderung"
-#: ../include/svn_error_codes.h:1027
+#: ../include/svn_error_codes.h:1075
msgid "Item is not readable"
msgstr "Eintrag ist nicht lesbar"
-#: ../include/svn_error_codes.h:1032
+#: ../include/svn_error_codes.h:1080
msgid "Item is partially readable"
msgstr "Eintrag ist nur teilweise lesbar"
-#: ../include/svn_error_codes.h:1036
+#: ../include/svn_error_codes.h:1084
msgid "Invalid authz configuration"
msgstr "Ungültige authz Konfiguration"
-#: ../include/svn_error_codes.h:1041
+#: ../include/svn_error_codes.h:1089
msgid "Item is not writable"
msgstr "Eintrag ist nicht schreibbar"
-#: ../include/svn_error_codes.h:1047
+#: ../include/svn_error_codes.h:1095
msgid "Svndiff data has invalid header"
msgstr "Svndiff-Daten enthalten ungültigen Kopf"
-#: ../include/svn_error_codes.h:1051
+#: ../include/svn_error_codes.h:1099
msgid "Svndiff data contains corrupt window"
msgstr "Svndiff-Daten enthalten defektes Fenster"
-#: ../include/svn_error_codes.h:1055
+#: ../include/svn_error_codes.h:1103
msgid "Svndiff data contains backward-sliding source view"
msgstr "Svndiff-Daten enthalten rückwärts gleitenden Blick auf Quellen"
-#: ../include/svn_error_codes.h:1059
+#: ../include/svn_error_codes.h:1107
msgid "Svndiff data contains invalid instruction"
msgstr "Svndiff-Daten enthalten ungültige Anweisung"
-#: ../include/svn_error_codes.h:1063
+#: ../include/svn_error_codes.h:1111
msgid "Svndiff data ends unexpectedly"
msgstr "Svndiff-Daten enden unerwartet"
-#: ../include/svn_error_codes.h:1067
+#: ../include/svn_error_codes.h:1115
msgid "Svndiff compressed data is invalid"
msgstr "Komprimierte svndiff-Daten sind ungültig"
-#: ../include/svn_error_codes.h:1073
+#: ../include/svn_error_codes.h:1121
msgid "Diff data source modified unexpectedly"
msgstr "Diff-Datenquellen wurden unerwarteterweise verändert"
-#: ../include/svn_error_codes.h:1079
+#: ../include/svn_error_codes.h:1127
msgid "Apache has no path to an SVN filesystem"
msgstr "Apache besitzt keinen Pfad zu einem SVN Dateisystem"
-#: ../include/svn_error_codes.h:1083
+#: ../include/svn_error_codes.h:1131
msgid "Apache got a malformed URI"
msgstr "Apache hat eine fehlerhafte URI erhalten"
-#: ../include/svn_error_codes.h:1087
+#: ../include/svn_error_codes.h:1135
msgid "Activity not found"
msgstr "Aktivität nicht gefunden"
-#: ../include/svn_error_codes.h:1091
+#: ../include/svn_error_codes.h:1139
msgid "Baseline incorrect"
msgstr "»Baseline« nicht korrekt"
-#: ../include/svn_error_codes.h:1095
+#: ../include/svn_error_codes.h:1143
msgid "Input/output error"
msgstr "Eingabe/Ausgabe Fehler"
-#: ../include/svn_error_codes.h:1101
+#: ../include/svn_error_codes.h:1149
msgid "A path under version control is needed for this operation"
msgstr "Für diese Operation wird ein Pfad unter Versionskontrolle benötigt"
-#: ../include/svn_error_codes.h:1105
+#: ../include/svn_error_codes.h:1153
msgid "Repository access is needed for this operation"
msgstr "Für diese Operation wird Zugang zum Projektarchiv benötigt"
-#: ../include/svn_error_codes.h:1109
+#: ../include/svn_error_codes.h:1157
msgid "Bogus revision information given"
msgstr "Falsche Revisionsinformation angegeben"
-#: ../include/svn_error_codes.h:1113
+#: ../include/svn_error_codes.h:1161
msgid "Attempting to commit to a URL more than once"
msgstr "Versuch, mehrfach zu einer URL zu übertragen"
-#: ../include/svn_error_codes.h:1117
+#: ../include/svn_error_codes.h:1165
msgid "Operation does not apply to binary file"
msgstr "Operation ist nicht auf einer Binärdatei ausführbar"
-#: ../include/svn_error_codes.h:1123
+#: ../include/svn_error_codes.h:1171
msgid "Format of an svn:externals property was invalid"
msgstr "Format einer svn:externals Eigenschaft war ungültig"
-#: ../include/svn_error_codes.h:1127
+#: ../include/svn_error_codes.h:1175
msgid "Attempting restricted operation for modified resource"
msgstr "Versuch, eine beschränkte Operation für veränderte Ressource auszuführen"
-#: ../include/svn_error_codes.h:1131
+#: ../include/svn_error_codes.h:1179
msgid "Operation does not apply to directory"
msgstr "Operation ist nicht auf einem Verzeichnis ausführbar"
-#: ../include/svn_error_codes.h:1135
+#: ../include/svn_error_codes.h:1183
msgid "Revision range is not allowed"
msgstr "Revisionsbereich nicht erlaubt"
-#: ../include/svn_error_codes.h:1139
+#: ../include/svn_error_codes.h:1187
msgid "Inter-repository relocation not allowed"
msgstr "Umplatzieren innerhalb des Projektarchivs nicht erlaubt"
-#: ../include/svn_error_codes.h:1143
+#: ../include/svn_error_codes.h:1191
msgid "Author name cannot contain a newline"
msgstr "Autorenname darf keinen Zeilenumbruch enthalten"
-#: ../include/svn_error_codes.h:1147
+#: ../include/svn_error_codes.h:1195
msgid "Bad property name"
msgstr "Fehlerhafter Eigenschaftsname"
-#: ../include/svn_error_codes.h:1152
+#: ../include/svn_error_codes.h:1200
msgid "Two versioned resources are unrelated"
msgstr "Zwei versionierte Ressourcen sind nicht verwandt"
-#: ../include/svn_error_codes.h:1157
+#: ../include/svn_error_codes.h:1205
msgid "Path has no lock token"
msgstr "Pfad hat keine Sperrmarke"
-#: ../include/svn_error_codes.h:1162
+#: ../include/svn_error_codes.h:1210
msgid "Operation does not support multiple sources"
msgstr "Die Operation unterstützt nicht mehrere Quellen"
-#: ../include/svn_error_codes.h:1167
+#: ../include/svn_error_codes.h:1215
msgid "No versioned parent directories"
msgstr "Keine versionierten Elternverzeichnisse"
-#: ../include/svn_error_codes.h:1172
+#: ../include/svn_error_codes.h:1220 ../include/svn_error_codes.h:1240
msgid "Working copy and merge source not ready for reintegration"
msgstr "Arbeitskopie und Zusammnführungsquelle sind für eine Reintegration nicht bereit"
-#: ../include/svn_error_codes.h:1177
+#: ../include/svn_error_codes.h:1225
msgid "A file external cannot overwrite an existing versioned item"
msgstr "Ein externer Dateiverweis kann kein existierendes versioniertes Objekt überschreiben"
-#: ../include/svn_error_codes.h:1182
+#: ../include/svn_error_codes.h:1230
msgid "Invalid path component strip count specified"
msgstr "Ungültige Anzahl der vom Pfad zu entfernenden Komponenten angegeben"
-#: ../include/svn_error_codes.h:1187
+#: ../include/svn_error_codes.h:1235
msgid "Detected a cycle while processing the operation"
msgstr "Endlosschleife während der Verarbeitung der Operation entdeckt"
-#: ../include/svn_error_codes.h:1193
+#: ../include/svn_error_codes.h:1245
+msgid "Invalid mergeinfo detected in merge target"
+msgstr ""
+
+#: ../include/svn_error_codes.h:1250
+msgid "Can't perform this operation without a valid lock token"
+msgstr ""
+
+#: ../include/svn_error_codes.h:1255
+#, fuzzy
+msgid "The operation is forbidden by the server"
+msgstr "Die Operation wurde unterbrochen"
+
+#: ../include/svn_error_codes.h:1261
msgid "A problem occurred; see other errors for details"
msgstr "Ein Problem ist aufgetreten, für Details siehe andere Fehlermeldungen"
-#: ../include/svn_error_codes.h:1197
+#: ../include/svn_error_codes.h:1265
msgid "Failure loading plugin"
msgstr "Fehler beim Laden eines Plugins"
-#: ../include/svn_error_codes.h:1201
+#: ../include/svn_error_codes.h:1269
msgid "Malformed file"
msgstr "Fehlerhafte Datei"
-#: ../include/svn_error_codes.h:1205
+#: ../include/svn_error_codes.h:1273
msgid "Incomplete data"
msgstr "Unvollständige Daten"
-#: ../include/svn_error_codes.h:1209
+#: ../include/svn_error_codes.h:1277
msgid "Incorrect parameters given"
msgstr "Inkorrekte Parameter übergeben"
-#: ../include/svn_error_codes.h:1213
+#: ../include/svn_error_codes.h:1281
msgid "Tried a versioning operation on an unversioned resource"
msgstr "Versuchte, eine Versionsoperation auf nicht versionierter Ressource auszuführen"
-#: ../include/svn_error_codes.h:1217
+#: ../include/svn_error_codes.h:1285
msgid "Test failed"
msgstr "Test schlug fehl"
-#: ../include/svn_error_codes.h:1221
+#: ../include/svn_error_codes.h:1289
msgid "Trying to use an unsupported feature"
msgstr "Versuch, ein nicht unterstütztes Merkmal zu benutzen"
-#: ../include/svn_error_codes.h:1225
+#: ../include/svn_error_codes.h:1293
msgid "Unexpected or unknown property kind"
msgstr "Unerwartete oder unbekannte Eigenschaftsart"
-#: ../include/svn_error_codes.h:1229
+#: ../include/svn_error_codes.h:1297
msgid "Illegal target for the requested operation"
msgstr "Ungültiges Ziel für die angeforderte Operation"
-#: ../include/svn_error_codes.h:1233
+#: ../include/svn_error_codes.h:1301
msgid "MD5 checksum is missing"
msgstr "MD5 Prüfsumme fehlt"
-#: ../include/svn_error_codes.h:1237
+#: ../include/svn_error_codes.h:1305
msgid "Directory needs to be empty but is not"
msgstr "Das Verzeichnis muss leer sein, ist es aber nicht"
-#: ../include/svn_error_codes.h:1241
+#: ../include/svn_error_codes.h:1309
msgid "Error calling external program"
msgstr "Fehler beim Aufrufen eines externen Programmes"
-#: ../include/svn_error_codes.h:1245
+#: ../include/svn_error_codes.h:1313
msgid "Python exception has been set with the error"
msgstr "Eine Python-Ausnahme wurde mit dem Fehler gesetzt"
-#: ../include/svn_error_codes.h:1249
+#: ../include/svn_error_codes.h:1317
msgid "A checksum mismatch occurred"
msgstr "Ein Prüfsummenfehler ist aufgetreten"
-#: ../include/svn_error_codes.h:1253
+#: ../include/svn_error_codes.h:1321
msgid "The operation was interrupted"
msgstr "Die Operation wurde unterbrochen"
-#: ../include/svn_error_codes.h:1257
+#: ../include/svn_error_codes.h:1325
msgid "The specified diff option is not supported"
msgstr "Die angegebene Vergleichsoption wird nicht unterstützt"
-#: ../include/svn_error_codes.h:1261
+#: ../include/svn_error_codes.h:1329
msgid "Property not found"
msgstr "Eigenschaft nicht gefunden"
-#: ../include/svn_error_codes.h:1265
+#: ../include/svn_error_codes.h:1333
msgid "No auth file path available"
msgstr "Kein Pfad für die Anmeldedatei verfügbar"
-#: ../include/svn_error_codes.h:1270
+#: ../include/svn_error_codes.h:1338
msgid "Incompatible library version"
msgstr "Inkompatible Bibliotheksversion"
-#: ../include/svn_error_codes.h:1275
+#: ../include/svn_error_codes.h:1343
msgid "Mergeinfo parse error"
msgstr "Einlesefehler für Zusammenführungsinformationen"
-#: ../include/svn_error_codes.h:1280
+#: ../include/svn_error_codes.h:1348
msgid "Cease invocation of this API"
msgstr "Einstellen der Benutzung dieser API"
-#: ../include/svn_error_codes.h:1285
+#: ../include/svn_error_codes.h:1353
msgid "Error parsing revision number"
msgstr "Fehler beim Einlesen der Revisionsnummer"
-#: ../include/svn_error_codes.h:1290
+#: ../include/svn_error_codes.h:1358
msgid "Iteration terminated before completion"
msgstr "Iteration brach vor der Fertigstellung ab"
-#: ../include/svn_error_codes.h:1295
+#: ../include/svn_error_codes.h:1363
msgid "Unknown changelist"
msgstr "Unbekannte Änderungsliste"
-#: ../include/svn_error_codes.h:1300
+#: ../include/svn_error_codes.h:1368
msgid "Reserved directory name in command line arguments"
msgstr "Kommandozeilenparameter enthalten reservierten Verzeichnisnamen"
-#: ../include/svn_error_codes.h:1305
+#: ../include/svn_error_codes.h:1373
msgid "Inquiry about unknown capability"
msgstr "Nachfrage nach unbekannter Eigenschaft"
-#: ../include/svn_error_codes.h:1310
+#: ../include/svn_error_codes.h:1378
msgid "Test skipped"
msgstr "Test übersprungen"
-#: ../include/svn_error_codes.h:1315
+#: ../include/svn_error_codes.h:1383
msgid "apr memcache library not available"
msgstr "Die apr-memcache-Bibliothek ist nicht verfügbar"
-#: ../include/svn_error_codes.h:1320
+#: ../include/svn_error_codes.h:1388
msgid "Couldn't perform atomic initialization"
msgstr "Eine atomare Initialisierung konnte nicht durchgeführt werden"
-#: ../include/svn_error_codes.h:1325
+#: ../include/svn_error_codes.h:1393
msgid "SQLite error"
msgstr "SQLite-Fehler"
-#: ../include/svn_error_codes.h:1330
+#: ../include/svn_error_codes.h:1398
msgid "Attempted to write to readonly SQLite db"
msgstr "Versuch, in eine nur lesbare SQLite-Datenbank zu schreiben"
-#: ../include/svn_error_codes.h:1335
+#: ../include/svn_error_codes.h:1405
msgid "Unsupported schema found in SQLite db"
msgstr "Nicht unterstütztes Schema in SQLite-Datenbank gefunden"
-#: ../include/svn_error_codes.h:1340
+#: ../include/svn_error_codes.h:1410
msgid "The SQLite db is busy"
-msgstr "Die SQLite-Datenbank ist beschäftigt"
+msgstr "Die SQLite-Datenbank ist beschäftigt"
-#: ../include/svn_error_codes.h:1345
+#: ../include/svn_error_codes.h:1415
msgid "SQLite busy at transaction rollback; resetting all busy SQLite statements to allow rollback"
msgstr "SQLite ist mit dem Rollback einer Transaktion beschäftigt; Alle SQLite-Anweisungen werden für Rollback zurückgesetzt"
-#: ../include/svn_error_codes.h:1352
+#: ../include/svn_error_codes.h:1421
+#, fuzzy
+msgid "Constraint error in SQLite db"
+msgstr "Nicht unterstütztes Schema in SQLite-Datenbank gefunden"
+
+#: ../include/svn_error_codes.h:1426
+msgid "too many memcached servers configured"
+msgstr ""
+
+#: ../include/svn_error_codes.h:1431
+#, fuzzy
+msgid "failed to parse version number string"
+msgstr "Konnte keinen neuen Schlüssel erzeugen"
+
+#: ../include/svn_error_codes.h:1436
+#, fuzzy
+msgid "Atomic data storage is corrupt"
+msgstr "Textbasis der Arbeitskopie ist beschädigt"
+
+#: ../include/svn_error_codes.h:1442
msgid "Error parsing arguments"
msgstr "Fehler beim Einlesen der Parameter"
-#: ../include/svn_error_codes.h:1356
+#: ../include/svn_error_codes.h:1446
msgid "Not enough arguments provided"
msgstr "Nicht genügend Parameter angegeben"
-#: ../include/svn_error_codes.h:1360
+#: ../include/svn_error_codes.h:1450
msgid "Mutually exclusive arguments specified"
msgstr "Die Parameter schließen sich gegenseitig aus"
-#: ../include/svn_error_codes.h:1364
+#: ../include/svn_error_codes.h:1454
msgid "Attempted command in administrative dir"
msgstr "Ausführen einer Operation in einem Verwaltungsverzeichnis versucht"
-#: ../include/svn_error_codes.h:1368
+#: ../include/svn_error_codes.h:1458
msgid "The log message file is under version control"
msgstr "Die Datei für die Logmeldung ist unter Versionskontrolle"
-#: ../include/svn_error_codes.h:1372
+#: ../include/svn_error_codes.h:1462
msgid "The log message is a pathname"
msgstr "Die Logmeldung ist ein Pfadname"
-#: ../include/svn_error_codes.h:1376
+#: ../include/svn_error_codes.h:1466
msgid "Committing in directory scheduled for addition"
msgstr "Übertragung in einem Verzeichnis, das zum Hinzufügen vorgesehen ist"
-#: ../include/svn_error_codes.h:1380
+#: ../include/svn_error_codes.h:1470
msgid "No external editor available"
msgstr "Kein externer Editor verfügbar"
-#: ../include/svn_error_codes.h:1384
+#: ../include/svn_error_codes.h:1474
msgid "Something is wrong with the log message's contents"
msgstr "Mit dem Inhalt der Logmeldung stimmt etwas nicht"
-#: ../include/svn_error_codes.h:1388
+#: ../include/svn_error_codes.h:1478
msgid "A log message was given where none was necessary"
msgstr "Eine Logmeldung wurde angegeben wo keine nötig ist"
-#: ../include/svn_error_codes.h:1392
+#: ../include/svn_error_codes.h:1482
msgid "No external merge tool available"
msgstr "Kein externes Werkzeug zum Zusammenführen verfügbar"
-#: ../include/svn_error_codes.h:1396
+#: ../include/svn_error_codes.h:1486
msgid "Failed processing one or more externals definitions"
msgstr "Verarbeitung einer oder mehrerer »svn:externals«-Definitionen fehlgeschlagen"
-#: ../include/svn_error_codes.h:1402
+#: ../include/svn_error_codes.h:1492
msgid "Assertion failure"
msgstr "Assert-Anweisung schlug fehl"
-#: ../libsvn_auth_gnome_keyring/gnome_keyring.c:392
-#: ../libsvn_auth_gnome_keyring/gnome_keyring.c:447
-#: ../libsvn_auth_gnome_keyring/gnome_keyring.c:554
-#: ../libsvn_auth_gnome_keyring/gnome_keyring.c:610
+#: ../include/svn_error_codes.h:1496
+msgid "No non-tracing links found in the error chain"
+msgstr ""
+
+#: ../libsvn_auth_gnome_keyring/gnome_keyring.c:274
msgid "GNOME Keyring is locked and we are non-interactive"
msgstr "GNOME-Schlüsselring ist gesperrt und wir sind nicht-interaktiv"
-#: ../libsvn_client/add.c:488 ../libsvn_wc/adm_ops.c:881
-#: ../libsvn_wc/workqueue.c:1658 ../libsvn_wc/workqueue.c:1740
-#, c-format
-msgid "'%s' not found"
-msgstr "»%s« nicht gefunden"
-
-#: ../libsvn_client/add.c:493 ../libsvn_wc/adm_ops.c:572
-#: ../libsvn_wc/adm_ops.c:886
-#, c-format
-msgid "Unsupported node kind for path '%s'"
-msgstr "Nicht unterstützter Knotentyp für Pfad »%s«"
-
-#: ../libsvn_client/add.c:534 ../libsvn_client/cmdline.c:268
-#: ../libsvn_subr/opt.c:878
+#: ../libsvn_client/add.c:612 ../libsvn_client/cmdline.c:356
+#: ../libsvn_subr/opt.c:929
#, c-format
msgid "'%s' ends in a reserved name"
msgstr "»%s« endet mit einem reservierten Namen"
-#: ../libsvn_client/add.c:580 ../libsvn_client/changelist.c:116
-#: ../libsvn_client/changelist.c:168 ../libsvn_client/cleanup.c:56
-#: ../libsvn_client/cleanup.c:134 ../libsvn_client/commit.c:701
-#: ../libsvn_client/export.c:952 ../libsvn_client/resolved.c:54
-#: ../libsvn_client/revert.c:135 ../libsvn_client/status.c:274
-#: ../svn/add-cmd.c:76 ../svn/changelist-cmd.c:84 ../svn/cleanup-cmd.c:69
-#: ../svn/export-cmd.c:91 ../svn/import-cmd.c:106 ../svn/resolve-cmd.c:106
-#: ../svn/resolved-cmd.c:76 ../svn/revert-cmd.c:77 ../svn/status-cmd.c:260
-#: ../svn/upgrade-cmd.c:72
+#: ../libsvn_client/add.c:966
+#, c-format
+msgid "'%s' prevents creating parent of '%s'"
+msgstr ""
+
+#: ../libsvn_client/add.c:1004 ../libsvn_wc/adm_ops.c:1107
+#, c-format
+msgid "'%s' is an existing item in conflict; please mark the conflict as resolved before adding a new item here"
+msgstr ""
+
+#: ../libsvn_client/add.c:1011 ../libsvn_wc/adm_ops.c:1062
+#: ../libsvn_wc/workqueue.c:902 ../libsvn_wc/workqueue.c:995
+#, c-format
+msgid "'%s' not found"
+msgstr "»%s« nicht gefunden"
+
+#: ../libsvn_client/add.c:1017 ../libsvn_wc/adm_ops.c:580
+#: ../libsvn_wc/adm_ops.c:1067
+#, c-format
+msgid "Unsupported node kind for path '%s'"
+msgstr "Nicht unterstützter Knotentyp für Pfad »%s«"
+
+#: ../libsvn_client/add.c:1050 ../libsvn_client/changelist.c:65
+#: ../libsvn_client/changelist.c:104 ../libsvn_client/cleanup.c:56
+#: ../libsvn_client/cleanup.c:134 ../libsvn_client/export.c:1394
+#: ../libsvn_client/import.c:817 ../libsvn_client/patch.c:2958
+#: ../libsvn_client/relocate.c:232 ../libsvn_client/resolved.c:54
+#: ../libsvn_client/revert.c:135 ../libsvn_client/status.c:269
+#: ../libsvn_client/switch.c:450 ../libsvn_client/update.c:610
+#: ../svn/util.c:986
#, c-format
msgid "'%s' is not a local path"
msgstr "»%s« ist kein lokaler Pfad"
-#: ../libsvn_client/add.c:683 ../libsvn_ra/ra_loader.c:373
-#: ../libsvn_ra_serf/serf.c:366 ../libsvn_ra_serf/serf.c:482
+#: ../libsvn_client/add.c:1091 ../libsvn_wc/adm_ops.c:1141
+#: ../libsvn_wc/copy.c:695
#, c-format
-msgid "Illegal repository URL '%s'"
-msgstr "Illegale Projektarchiv-URL »%s«"
+msgid "'%s' is already under version control"
+msgstr "»%s« befindet sich bereits unter Versionskontrolle"
-#: ../libsvn_client/blame.c:397
+#: ../libsvn_client/add.c:1225 ../libsvn_client/add.c:1252
+#, fuzzy, c-format
+msgid "There is no valid uri above '%s'"
+msgstr "Es existiert bereits ein versioniertes Objekt »%s«"
+
+#: ../libsvn_client/blame.c:395
#, c-format
msgid "Cannot calculate blame information for binary file '%s'"
msgstr "Kann Binärdatei »%s« nicht annotieren"
-#: ../libsvn_client/blame.c:627
+#: ../libsvn_client/blame.c:626
msgid "Start revision must precede end revision"
msgstr "Startrevision muss vor der Endrevision liegen"
-#: ../libsvn_client/cat.c:74 ../libsvn_client/commit_util.c:1038
-#: ../libsvn_client/delete.c:64 ../libsvn_client/prop_commands.c:429
-#: ../libsvn_client/prop_commands.c:947 ../libsvn_client/prop_commands.c:1264
-#: ../libsvn_client/revisions.c:104 ../libsvn_wc/adm_ops.c:2008
-#: ../libsvn_wc/adm_ops.c:2042 ../libsvn_wc/copy.c:596
-#: ../libsvn_wc/entries.c:1405 ../libsvn_wc/entries.c:2450
-#: ../libsvn_wc/entries.c:2481 ../libsvn_wc/node.c:1247
-#: ../libsvn_wc/update_editor.c:4171
+#: ../libsvn_client/cat.c:74 ../libsvn_client/commit_util.c:611
+#: ../libsvn_client/delete.c:66 ../libsvn_client/prop_commands.c:884
+#: ../libsvn_client/prop_commands.c:1434 ../libsvn_client/revisions.c:104
+#: ../libsvn_wc/adm_ops.c:2501 ../libsvn_wc/adm_ops.c:2546
+#: ../libsvn_wc/copy.c:560 ../libsvn_wc/copy.c:604 ../libsvn_wc/entries.c:1299
+#: ../libsvn_wc/entries.c:2636 ../libsvn_wc/entries.c:2667 ../svn/notify.c:986
#, c-format
msgid "'%s' is not under version control"
msgstr "»%s« ist nicht unter Versionskontrolle"
@@ -1321,7 +1410,7 @@
msgid "'%s' has no base revision until it is committed"
msgstr "»%s« hat keine Basisrevision, bis es übertragen wurde"
-#: ../libsvn_client/cat.c:153 ../libsvn_client/export.c:234
+#: ../libsvn_client/cat.c:141 ../libsvn_client/export.c:391
msgid "(local)"
msgstr "(lokal)"
@@ -1330,560 +1419,586 @@
msgid "URL '%s' refers to a directory"
msgstr "URL »%s« verweist auf auf ein Verzeichnis"
-#: ../libsvn_client/checkout.c:164 ../libsvn_client/export.c:1116
+#: ../libsvn_client/changelist.c:57
+#, fuzzy
+msgid "Target changelist name must not be empty"
+msgstr "Namen von Änderungslisten dürfen nicht leer sein"
+
+#: ../libsvn_client/checkout.c:112 ../libsvn_client/export.c:1446
#, c-format
msgid "URL '%s' doesn't exist"
msgstr "Die URL »%s« existiert nicht"
-#: ../libsvn_client/checkout.c:168
+#: ../libsvn_client/checkout.c:116
#, c-format
msgid "URL '%s' refers to a file, not a directory"
msgstr "Die URL »%s« verweist auf eine Datei, nicht auf ein Verzeichnis"
-#: ../libsvn_client/checkout.c:204
-#, c-format
-msgid "'%s' is already a working copy for a different URL; use 'svn update' to update it"
+#: ../libsvn_client/checkout.c:150
+#, fuzzy, c-format
+msgid "'%s' is already a working copy for a different URL"
msgstr "»%s« ist bereits eine Arbeitskopie für eine andere URL; Verwenden Sie »svn update« um sie zu aktualisieren"
-#: ../libsvn_client/checkout.c:212
+#: ../libsvn_client/checkout.c:158
#, c-format
msgid "'%s' already exists and is not a directory"
msgstr "»%s« existiert bereits und ist kein Verzeichnis"
-#: ../libsvn_client/cmdline.c:78
-#, c-format
-msgid "Improper relative URL '%s'"
-msgstr "Fehlerhafte relative URL »%s«"
-
-#: ../libsvn_client/cmdline.c:149
+#: ../libsvn_client/cmdline.c:104
#, c-format
msgid "All non-relative targets must have the same root URL"
msgstr "Alle nicht-relativen Ziele müssen die selbe Wurzel-URL haben"
-#: ../libsvn_client/commit.c:433
-#, c-format
-msgid "Unknown or unversionable type for '%s'"
-msgstr "Unbekannter oder unerwarteter Typ für »%s«"
+#: ../libsvn_client/cmdline.c:312
+msgid "Resolving '^/': no repository root found in the target arguments or in the current directory"
+msgstr ""
-#: ../libsvn_client/commit.c:538
-msgid "New entry name required when importing a file"
-msgstr "Neuer Eintragsname erforderlich, wenn eine Datei importiert wird"
-
-#: ../libsvn_client/commit.c:573 ../libsvn_wc/adm_ops.c:567
-#: ../libsvn_wc/lock.c:140 ../libsvn_wc/wc_db_pdh.c:64
-#, c-format
-msgid "'%s' does not exist"
-msgstr "»%s« ist nicht vorhanden"
-
-#: ../libsvn_client/commit.c:655 ../libsvn_client/copy.c:471
-#: ../libsvn_client/merge.c:8975 ../libsvn_client/merge.c:10231
-#: ../libsvn_client/merge.c:10506 ../svnlook/main.c:1407
-#, c-format
-msgid "Path '%s' does not exist"
-msgstr "Pfad »%s« existiert nicht"
-
-#: ../libsvn_client/commit.c:795 ../libsvn_client/copy.c:482
-#: ../libsvn_client/copy.c:1021 ../libsvn_client/copy.c:1245
-#: ../libsvn_client/copy.c:1860
-#, c-format
-msgid "Path '%s' already exists"
-msgstr "Pfad »%s« existiert bereits"
-
-#: ../libsvn_client/commit.c:810
-#, c-format
-msgid "'%s' is a reserved name and cannot be imported"
-msgstr "»%s« ist ein reservierter Name und kann nicht importiert werden "
-
-#: ../libsvn_client/commit.c:848 ../libsvn_client/copy.c:1402
+#: ../libsvn_client/commit.c:154 ../libsvn_client/copy.c:1493
msgid "Commit failed (details follow):"
msgstr "Übertragen schlug fehl (Details folgen):"
-#: ../libsvn_client/commit.c:856
+#: ../libsvn_client/commit.c:162
msgid "Commit succeeded, but other errors follow:"
msgstr "Übertragen erfolgreich, aber andere Fehler folgen:"
-#: ../libsvn_client/commit.c:863
+#: ../libsvn_client/commit.c:169
msgid "Error unlocking locked dirs (details follow):"
msgstr "Fehler beim Entsperren von Verzeichnissen (Details folgen):"
-#: ../libsvn_client/commit.c:874
+#: ../libsvn_client/commit.c:180
msgid "Error bumping revisions post-commit (details follow):"
msgstr "Fehler beim Weiterschalten der Revisionen nach der Übertragung (Details folgen):"
-#: ../libsvn_client/commit.c:968
-msgid "Are all targets part of the same working copy?"
-msgstr "Sind alle Ziele Teil der selben Arbeitskopie?"
+#: ../libsvn_client/commit.c:306
+#, c-format
+msgid "Cannot delete the directory '%s' in a non-recursive commit because it has children"
+msgstr ""
-#: ../libsvn_client/commit.c:1007
-msgid "Cannot non-recursively commit a directory deletion of a directory with child nodes"
-msgstr "Das Löschen eines Verzeichnisses mit Untereinträgen kann nur rekursiv übertragen werden"
-
-#: ../libsvn_client/commit.c:1057 ../svn/commit-cmd.c:71
+#: ../libsvn_client/commit.c:622
#, c-format
msgid "'%s' is a URL, but URLs cannot be commit targets"
msgstr "»%s« ist eine URL, aber URLs können nicht übertragen werden"
-#: ../libsvn_client/commit_util.c:63 ../libsvn_repos/commit.c:132
+#: ../libsvn_client/commit.c:734
+#, fuzzy
+msgid ""
+"Commit can only commit to a single repository at a time.\n"
+"Are all targets part of the same working copy?"
+msgstr "Sind alle Ziele Teil der selben Arbeitskopie?"
+
+#: ../libsvn_client/commit.c:849
+#, c-format
+msgid "Cannot commit '%s' because it was moved from '%s' which is not part of the commit; both sides of the move must be committed together"
+msgstr ""
+
+#: ../libsvn_client/commit.c:879
+#, c-format
+msgid "Cannot commit '%s' because it was moved to '%s' which is not part of the commit; both sides of the move must be committed together"
+msgstr ""
+
+#: ../libsvn_client/commit_util.c:94 ../libsvn_repos/commit.c:165
#, c-format
msgid "Directory '%s' is out of date"
msgstr "Verzeichnis »%s« ist veraltet"
-#: ../libsvn_client/commit_util.c:64 ../libsvn_repos/commit.c:134
+#: ../libsvn_client/commit_util.c:95 ../libsvn_repos/commit.c:167
#, c-format
msgid "File '%s' is out of date"
msgstr "Datei »%s« ist veraltet"
-#: ../libsvn_client/commit_util.c:288 ../libsvn_client/commit_util.c:479
-#: ../libsvn_client/commit_util.c:1032
-#, c-format
-msgid "Aborting commit: '%s' remains in conflict"
-msgstr "Übertragung abgebrochen: »%s« bleibt im Konflikt"
+#: ../libsvn_client/commit_util.c:130
+#, fuzzy, c-format
+msgid "Directory '%s' is locked in another working copy"
+msgstr "»%s« ist in dieser Arbeitskopie nicht gesperrt"
-#: ../libsvn_client/commit_util.c:330
+#: ../libsvn_client/commit_util.c:131
+#, fuzzy, c-format
+msgid "File '%s' is locked in another working copy"
+msgstr "»%s« ist in dieser Arbeitskopie nicht gesperrt"
+
+#: ../libsvn_client/commit_util.c:166
+#, fuzzy, c-format
+msgid "Changing directory '%s' is forbidden by the server"
+msgstr "Kann vom Server ausgeschlossenes »%s« nicht kopieren"
+
+#: ../libsvn_client/commit_util.c:167
+#, c-format
+msgid "Changing file '%s' is forbidden by the server"
+msgstr ""
+
+#: ../libsvn_client/commit_util.c:318
#, c-format
msgid "Aborting commit: '%s' remains in tree-conflict"
msgstr "Übertragung abgebrochen: »%s« verursacht weiterhin einen Baumkonflikt"
-#: ../libsvn_client/commit_util.c:424 ../libsvn_client/commit_util.c:440
+#: ../libsvn_client/commit_util.c:667
#, c-format
-msgid "Unknown entry kind for '%s'"
-msgstr "»%s« hat einen unbekannten Eintragstyp"
+msgid "Aborting commit: '%s' remains in conflict"
+msgstr "Übertragung abgebrochen: »%s« bleibt im Konflikt"
-#: ../libsvn_client/commit_util.c:457
-#, c-format
-msgid "Entry '%s' has unexpectedly changed special status"
-msgstr "Der Spezialstatus von Eintrag »%s« hat sich unerwarteterweise geändert"
+#: ../libsvn_client/commit_util.c:686
+#, fuzzy, c-format
+msgid "Node '%s' has unexpectedly changed kind"
+msgstr "Quelle »%s« ist unbekannten Typs"
-#: ../libsvn_client/commit_util.c:654
+#: ../libsvn_client/commit_util.c:727
#, c-format
msgid "'%s' is scheduled for addition, but is missing"
msgstr "»%s« ist zum Hinzufügen vorgesehen, fehlt aber"
-#: ../libsvn_client/commit_util.c:935
-#, c-format
-msgid "'%s' is not under version control and is not part of the commit, yet its child '%s' is part of the commit"
+#: ../libsvn_client/commit_util.c:1201
+#, fuzzy, c-format
+msgid "'%s' is not known to exist in the repository and is not part of the commit, yet its child '%s' is part of the commit"
msgstr "»%s« ist weder unter Versionskontrolle noch Teil einer Übertragung, dennoch ist sein Kind »%s« Teil einer Übertragung"
-#: ../libsvn_client/commit_util.c:1052 ../libsvn_client/url.c:198
-#, c-format
-msgid "Entry for '%s' has no URL"
-msgstr "Eintrag für »%s« hat keine URL"
-
-# CHECKME
-#: ../libsvn_client/commit_util.c:1069
-#, c-format
-msgid "'%s' is scheduled for addition within unversioned parent"
-msgstr "»%s« ist zum Hinzufügen innerhalb einer nicht versionierten Struktur vorgesehen"
-
-#: ../libsvn_client/commit_util.c:1210
+#: ../libsvn_client/commit_util.c:1339
#, c-format
msgid "Cannot commit both '%s' and '%s' as they refer to the same URL"
msgstr "Kann »%s« und »%s« nicht übertragen, da beide auf dieselbe URL verweisen"
-#: ../libsvn_client/commit_util.c:1367
+#: ../libsvn_client/commit_util.c:1491
#, c-format
msgid "Commit item '%s' has copy flag but no copyfrom URL"
msgstr "Übertragenes Objekt »%s« ist als Kopie markiert, besitzt aber keine Quell-URL"
-#: ../libsvn_client/commit_util.c:1372
+#: ../libsvn_client/commit_util.c:1496
#, c-format
msgid "Commit item '%s' has copy flag but an invalid revision"
msgstr "Übertragenes Objekt »%s« ist als Kopie markiert, hat aber eine ungültige Revision"
-#: ../libsvn_client/commit_util.c:2080
+#: ../libsvn_client/commit_util.c:1959
msgid "Standard properties can't be set explicitly as revision properties"
msgstr "Standardeigenschaften können nicht explizit als Revisionseigenschaften gesetzt werden"
-#: ../libsvn_client/copy.c:500 ../libsvn_client/copy.c:1876
+#: ../libsvn_client/copy.c:420
+#, fuzzy, c-format
+msgid "Path '%s' exists, but is excluded"
+msgstr "Pfad »%s« existiert bereits, ist aber kein Verzeichnis"
+
+#: ../libsvn_client/copy.c:435 ../libsvn_client/copy.c:1046
+#: ../libsvn_client/copy.c:1297 ../libsvn_client/copy.c:1848
+#: ../libsvn_client/import.c:865
+#, c-format
+msgid "Path '%s' already exists"
+msgstr "Pfad »%s« existiert bereits"
+
+#: ../libsvn_client/copy.c:488
+#, fuzzy, c-format
+msgid "Path '%s' already exists as unversioned node"
+msgstr "Pfad »%s« existiert bereits"
+
+#: ../libsvn_client/copy.c:518 ../libsvn_client/copy.c:1864
#, c-format
msgid "Path '%s' is not a directory"
msgstr "Pfad »%s« ist kein Verzeichnis"
-#: ../libsvn_client/copy.c:669 ../libsvn_client/copy.c:710
+#: ../libsvn_client/copy.c:552 ../libsvn_client/merge.c:9568
+#: ../svnlook/svnlook.c:1402
+#, c-format
+msgid "Path '%s' does not exist"
+msgstr "Pfad »%s« existiert nicht"
+
+#: ../libsvn_client/copy.c:724 ../libsvn_client/copy.c:765
#, c-format
msgid "Path '%s' already exists, but is not a directory"
msgstr "Pfad »%s« existiert bereits, ist aber kein Verzeichnis"
-#: ../libsvn_client/copy.c:775
-msgid "Source and destination URLs appear not to all point to the same repository."
+#: ../libsvn_client/copy.c:827
+#, fuzzy
+msgid "Source and destination URLs appear not to point to the same repository."
msgstr "Quellen- und Ziel-URL scheinen nicht auf das selbe Projektarchiv zu zeigen."
-#: ../libsvn_client/copy.c:985
-#, c-format
-msgid "Cannot move URL '%s' into itself"
-msgstr "Kann URL »%s« nicht auf sich selbst verschieben"
-
-#: ../libsvn_client/copy.c:1007 ../libsvn_client/prop_commands.c:229
+#: ../libsvn_client/copy.c:1036 ../libsvn_client/prop_commands.c:168
#, c-format
msgid "Path '%s' does not exist in revision %ld"
msgstr "Pfad »%s« existiert nicht in Revision %ld"
-#: ../libsvn_client/copy.c:1536
+#: ../libsvn_client/copy.c:1632
#, c-format
msgid "Source URL '%s' is from foreign repository; leaving it as a disjoint WC"
msgstr "Quell URL »%s« ist aus einem fremden Projektarchiv; lasse sie als getrennte Arbeitskopie"
-#: ../libsvn_client/copy.c:1638 ../libsvn_client/copy.c:1650
-#: ../libsvn_wc/adm_ops.c:941 ../libsvn_wc/copy.c:691
-#, c-format
-msgid "'%s' is already under version control"
-msgstr "»%s« befindet sich bereits unter Versionskontrolle"
-
-#: ../libsvn_client/copy.c:1671
-#, c-format
-msgid "Entry for '%s' exists (though the working file is missing)"
-msgstr "Eintrag für »%s« existiert (die Arbeitsdatei fehlt jedoch)"
-
-#: ../libsvn_client/copy.c:1844
+#: ../libsvn_client/copy.c:1832
#, c-format
msgid "Path '%s' not found in revision %ld"
msgstr "Pfad »%s« wurde in Revision %ld nicht gefunden"
-#: ../libsvn_client/copy.c:1849
+#: ../libsvn_client/copy.c:1837
#, c-format
msgid "Path '%s' not found in head revision"
msgstr "Pfad »%s« wurde in der HEAD-Revision nicht gefunden"
-#: ../libsvn_client/copy.c:1970
+#: ../libsvn_client/copy.c:1956
msgid "Cannot mix repository and working copy sources"
msgstr "Quellen aus dem Projektarchiv und einer Arbeitskopie können nicht gemischt werden"
-#: ../libsvn_client/copy.c:2022
+#: ../libsvn_client/copy.c:2008
#, c-format
msgid "Cannot copy path '%s' into its own child '%s'"
msgstr "Kann Pfad »%s« nicht in sein eigenes Kind »%s« kopieren"
-#: ../libsvn_client/copy.c:2054
-#, c-format
-msgid "Cannot move the file external at '%s'; please propedit the svn:externals description that created it"
+#: ../libsvn_client/copy.c:2044
+#, fuzzy, c-format
+msgid "Cannot move the external at '%s'; please edit the svn:externals property on '%s'."
msgstr "Externer Dateiverweis bei »%s« kann nicht verschoben werden; bitte bearbeiten Sie die für die Erstellung verantwortliche Eigenschaft svn:externals"
-#: ../libsvn_client/copy.c:2069
+#: ../libsvn_client/copy.c:2059
msgid "Moves between the working copy and the repository are not supported"
msgstr "Verschiebungen zwischen der Arbeitskopie und dem Projektarchiv sind nicht unterstützt"
-#: ../libsvn_client/copy.c:2083
+#: ../libsvn_client/copy.c:2074
+#, c-format
+msgid "Cannot move URL '%s' into itself"
+msgstr "Kann URL »%s« nicht auf sich selbst verschieben"
+
+#: ../libsvn_client/copy.c:2075
#, c-format
msgid "Cannot move path '%s' into itself"
msgstr "Kann »%s« nicht auf sich selbst verschieben"
-#: ../libsvn_client/copy.c:2152
+#: ../libsvn_client/copy.c:2142
#, c-format
msgid "'%s' does not have a URL associated with it"
msgstr "»%s« hat keine zugehörige URL"
-#: ../libsvn_client/delete.c:59
+#: ../libsvn_client/delete.c:61
#, c-format
msgid "'%s' is in the way of the resource actually under version control"
msgstr "»%s« ist der Ressource, die sich unter Versionskontrolle befindet, im Weg"
-#: ../libsvn_client/delete.c:74
+#: ../libsvn_client/delete.c:76
#, c-format
msgid "'%s' has local modifications -- commit or revert them first"
msgstr "»%s« hat lokale Änderungen -- zuerst übertragen oder zurücksetzen"
-#: ../libsvn_client/delete.c:104
-#, c-format
-msgid "Cannot remove the file external at '%s'; please propedit or propdel the svn:externals description that created it"
+#: ../libsvn_client/delete.c:109
+#, fuzzy, c-format
+msgid "Cannot remove the external at '%s'; please edit or delete the svn:externals property on '%s'"
msgstr "Externer Dateiverweis bei »%s« kann nicht entfernt werden; bitte bearbeiten oder löschen Sie die für die Erstellung verantwortliche Eigenschaft svn:externals"
-#: ../libsvn_client/delete.c:339 ../libsvn_client/locking_commands.c:200
-#: ../svn/delete-cmd.c:68 ../svn/diff-cmd.c:288 ../svn/lock-cmd.c:116
-#, c-format
-msgid "Cannot mix repository and working copy targets"
-msgstr "Ziele aus dem Projektarchiv und einer Arbeitskopie können nicht gemischt werden"
-
-#: ../libsvn_client/deprecated.c:714 ../svn/move-cmd.c:65
+#: ../libsvn_client/deprecated.c:861 ../svn/move-cmd.c:65
msgid "Cannot specify revisions (except HEAD) with move operations"
msgstr "Andere Revisionen (als HEAD) sind bei Verschiebeoperationen nicht zugelassen"
-#: ../libsvn_client/deprecated.c:1331
+#: ../libsvn_client/deprecated.c:1620
msgid "No commits in repository"
msgstr "Keine Übertragungen im Projektarchiv"
-#: ../libsvn_client/deprecated.c:2094 ../libsvn_wc/deprecated.c:3370
+#: ../libsvn_client/deprecated.c:2856 ../libsvn_wc/deprecated.c:3934
msgid "Non-recursive relocation not supported"
msgstr "Nicht-rekursives Umplatzieren nicht unterstützt"
-#: ../libsvn_client/diff.c:136
-#, c-format
-msgid " Reverse-merged %s:r%s%s"
-msgstr " Rückgängiges Zusammenführen: %s:r%s%s"
-
-#: ../libsvn_client/diff.c:151
-#, c-format
-msgid " Merged %s:r%s%s"
-msgstr " Zusammengeführt %s:r%s%s"
-
-#: ../libsvn_client/diff.c:161 ../libsvn_diff/diff_file.c:1226
-#: ../libsvn_diff/diff_file.c:1242
+#. Utilities
+#: ../libsvn_client/diff.c:62 ../libsvn_diff/diff_file.c:1813
+#: ../libsvn_diff/diff_file.c:1829
#, c-format
msgid "Path '%s' must be an immediate child of the directory '%s'"
msgstr "Pfad »%s« muss ein unmittelbares Kind von Verzeichnis »%s« sein"
-#: ../libsvn_client/diff.c:359
+#: ../libsvn_client/diff.c:256
#, c-format
msgid "%s\t(revision %ld)"
msgstr "%s\t(Revision %ld)"
-#: ../libsvn_client/diff.c:361
+#: ../libsvn_client/diff.c:258
#, c-format
msgid "%s\t(working copy)"
msgstr "%s\t(Arbeitskopie)"
-#: ../libsvn_client/diff.c:637
+#: ../libsvn_client/diff.c:510 ../svnlook/svnlook.c:791
#, c-format
msgid "%sProperty changes on: %s%s"
msgstr "%sEigenschaftsänderungen: %s%s"
-#: ../libsvn_client/diff.c:921
+#: ../libsvn_client/diff.c:757
#, c-format
msgid "Cannot display: file marked as a binary type.%s"
msgstr "Kann nicht anzeigen: Dateityp ist als binär angegeben.%s"
-#: ../libsvn_client/diff.c:1326
+#: ../libsvn_client/diff.c:1233
#, c-format
msgid "Path '%s' has no URL"
msgstr "Pfad »%s« hat keine URL"
-#: ../libsvn_client/diff.c:1395 ../libsvn_client/merge.c:6304
-#: ../libsvn_client/merge.c:8984
+#: ../libsvn_client/diff.c:1261 ../libsvn_client/merge.c:6859
+#: ../libsvn_client/merge.c:9950
msgid "Not all required revisions are specified"
msgstr "Es sind nicht alle erforderlichen Revisionen angegeben"
-#: ../libsvn_client/diff.c:1410
-msgid "At least one revision must be non-local for a pegged diff"
+#: ../libsvn_client/diff.c:1275
+#, fuzzy
+msgid "At least one revision must be something other than BASE or WORKING when diffing a URL"
msgstr "Bei einem Vergleich mit Fix-Revision muss zumindest eine Revision auf dem Server sein"
-#: ../libsvn_client/diff.c:1518 ../libsvn_client/diff.c:1530
-#, c-format
-msgid "'%s' was not found in the repository at revision %ld"
+#: ../libsvn_client/diff.c:1312
+#, fuzzy, c-format
+msgid "Diff target '%s' was not found in the repository at revision '%ld'"
msgstr "»%s« wurde im Projektarchiv in Revision %ld nicht gefunden"
-#: ../libsvn_client/diff.c:1588
-msgid "Sorry, svn_client_diff5 was called in a way that is not yet supported"
+#: ../libsvn_client/diff.c:1317
+#, fuzzy, c-format
+msgid "Diff target '%s' was not found in the repository at revision '%ld' or '%ld'"
+msgstr "»%s« wurde im Projektarchiv in Revision %ld nicht gefunden"
+
+#: ../libsvn_client/diff.c:1489
+#, fuzzy, c-format
+msgid "Diff target '%s' was not found in the repository at revisions '%ld' and '%ld'"
+msgstr "»%s« wurde im Projektarchiv in Revision %ld nicht gefunden"
+
+#: ../libsvn_client/diff.c:1494
+#, fuzzy, c-format
+msgid "Diff targets '%s' and '%s' were not found in the repository at revisions '%ld' and '%ld'"
+msgstr "»%s« wurde im Projektarchiv in Revision %ld nicht gefunden"
+
+#: ../libsvn_client/diff.c:1563
+#, fuzzy
+msgid "Sorry, svn_client_diff6 was called in a way that is not yet supported"
msgstr "svn_client_diff5 wurde in einer Art aufgerufen, die noch nicht unterstützt wird"
-#: ../libsvn_client/diff.c:1630
+#: ../libsvn_client/diff.c:1604
msgid "Only diffs between a path's text-base and its working files are supported at this time"
msgstr "Derzeit werden nur Vergleiche zwischen der Textbasis und den Arbeitsdateien eines Pfades unterstützt"
-#: ../libsvn_client/diff.c:1816 ../libsvn_client/switch.c:132
+#: ../libsvn_client/diff.c:2278 ../libsvn_client/switch.c:151
#, c-format
msgid "Directory '%s' has no URL"
msgstr "Verzeichnis »%s« hat keine URL"
-#: ../libsvn_client/diff.c:2064
-msgid "Summarizing diff can only compare repository to repository"
-msgstr "Zusammenfassender Vergleich kann nur ein Projektarchiv mit einem Projektarchiv vergleichen"
+#: ../libsvn_client/diff.c:2616
+#, fuzzy
+msgid "Summarized diffs are only supported between a path's text-base and its working files at this time"
+msgstr "Derzeit werden nur Vergleiche zwischen der Textbasis und den Arbeitsdateien eines Pfades unterstützt"
-#: ../libsvn_client/export.c:92
+#: ../libsvn_client/diff.c:2958 ../libsvn_client/diff.c:3021
+msgid "Cannot ignore properties and show only properties at the same time"
+msgstr ""
+
+#: ../libsvn_client/diff_local.c:558
+#, fuzzy, c-format
+msgid "'%s' is not the same node kind as '%s'"
+msgstr ""
+"»%s«\n"
+"ist nicht das selbe Projektarchiv wie\n"
+"»%s«"
+
+#: ../libsvn_client/diff_local.c:575 ../libsvn_wc/props.c:1545
+#, c-format
+msgid "'%s' is not a file or directory"
+msgstr "»%s« ist weder eine Datei noch ein Verzeichnis"
+
+#: ../libsvn_client/export.c:101
#, c-format
msgid "'%s' is not a valid EOL value"
msgstr "»%s« ist kein gültiger EOL Wert"
-#: ../libsvn_client/export.c:377
+#: ../libsvn_client/export.c:239
msgid "Destination directory exists, and will not be overwritten unless forced"
msgstr "Zielverzeichnis existiert und kann nur mittels »--force« überschrieben werden"
-#: ../libsvn_client/export.c:532 ../libsvn_client/export.c:678
-#, c-format
-msgid "'%s' exists and is not a directory"
-msgstr "»%s« existiert und ist kein Verzeichnis"
-
-#: ../libsvn_client/export.c:536 ../libsvn_client/export.c:682
-#, c-format
-msgid "'%s' already exists"
-msgstr "»%s« existiert bereits"
-
-#: ../libsvn_client/export.c:866 ../libsvn_wc/update_editor.c:4161
-#, c-format
-msgid ""
-"Checksum mismatch for '%s':\n"
-" expected: %s\n"
-" actual: %s\n"
-msgstr ""
-"Prüfsummenfehler für Datei »%s«:\n"
-" Erwartet: %s\n"
-" Tatsächlich: %s\n"
-
-#: ../libsvn_client/externals.c:364
-#, c-format
-msgid "Cannot insert a file external from '%s' into a working copy from a different repository rooted at '%s'"
-msgstr "Ein externer Dateiverweis von »%s« kann nicht in die Arbeitskopie eines anderen Projektarchivs mit der Wurzel »%s« eingefügt werden"
-
-#: ../libsvn_client/externals.c:401
-#, c-format
-msgid "The file external from '%s' cannot overwrite the existing versioned item at '%s'"
-msgstr "Der externe Dateiverweis von »%s« kann nicht das existierende versionierte Objekt bei »%s« überschreiben"
-
-#: ../libsvn_client/externals.c:427
-#, c-format
-msgid "The file external from '%s' cannot be written to '%s' while '%s' remains in conflict"
-msgstr "Der externe Dateiverweis von »%s« kann nicht in »%s« geschrieben werden, solange »%s« in Konflikt steht"
-
-#: ../libsvn_client/externals.c:536
-#, c-format
-msgid "URL '%s' does not begin with a scheme"
-msgstr "Die URL »%s« beginnt nicht mit einem Schema"
-
-#: ../libsvn_client/externals.c:603
-#, c-format
-msgid "Illegal parent directory URL '%s'"
-msgstr "Illegale URL des übergeordneten Verzeichnisses »%s«"
-
-#: ../libsvn_client/externals.c:639
-#, c-format
-msgid "Illegal repository root URL '%s'"
-msgstr "Illegale Projektarchivwurzel-URL »%s«"
-
-#: ../libsvn_client/externals.c:686
-#, c-format
-msgid "The external relative URL '%s' cannot have backpaths, i.e. '..'"
-msgstr "Die externe relative URL »%s« darf keinen Verweis auf übergeordnete Pfade haben, d.h. »..«"
-
-#: ../libsvn_client/externals.c:714
-#, c-format
-msgid "Unrecognized format for the relative external URL '%s'"
-msgstr "Unbekanntes Format für die relative externe URL »%s«"
-
-#: ../libsvn_client/externals.c:806
-#, c-format
-msgid "URL '%s' at revision %ld doesn't exist"
-msgstr "URL »%s« existiert nicht in Revision %ld"
-
-#: ../libsvn_client/externals.c:812
-#, c-format
-msgid "URL '%s' at revision %ld is not a file or a directory"
-msgstr "URL »%s« in Revision %ld ist weder eine Datei noch ein Verzeichnis"
-
-#: ../libsvn_client/externals.c:1111
-#, c-format
-msgid "Traversal of '%s' found no ambient depth"
-msgstr "Durchlauf von »%s« fand keine äußere Tiefe"
-
-#: ../libsvn_client/externals.c:1262
-#, c-format
-msgid "'%s' is not a URL"
-msgstr "»%s« ist keine URL"
-
-#: ../libsvn_client/info.c:103 ../libsvn_wc/crop.c:353
-#: ../libsvn_wc/props.c:271 ../libsvn_wc/update_editor.c:5358
-#: ../libsvn_wc/wc_db.c:596 ../libsvn_wc/wc_db.c:2039
-#: ../libsvn_wc/wc_db.c:2132 ../libsvn_wc/wc_db.c:2191
-#: ../libsvn_wc/wc_db.c:2215 ../libsvn_wc/wc_db.c:5456
-#: ../libsvn_wc/wc_db.c:5884 ../libsvn_wc/wc_db.c:6834
-#: ../libsvn_wc/wc_db.c:6952 ../libsvn_wc/wc_db.c:7016
-#: ../libsvn_wc/wc_db.c:7228 ../libsvn_wc/wc_db.c:8277
-#: ../libsvn_wc/wc_db.c:8457 ../libsvn_wc/wc_db.c:8795
+#: ../libsvn_client/export.c:264 ../libsvn_client/export.c:1526
+#: ../libsvn_wc/copy.c:583 ../libsvn_wc/crop.c:233 ../libsvn_wc/crop.c:324
+#: ../libsvn_wc/info.c:394 ../libsvn_wc/props.c:229 ../libsvn_wc/status.c:2777
+#: ../libsvn_wc/wc_db.c:2453 ../libsvn_wc/wc_db.c:2647
+#: ../libsvn_wc/wc_db.c:2671 ../libsvn_wc/wc_db.c:2829
+#: ../libsvn_wc/wc_db.c:5333 ../libsvn_wc/wc_db.c:5653
+#: ../libsvn_wc/wc_db.c:5812 ../libsvn_wc/wc_db.c:5918
+#: ../libsvn_wc/wc_db.c:7728 ../libsvn_wc/wc_db.c:8181
+#: ../libsvn_wc/wc_db.c:8811 ../libsvn_wc/wc_db.c:8968
+#: ../libsvn_wc/wc_db.c:9374 ../libsvn_wc/wc_db.c:10754
+#: ../libsvn_wc/wc_db.c:10830 ../libsvn_wc/wc_db.c:11345
+#: ../libsvn_wc/wc_db.c:12378 ../libsvn_wc/wc_db.c:12437
+#: ../libsvn_wc/wc_db.c:12558 ../libsvn_wc/wc_db.c:12716
+#: ../libsvn_wc/wc_db.c:13153 ../libsvn_wc/wc_db.c:13962
#, c-format
msgid "The node '%s' was not found."
msgstr "Der Knoten »%s« wurde nicht gefunden."
-#: ../libsvn_client/info.c:565
-#, c-format
-msgid "Server does not support retrieving information about the repository root"
-msgstr "Server unterstützt die Abfrage von Informationen über die Projektarchivwurzel nicht"
+#: ../libsvn_client/export.c:282 ../libsvn_client/export.c:1183
+#: ../libsvn_client/export.c:1240
+#, fuzzy, c-format
+msgid "Destination file '%s' exists, and will not be overwritten unless forced"
+msgstr "Zielverzeichnis existiert und kann nur mittels »--force« überschrieben werden"
-#: ../libsvn_client/info.c:572 ../libsvn_client/info.c:587
-#: ../libsvn_client/info.c:597
+#: ../libsvn_client/export.c:288 ../libsvn_client/export.c:1188
+#: ../libsvn_client/export.c:1245
+#, fuzzy, c-format
+msgid "Destination '%s' exists. Cannot overwrite directory with non-directory"
+msgstr "Ziel »%s« ist kein Verzeichnis"
+
+#: ../libsvn_client/export.c:473 ../libsvn_client/export.c:620
+#: ../libsvn_client/export.c:1077
+#, c-format
+msgid "'%s' exists and is not a directory"
+msgstr "»%s« existiert und ist kein Verzeichnis"
+
+#: ../libsvn_client/export.c:477 ../libsvn_client/export.c:624
+#: ../libsvn_client/export.c:1081
+#, c-format
+msgid "'%s' already exists"
+msgstr "»%s« existiert bereits"
+
+#: ../libsvn_client/export.c:811 ../libsvn_client/repos_diff.c:977
+#: ../libsvn_fs_fs/dag.c:1051 ../libsvn_ra_svn/client.c:1208
+#: ../libsvn_wc/diff_editor.c:1612 ../libsvn_wc/externals.c:646
+#: ../libsvn_wc/update_editor.c:4027
+#, c-format
+msgid "Checksum mismatch for '%s'"
+msgstr "Prüfsummenfehler für »%s«"
+
+#: ../libsvn_client/externals.c:408
+#, fuzzy, c-format
+msgid "Cannot insert a file external defined on '%s' into the working copy '%s'."
+msgstr "Ein externer Dateiverweis von »%s« kann nicht in die Arbeitskopie eines anderen Projektarchivs mit der Wurzel »%s« eingefügt werden"
+
+#: ../libsvn_client/externals.c:441
+#, c-format
+msgid "The file external from '%s' cannot overwrite the existing versioned item at '%s'"
+msgstr "Der externe Dateiverweis von »%s« kann nicht das existierende versionierte Objekt bei »%s« überschreiben"
+
+#: ../libsvn_client/externals.c:458
+#, fuzzy, c-format
+msgid "The file external '%s' can not be created because the node exists."
+msgstr "Der externe Dateiverweis von »%s« kann nicht das existierende versionierte Objekt bei »%s« überschreiben"
+
+#: ../libsvn_client/externals.c:684
+#, c-format
+msgid "URL '%s' at revision %ld doesn't exist"
+msgstr "URL »%s« existiert nicht in Revision %ld"
+
+#: ../libsvn_client/externals.c:689
+#, c-format
+msgid "URL '%s' at revision %ld is not a file or a directory"
+msgstr "URL »%s« in Revision %ld ist weder eine Datei noch ein Verzeichnis"
+
+#: ../libsvn_client/externals.c:755
+#, fuzzy, c-format
+msgid "Unsupported external: URL of file external '%s' is not in repository '%s'"
+msgstr "Kann externen Dateiverweis auf »%s« nicht hinzufügen, da dies keine Datei im Projektarchiv »%s« ist."
+
+#: ../libsvn_client/externals.c:873 ../libsvn_client/externals.c:1076
+#: ../libsvn_wc/update_editor.c:1143
+#, c-format
+msgid "Path '%s' is not in the working copy"
+msgstr "Pfad »%s« ist nicht in der Arbeitskopie enthalten"
+
+#: ../libsvn_client/externals.c:951
+#, c-format
+msgid "Traversal of '%s' found no ambient depth"
+msgstr "Durchlauf von »%s« fand keine äußere Tiefe"
+
+#: ../libsvn_client/import.c:158
+#, c-format
+msgid "%s property on '%s' contains unrecognized EOL-style '%s'"
+msgstr ""
+
+#: ../libsvn_client/import.c:489
+#, c-format
+msgid "Unknown or unversionable type for '%s'"
+msgstr "Unbekannter oder unerwarteter Typ für »%s«"
+
+#: ../libsvn_client/import.c:706
+msgid "New entry name required when importing a file"
+msgstr "Neuer Eintragsname erforderlich, wenn eine Datei importiert wird"
+
+#: ../libsvn_client/import.c:757 ../libsvn_client/patch.c:2965
+#: ../libsvn_client/patch.c:2977 ../libsvn_wc/adm_ops.c:575
+#: ../libsvn_wc/lock.c:121 ../libsvn_wc/wc_db_wcroot.c:76
+#, c-format
+msgid "'%s' does not exist"
+msgstr "»%s« ist nicht vorhanden"
+
+#: ../libsvn_client/import.c:910
+#, c-format
+msgid "'%s' is a reserved name and cannot be imported"
+msgstr "»%s« ist ein reservierter Name und kann nicht importiert werden "
+
+#: ../libsvn_client/info.c:310 ../libsvn_client/list.c:320
#, c-format
msgid "URL '%s' non-existent in revision %ld"
msgstr "URL »%s« existiert nicht in Revision %ld"
-#: ../libsvn_client/list.c:249
-#, c-format
-msgid "URL '%s' non-existent in that revision"
-msgstr "URL »%s« existiert nicht in dieser Revision"
-
-#: ../libsvn_client/locking_commands.c:237
+#: ../libsvn_client/locking_commands.c:257
+#: ../libsvn_client/locking_commands.c:283
msgid "No common parent found, unable to operate on disjoint arguments"
msgstr "Kein gemeinsamer Vorgänger gefunden. Kann nicht mit disjunkten Pfaden arbeiten"
-#: ../libsvn_client/locking_commands.c:282 ../libsvn_client/merge.c:9006
-#: ../libsvn_client/merge.c:9013 ../libsvn_client/merge.c:10240
-#: ../libsvn_client/merge.c:10515 ../libsvn_client/ra.c:484
-#: ../libsvn_client/ra.c:678 ../libsvn_client/update.c:99
+#: ../libsvn_client/locking_commands.c:302 ../libsvn_client/ra.c:490
+#: ../libsvn_client/ra.c:793
#, c-format
msgid "'%s' has no URL"
msgstr "»%s« hat keine URL"
-#: ../libsvn_client/locking_commands.c:305
+#: ../libsvn_client/locking_commands.c:316
msgid "Unable to lock/unlock across multiple repositories"
msgstr "Unmöglich über mehrere Projektarchive zu (ent)sperren"
-#: ../libsvn_client/locking_commands.c:346
+#: ../libsvn_client/locking_commands.c:365
#, c-format
msgid "'%s' is not locked in this working copy"
msgstr "»%s« ist in dieser Arbeitskopie nicht gesperrt"
-#: ../libsvn_client/locking_commands.c:391
+#: ../libsvn_client/locking_commands.c:408
#, c-format
msgid "'%s' is not locked"
msgstr "»%s« ist nicht gesperrt"
-#: ../libsvn_client/locking_commands.c:425 ../libsvn_fs/fs-loader.c:1269
-#: ../libsvn_ra/ra_loader.c:1056
+#: ../libsvn_client/locking_commands.c:442 ../libsvn_fs/fs-loader.c:1383
+#: ../libsvn_ra/ra_loader.c:1055
msgid "Lock comment contains illegal characters"
msgstr "Sperrkommentar enthält illegale Zeichen"
-#: ../libsvn_client/log.c:299 ../libsvn_client/log.c:357
+#: ../libsvn_client/log.c:296 ../libsvn_client/log.c:353
msgid "Missing required revision specification"
msgstr "Es wurde keine Revision angegeben"
-#: ../libsvn_client/log.c:401
+#: ../libsvn_client/log.c:402
#, c-format
msgid "'%s' is not a relative path"
msgstr "»%s« ist kein relativer Pfad"
-#: ../libsvn_client/log.c:422
+#: ../libsvn_client/log.c:424
msgid "When specifying working copy paths, only one target may be given"
msgstr "Bei Pfaden innerhalb der Arbeitskopie darf nur ein Ziel angegeben werden"
-#: ../libsvn_client/log.c:448 ../libsvn_client/status.c:388
+#: ../libsvn_client/log.c:450 ../libsvn_client/status.c:370
#, c-format
msgid "Entry '%s' has no URL"
msgstr "Eintrag »%s« hat keine URL"
-#: ../libsvn_client/merge.c:179
-#, c-format
-msgid "URLs have no scheme ('%s' and '%s')"
-msgstr "Die URLs haben kein Schema (»%s« und »%s«)"
+#: ../libsvn_client/merge.c:440
+#, fuzzy, c-format
+msgid "Url '%s' of '%s' is not in repository '%s'"
+msgstr "»%s« ist nicht im selben Projektarchiv wie »%s«"
-#: ../libsvn_client/merge.c:185 ../libsvn_client/merge.c:191
+#: ../libsvn_client/merge.c:477
#, c-format
-msgid "URL has no scheme: '%s'"
-msgstr "URL hat kein Schema: »%s«"
-
-#: ../libsvn_client/merge.c:198
-#, c-format
-msgid "Access scheme mixtures not yet supported ('%s' and '%s')"
-msgstr "Gemischte Zugriffsverfahren werden noch nicht unterstützt (»%s« and »%s«)"
+msgid "'%s' must be from the same repository as '%s'"
+msgstr "»%s« muss aus dem selben Projektarchiv wie »%s« stammen"
# Lustig: .working wird nicht übersetzt, .merge-left aber schon
# und das auch noch inkonsistent...
#. xgettext: the '.working', '.merge-left.r%ld' and
#. '.merge-right.r%ld' strings are used to tag onto a file
#. name in case of a merge conflict
-#: ../libsvn_client/merge.c:1482
+#: ../libsvn_client/merge.c:1780
msgid ".working"
msgstr ".working"
-#: ../libsvn_client/merge.c:1484
+#: ../libsvn_client/merge.c:1782
#, c-format
msgid ".merge-left.r%ld"
msgstr ".merge-links.r%ld"
-#: ../libsvn_client/merge.c:1487
+#: ../libsvn_client/merge.c:1785
#, c-format
msgid ".merge-right.r%ld"
msgstr ".merge-rechts.r%ld"
-#: ../libsvn_client/merge.c:3957
+#: ../libsvn_client/merge.c:4372
msgid "Cannot reverse-merge a range from a path's own future history; try updating first"
msgstr "Kann keinen Bereich aus der zukünftigen Geschichte des Pfades rückwärts zusammenführen; versuchen Sie zuerst zu aktualisieren"
-#: ../libsvn_client/merge.c:4661
+#: ../libsvn_client/merge.c:5030
#, c-format
msgid ""
"One or more conflicts were produced while merging r%ld:%ld into\n"
@@ -1896,66 +2011,74 @@
"Lösen Sie alle Konflikte auf und starten Sie die Zusammenführung\n"
"erneut, um die fehlenden Revisionen zusammenzuführen"
-#: ../libsvn_client/merge.c:5820
+#: ../libsvn_client/merge.c:5904
+#, c-format
+msgid "Invalid mergeinfo detected on '%s', mergetracking not possible"
+msgstr ""
+
+#: ../libsvn_client/merge.c:6054
msgid "Merge tracking not allowed with missing subtrees; try restoring these items first:\n"
msgstr "Zusammenführungsverfolgung nicht erlaubt bei fehlenden Unterbäumen; versuchen Sie diese Elemente erst wiederherzustellen:\n"
-#: ../libsvn_client/merge.c:8502
+#: ../libsvn_client/merge.c:7059
+#, c-format
+msgid "Invalid mergeinfo detected on merge target '%s', mergetracking not possible"
+msgstr ""
+
+#: ../libsvn_client/merge.c:9236
msgid "Use of two URLs is not compatible with mergeinfo modification"
msgstr "Die Verwendung zweier URLs ist nicht kompatibel mit Änderungen der Zusammenführungsinformationen"
-#: ../libsvn_client/merge.c:8509 ../libsvn_client/merge.c:8793
+#: ../libsvn_client/merge.c:9243 ../libsvn_client/merge.c:9498
msgid "Merge from foreign repository is not compatible with mergeinfo modification"
msgstr "Die Zusammenführung aus fremdem Projektarchiv ist nicht kompatibel mit Änderungen der Zusammenführungsinformationen"
-#: ../libsvn_client/merge.c:8522 ../libsvn_client/merge.c:9021
-#: ../libsvn_client/merge.c:10523
+#: ../libsvn_client/merge.c:9254 ../libsvn_client/merge.c:9575
#, c-format
msgid "Merge target '%s' does not exist in the working copy"
msgstr "Zusammenführungsziel »%s« ist nicht in der Arbeitskopie enthalten"
-#: ../libsvn_client/merge.c:8896
-msgid "Cannot merge into a working copy with a switched subtree"
-msgstr "Kann nicht in eine Arbeitskopie mit umgestelltem Unterbaum zusammenführen"
-
-#: ../libsvn_client/merge.c:8901
-msgid "Cannot merge into a working copy that has local modifications"
-msgstr "Kann nicht in eine Arbeitskopie mit lokalen Änderungen zusammenführen"
-
-#: ../libsvn_client/merge.c:8918
+#: ../libsvn_client/merge.c:9598
msgid "Cannot determine revision of working copy"
msgstr "Die Revision der Arbeitskopie kann nicht bestimmt werden"
-#: ../libsvn_client/merge.c:8924
-#, c-format
-msgid "Cannot merge into mixed-revision working copy [%lu:%lu]; try updating first"
+#: ../libsvn_client/merge.c:9604
+#, fuzzy, c-format
+msgid "Cannot merge into mixed-revision working copy [%ld:%ld]; try updating first"
msgstr "Kann nicht in eine Arbeitskopie mit verschiedenen Revisionen zusammenführen [%lu:%lu], versuchen Sie erst zu aktualisieren"
-#: ../libsvn_client/merge.c:8987 ../svn/merge-cmd.c:348
+#: ../libsvn_client/merge.c:9619
+msgid "Cannot merge into a working copy with a switched subtree"
+msgstr "Kann nicht in eine Arbeitskopie mit umgestelltem Unterbaum zusammenführen"
+
+#: ../libsvn_client/merge.c:9635
+msgid "Cannot merge into a working copy that has local modifications"
+msgstr "Kann nicht in eine Arbeitskopie mit lokalen Änderungen zusammenführen"
+
+#: ../libsvn_client/merge.c:9655 ../svn/merge-cmd.c:118
+#, c-format
+msgid "Invalid merge source '%s'; a working copy path can only be used with a repository revision (a number, a date, or head)"
+msgstr ""
+
+#: ../libsvn_client/merge.c:9953 ../svn/merge-cmd.c:546
msgid "Merge sources must both be either paths or URLs"
msgstr "Zusammenführungsquellen müssen beide Pfade oder URLs sein"
-#: ../libsvn_client/merge.c:9059 ../libsvn_ra/ra_loader.c:539
-#, c-format
-msgid "'%s' isn't in the same repository as '%s'"
-msgstr "»%s« ist nicht im selben Projektarchiv wie »%s«"
-
-#: ../libsvn_client/merge.c:10057 ../libsvn_client/merge.c:10348
+#: ../libsvn_client/merge.c:10717 ../libsvn_client/merge.c:10883
#, c-format
msgid "'%s@%ld' must be ancestrally related to '%s@%ld'"
msgstr "»%s@%ld« muss eine Vorgängerbeziehung zu »%s@%ld« haben"
-#: ../libsvn_client/merge.c:10258
-#, c-format
-msgid "'%s' must be from the same repository as '%s'"
-msgstr "»%s« muss aus dem selben Projektarchiv wie »%s« stammen"
-
-#: ../libsvn_client/merge.c:10290
+#: ../libsvn_client/merge.c:10829
#, c-format
msgid "Neither the reintegrate source nor target can be the root of the repository"
msgstr "Weder die Quelle noch das Ziel der Wiedereingliederung darf Wurzel des Projektarchivs sein"
-#: ../libsvn_client/merge.c:10376
+#: ../libsvn_client/merge.c:10839
+msgid "Reintegrate merge not possible"
+msgstr ""
+
+#: ../libsvn_client/merge.c:10912
#, c-format
msgid ""
"Reintegrate can only be used if revisions %ld through %ld were previously merged from %s to the reintegrate source, but this is not the case:\n"
@@ -1964,146 +2087,190 @@
"Reintegration kann nur genutzt werden, falls die Revisionen %ld bis %ld vorher von %s in die zurück integrierende Quelle zusammengeführt wurden, aber dies ist nicht der Fall:\n"
"%s"
-#: ../libsvn_client/mergeinfo.c:1721
+#: ../libsvn_client/merge.c:10974
+#, c-format
+msgid "Can't reintegrate into '%s' because it is locally added and therefore not related to the merge source"
+msgstr ""
+
+#: ../libsvn_client/merge.c:11830
+msgid "The required merge is reintegrate-like, and the record-only option cannot be used with this kind of merge"
+msgstr ""
+
+#: ../libsvn_client/merge.c:11836
+msgid "The required merge is reintegrate-like, and the depth option cannot be used with this kind of merge"
+msgstr ""
+
+#: ../libsvn_client/merge.c:11842
+msgid "The required merge is reintegrate-like, and the force option cannot be used with this kind of merge"
+msgstr ""
+
+#: ../libsvn_client/mergeinfo.c:1699
msgid "Only depths 'infinity' and 'empty' are currently supported"
msgstr "Nur Tiefenangaben von »infinity« und »empty« werden momentan unterstützt"
-#: ../libsvn_client/patch.c:243
+#: ../libsvn_client/patch.c:276
#, c-format
msgid "Cannot strip %u components from '%s'"
msgstr "Kann nicht %u Komponenten von »%s« entfernen"
-#: ../libsvn_client/patch.c:2754
+#: ../libsvn_client/patch.c:2954
msgid "strip count must be positive"
msgstr "Anzahl der zu entfernenden Komponenten muss positiv sein"
-#: ../libsvn_client/prop_commands.c:80
+#: ../libsvn_client/patch.c:2970 ../libsvn_fs_base/tree.c:3981
+#: ../libsvn_fs_base/tree.c:3986 ../libsvn_fs_fs/tree.c:2966
+#: ../libsvn_fs_fs/tree.c:2971 ../libsvn_ra/compat.c:674
+#: ../libsvn_ra_local/ra_plugin.c:1141
+#, c-format
+msgid "'%s' is not a file"
+msgstr "»%s« ist keine Datei"
+
+#: ../libsvn_client/patch.c:2982 ../libsvn_wc/util.c:59
+#, c-format
+msgid "'%s' is not a directory"
+msgstr "»%s« ist kein Verzeichnis"
+
+#: ../libsvn_client/prop_commands.c:60
#, c-format
msgid "'%s' is a wcprop, thus not accessible to clients"
msgstr "»%s« ist eine AK-Eigenschaft und damit den Clients nicht zugänglich"
-#: ../libsvn_client/prop_commands.c:216
+#: ../libsvn_client/prop_commands.c:155
#, c-format
msgid "Property '%s' is not a regular property"
msgstr "Eigenschaft »%s« ist keine reguläre Eigenschaft"
-#: ../libsvn_client/prop_commands.c:363
+#: ../libsvn_client/prop_commands.c:267
#, c-format
msgid "Revision property '%s' not allowed in this context"
msgstr "Revisionseigenschaft »%s« ist in diesem Kontext nicht erlaubt"
-#: ../libsvn_client/prop_commands.c:370 ../libsvn_client/prop_commands.c:524
+#: ../libsvn_client/prop_commands.c:274 ../libsvn_client/prop_commands.c:472
#, c-format
msgid "Bad property name: '%s'"
msgstr "Ungültiger Name für Eigenschaft: »%s«"
-#: ../libsvn_client/prop_commands.c:380
-#, c-format
-msgid "Setting property on non-local target '%s' needs a base revision"
+#: ../libsvn_client/prop_commands.c:302
+#, fuzzy
+msgid "Targets must be working copy paths"
+msgstr "Kann keinen Pfad einer Arbeitskopie finden"
+
+#: ../libsvn_client/prop_commands.c:366
+#, fuzzy
+msgid "Targets must be URLs"
+msgstr "Ziel muss eine URL angeben"
+
+#: ../libsvn_client/prop_commands.c:376
+#, fuzzy
+msgid "Setting property on non-local targets needs a base revision"
msgstr "Das Setzen einer Eigenschaft für ein nicht lokales Ziel »%s« benötigt eine Basisrevision"
-#: ../libsvn_client/prop_commands.c:385
-#, c-format
-msgid "Setting property recursively on non-local target '%s' is not supported"
-msgstr "Das rekursive Setzen einer Eigenschaft für ein nicht lokales Ziel »%s« wird nicht unterstützt"
-
-#: ../libsvn_client/prop_commands.c:400
-#, c-format
-msgid "Setting property '%s' on non-local target '%s' is not supported"
+#: ../libsvn_client/prop_commands.c:391
+#, fuzzy, c-format
+msgid "Setting property '%s' on non-local targets is not supported"
msgstr "Das Setzen der Eigenschaft »%s« für ein nicht lokales Ziel »%s« wird nicht unterstützt"
-#: ../libsvn_client/prop_commands.c:471
+#: ../libsvn_client/prop_commands.c:419
#, c-format
msgid "revprop '%s' in r%ld is unexpectedly absent in repository (maybe someone else deleted it?)"
msgstr "Revisionseigenschaft »%s« in r%ld fehlt unerwarteterweise im Projektarchiv (eventuell hat jemand anderer sie gelöscht?)"
-#: ../libsvn_client/prop_commands.c:480
+#: ../libsvn_client/prop_commands.c:428
#, c-format
msgid "revprop '%s' in r%ld has unexpected value in repository (maybe someone else changed it?)"
msgstr "Revisionseigenschaft »%s« in r%ld hat einen unerwarteten Wert im Projektarchiv (eventuell hat jemand anderer sie geändert?)"
-#: ../libsvn_client/prop_commands.c:488
+#: ../libsvn_client/prop_commands.c:436
#, c-format
msgid "revprop '%s' in r%ld is unexpectedly present in repository (maybe someone else set it?)"
msgstr "Revisionseigenschaft »%s« in r%ld ist unerwarteterweise im Projektarchiv vorhanden (eventuell hat jemand anderer sie gesetzt?)"
-#: ../libsvn_client/prop_commands.c:519
+#: ../libsvn_client/prop_commands.c:467
msgid "Author name should not contain a newline; value will not be set unless forced"
msgstr "Der Autorenname sollte keinen Zeilenvorschub enthalten; Wert kann nur mittels »force« gesetzt werden"
-#: ../libsvn_client/prop_commands.c:764
+#: ../libsvn_client/prop_commands.c:627
#, c-format
msgid "'%s' does not exist in revision %ld"
msgstr "»%s« existiert nicht in Revision %ld"
-#: ../libsvn_client/prop_commands.c:771 ../libsvn_client/prop_commands.c:1089
-#: ../libsvn_wc/crop.c:183
+#: ../libsvn_client/prop_commands.c:633 ../libsvn_client/prop_commands.c:1141
+#: ../libsvn_wc/crop.c:165
#, c-format
msgid "Unknown node kind for '%s'"
msgstr "»%s« hat einen unbekannten Knotentyp"
-#: ../libsvn_client/ra.c:145
+#: ../libsvn_client/ra.c:157
#, c-format
msgid "Attempt to set wc property '%s' on '%s' in a non-commit operation"
msgstr ""
"Versuch, die Eigenschaft »%s« der Arbeitskopie während einer\n"
"Nicht-Übertragungs-Operation auf »%s« zu setzen"
-#: ../libsvn_client/ra.c:378
+#: ../libsvn_client/ra.c:384
#, c-format
msgid "Redirect cycle detected for URL '%s'"
msgstr "Endlosschleife bei der Umleitung der URL »%s« entdeckt"
-#: ../libsvn_client/ra.c:750 ../libsvn_ra/compat.c:376
+#: ../libsvn_client/ra.c:660 ../libsvn_ra/compat.c:394
#, c-format
msgid "Unable to find repository location for '%s' in revision %ld"
msgstr "Kann »%s« in Revision %ld nicht im Projektarchiv finden"
-#: ../libsvn_client/ra.c:757
+#: ../libsvn_client/ra.c:672
#, c-format
msgid "The location for '%s' for revision %ld does not exist in the repository or refers to an unrelated object"
msgstr "»%s« für Revision %ld existiert nicht im Projektarchiv oder verweist auf ein nicht verwandtes Objekt"
-#: ../libsvn_client/relocate.c:115
+#: ../libsvn_client/relocate.c:117
#, c-format
msgid "'%s' is not the root of the repository"
msgstr "»%s« ist nicht die Basis des Projektarchivs"
# TODO: uuid or UUID?
-#: ../libsvn_client/relocate.c:122
+#: ../libsvn_client/relocate.c:124
#, c-format
msgid "The repository at '%s' has uuid '%s', but the WC has '%s'"
msgstr "Das Projektarchiv in »%s« hat die uuid »%s«, aber die Arbeitskopie hat »%s«"
-#: ../libsvn_client/revisions.c:113 ../libsvn_client/revisions.c:136
+#: ../libsvn_client/repos_diff.c:909 ../libsvn_wc/externals.c:566
+#, fuzzy, c-format
+msgid "Base checksum mismatch for '%s'"
+msgstr "Basis-Prüfsummenfehler bei »%s«"
+
+#: ../libsvn_client/revisions.c:113 ../libsvn_client/revisions.c:138
#, c-format
msgid "Path '%s' has no committed revision"
msgstr "Pfad »%s« hat keine übertragene Revision"
-#: ../libsvn_client/revisions.c:162
+#: ../libsvn_client/revisions.c:166
#, c-format
msgid "Unrecognized revision type requested for '%s'"
msgstr "Unbekannter Revisionstyp für »%s« angefragt"
-#: ../libsvn_client/revisions.c:185
+#: ../libsvn_client/revisions.c:189
msgid "PREV, BASE, or COMMITTED revision keywords are invalid for URL"
msgstr "PREV, BASE oder COMMITTED Revisions-Schlüsselwörter sind für die URL ungültig"
-#: ../libsvn_client/status.c:302 ../libsvn_client/status.c:331
-#: ../libsvn_client/status.c:340 ../libsvn_client/status.c:533
-#: ../libsvn_wc/lock.c:539 ../libsvn_wc/lock.c:899 ../libsvn_wc/lock.c:1598
-#: ../libsvn_wc/wc_db.c:7808 ../libsvn_wc/wc_db_pdh.c:485
+#: ../libsvn_client/status.c:323 ../libsvn_client/status.c:502
+#: ../libsvn_wc/lock.c:564 ../libsvn_wc/lock.c:856 ../libsvn_wc/lock.c:1538
+#: ../libsvn_wc/wc_db.c:11986 ../libsvn_wc/wc_db_wcroot.c:623
#, c-format
msgid "'%s' is not a working copy"
msgstr "»%s« ist keine Arbeitskopie"
-#: ../libsvn_client/switch.c:102
+#: ../libsvn_client/switch.c:105
#, c-format
msgid "Cannot both exclude and switch a path"
msgstr "Kann einen Pfad nicht sowohl ausschließen als auch umstellen"
-#: ../libsvn_client/switch.c:175 ../libsvn_ra_local/ra_plugin.c:199
-#: ../libsvn_ra_local/ra_plugin.c:275 ../libsvn_wc/update_editor.c:5032
+#: ../libsvn_client/switch.c:126
+#, fuzzy, c-format
+msgid "Cannot switch '%s' because it is not in the repository yet"
+msgstr "Kann »%s« nicht umplatzieren da es keine Basis einer Arbeitskopie ist"
+
+#: ../libsvn_client/switch.c:191 ../libsvn_ra_local/ra_plugin.c:231
+#: ../libsvn_ra_local/ra_plugin.c:318 ../libsvn_wc/update_editor.c:4608
#, c-format
msgid ""
"'%s'\n"
@@ -2114,170 +2281,230 @@
"ist nicht das selbe Projektarchiv wie\n"
"»%s«"
-#: ../libsvn_client/util.c:215
-#, c-format
-msgid "URL '%s' is not a child of repository root URL '%s'"
-msgstr "Die URL »%s« ist kein Kind der Projektarchivwurzel-URL »%s«"
+#: ../libsvn_client/switch.c:218
+#, fuzzy, c-format
+msgid "'%s' shares no common ancestry with '%s'"
+msgstr "»%s« hat keine Informationen über seine Vorgänger"
-#: ../libsvn_delta/svndiff.c:165
+#: ../libsvn_client/util.c:313 ../svn/util.c:976
+#, c-format
+msgid "Cannot mix repository and working copy targets"
+msgstr "Ziele aus dem Projektarchiv und einer Arbeitskopie können nicht gemischt werden"
+
+#: ../libsvn_delta/svndiff.c:175
msgid "Compression of svndiff data failed"
msgstr "Komprimierung der svndiff-Daten schlug fehl"
-#: ../libsvn_delta/svndiff.c:432
+#: ../libsvn_delta/svndiff.c:538
msgid "Decompression of svndiff data failed: no size"
msgstr "Dekomprimierung der svndiff-Daten schlug fehl: Größe fehlt"
-#: ../libsvn_delta/svndiff.c:435
+#: ../libsvn_delta/svndiff.c:541
msgid "Decompression of svndiff data failed: size too large"
msgstr "Dekomprimierung der svndiff-Daten schlug fehl: Größe zu groß"
-#: ../libsvn_delta/svndiff.c:456
+#: ../libsvn_delta/svndiff.c:565
msgid "Decompression of svndiff data failed"
msgstr "Dekomprimierung der svndiff-Daten schlug fehl"
-#: ../libsvn_delta/svndiff.c:463
+#: ../libsvn_delta/svndiff.c:572
msgid "Size of uncompressed data does not match stored original length"
msgstr "Die Größe der unkomprimierten Daten entspricht nicht der gespeicherten Originallänge"
-#: ../libsvn_delta/svndiff.c:538
+#: ../libsvn_delta/svndiff.c:648
#, c-format
msgid "Invalid diff stream: insn %d cannot be decoded"
msgstr "Ungültiger Diff-Strom: insn %d kann nicht dekodiert werden"
-#: ../libsvn_delta/svndiff.c:542
+#: ../libsvn_delta/svndiff.c:652
#, c-format
msgid "Invalid diff stream: insn %d has length zero"
msgstr "Ungültiger Diff-Strom: insn %d hat Länge Null"
-#: ../libsvn_delta/svndiff.c:546
+#: ../libsvn_delta/svndiff.c:656
#, c-format
msgid "Invalid diff stream: insn %d overflows the target view"
msgstr "Ungültiger Diff-Strom: insn %d läuft in die Zielansicht über"
-#: ../libsvn_delta/svndiff.c:555
+#: ../libsvn_delta/svndiff.c:665
#, c-format
msgid "Invalid diff stream: [src] insn %d overflows the source view"
msgstr "Ungültiger Diff-Strom: [Quelle] insn %d läuft in die Quellansicht über"
-#: ../libsvn_delta/svndiff.c:562
+#: ../libsvn_delta/svndiff.c:672
#, c-format
msgid "Invalid diff stream: [tgt] insn %d starts beyond the target view position"
msgstr "Ungültiger Diff-Strom: [Ziel] insn %d startet hinter der Zielposition"
-#: ../libsvn_delta/svndiff.c:569
+#: ../libsvn_delta/svndiff.c:679
#, c-format
msgid "Invalid diff stream: [new] insn %d overflows the new data section"
msgstr "Ungültiger Diff-Strom: [Neu] insn %d läuft in die neue Datensektion über"
-#: ../libsvn_delta/svndiff.c:579
+#: ../libsvn_delta/svndiff.c:689
msgid "Delta does not fill the target window"
msgstr "Delta füllt das Zielfenster nicht"
-#: ../libsvn_delta/svndiff.c:582
+#: ../libsvn_delta/svndiff.c:692
msgid "Delta does not contain enough new data"
msgstr "Delta enthält nicht genügend neue Daten"
-#: ../libsvn_delta/svndiff.c:688
+#: ../libsvn_delta/svndiff.c:797
msgid "Svndiff has invalid header"
msgstr "Svndiff-Daten enthalten ungültigen Kopf"
-#: ../libsvn_delta/svndiff.c:744 ../libsvn_delta/svndiff.c:908
+#: ../libsvn_delta/svndiff.c:853 ../libsvn_delta/svndiff.c:1017
msgid "Svndiff contains a too-large window"
msgstr "Svndiff-Daten enthalten ein zu großes Fenster"
-#: ../libsvn_delta/svndiff.c:751 ../libsvn_delta/svndiff.c:915
+#: ../libsvn_delta/svndiff.c:860 ../libsvn_delta/svndiff.c:1024
msgid "Svndiff contains corrupt window header"
msgstr "Svndiff-Daten enthalten defekte Fenster-Kopfdaten"
-#: ../libsvn_delta/svndiff.c:760
+#: ../libsvn_delta/svndiff.c:869
msgid "Svndiff has backwards-sliding source views"
msgstr "Svndiff-Daten enthalten rückwärts gleitenden Blick auf Quellen"
-#: ../libsvn_delta/svndiff.c:809 ../libsvn_delta/svndiff.c:856
-#: ../libsvn_delta/svndiff.c:937
+#: ../libsvn_delta/svndiff.c:918 ../libsvn_delta/svndiff.c:965
+#: ../libsvn_delta/svndiff.c:1046
msgid "Unexpected end of svndiff input"
msgstr "Unerwartetes Ende der Svndiff-Eingangsdaten"
-#: ../libsvn_diff/diff_file.c:466
+#: ../libsvn_diff/diff_file.c:1085
#, c-format
msgid "The file '%s' changed unexpectedly during diff"
msgstr "Die Datei »%s« veränderte sich unerwartet während des Vergleichs"
-#: ../libsvn_diff/diff_file.c:630
+#: ../libsvn_diff/diff_file.c:1255
msgid "Error in options to internal diff"
msgstr "Fehler in Optionen für internes Vergleichsprogramm"
-#: ../libsvn_diff/diff_file.c:656
+#: ../libsvn_diff/diff_file.c:1281
#, c-format
msgid "Invalid argument '%s' in diff options"
msgstr "Ungültiges Argument »%s« in Vergleichsoptionen"
-#: ../libsvn_diff/diff_file.c:942
-msgid "No newline at end of file"
-msgstr "Kein Zeilenumbruch am Ende der Datei"
-
#. Order of date components can be different in different languages
-#: ../libsvn_diff/diff_file.c:1149
+#: ../libsvn_diff/diff_file.c:1737
msgid "%a %b %e %H:%M:%S %Y"
msgstr "%a %e. %b %H:%M:%S %Y"
-#: ../libsvn_diff/diff_file.c:1766
+#: ../libsvn_diff/diff_file.c:2347
#, c-format
msgid "Failed to delete mmap '%s'"
msgstr "Konnte mmap »%s« nicht löschen"
-#: ../libsvn_fs/fs-loader.c:115 ../libsvn_ra/ra_loader.c:179
-#: ../libsvn_ra/ra_loader.c:192
+#: ../libsvn_diff/util.c:462
+#, c-format
+msgid " Reverse-merged %s:r%s%s"
+msgstr " Rückgängiges Zusammenführen: %s:r%s%s"
+
+#: ../libsvn_diff/util.c:479
+#, c-format
+msgid " Merged %s:r%s%s"
+msgstr " Zusammengeführt %s:r%s%s"
+
+#: ../libsvn_fs/editor.c:218
+#, c-format
+msgid "Revision for modifying '%s' is required"
+msgstr ""
+
+#: ../libsvn_fs/editor.c:227
+#, fuzzy, c-format
+msgid "'%s' is out of date; try updating"
+msgstr "Datei »%s« ist veraltet; versuchen Sie zu aktualisieren"
+
+#: ../libsvn_fs/editor.c:264
+#, fuzzy, c-format
+msgid "'%s' has been modified since the commit began (restart the commit)"
+msgstr "»%s« hat lokale Änderungen -- zuerst übertragen oder zurücksetzen"
+
+#: ../libsvn_fs/editor.c:322
+#, fuzzy, c-format
+msgid "'%s' already exists, so may be out of date; try updating"
+msgstr "Datei »%s« ist veraltet; versuchen Sie zu aktualisieren"
+
+#: ../libsvn_fs/editor.c:455
+#, fuzzy
+msgid "The filesystem does not support 'absent' nodes"
+msgstr "Dateisystemaktualisierung wird nicht unterstützt"
+
+#: ../libsvn_fs/fs-loader.c:120
+#, fuzzy, c-format
+msgid "Invalid name for FS type '%s'"
+msgstr "Ungültiger Wert für Feld »%s«"
+
+#: ../libsvn_fs/fs-loader.c:137 ../libsvn_ra/ra_loader.c:160
+#: ../libsvn_ra/ra_loader.c:173
#, c-format
msgid "'%s' does not define '%s()'"
msgstr "»%s« definiert »%s()« nicht"
-#: ../libsvn_fs/fs-loader.c:132
-#, c-format
-msgid "Can't grab FS mutex"
-msgstr "Kann FS Mutex nicht greifen"
-
-#: ../libsvn_fs/fs-loader.c:144
-#, c-format
-msgid "Can't ungrab FS mutex"
-msgstr "Kann FS Mutex nicht loslassen"
-
-#: ../libsvn_fs/fs-loader.c:165
+#: ../libsvn_fs/fs-loader.c:163
#, c-format
msgid "Failed to load module for FS type '%s'"
msgstr "Konnte Modul für Dateisystemtyp »%s« nicht laden"
-#: ../libsvn_fs/fs-loader.c:198
+#: ../libsvn_fs/fs-loader.c:185
#, c-format
msgid "Mismatched FS module version for '%s': found %d.%d.%d%s, expected %d.%d.%d%s"
msgstr "Versionen in Dateisystemmodul »%s« stimmen nicht überein: gefunden %d.%d.%d%s, erwartet %d.%d.%d%s"
-#: ../libsvn_fs/fs-loader.c:223
+#: ../libsvn_fs/fs-loader.c:265
#, c-format
msgid "Unknown FS type '%s'"
msgstr "Unbekannter Dateisystemtyp »%s«"
-#: ../libsvn_fs/fs-loader.c:313
-#, c-format
-msgid "Can't allocate FS mutex"
-msgstr "Kann FS Mutex nicht anlegen"
-
-#: ../libsvn_fs/fs-loader.c:348
+#: ../libsvn_fs/fs-loader.c:387
#, c-format
msgid "Path '%s' is not in UTF-8"
msgstr "Pfad »%s« ist kein UTF-8"
-#: ../libsvn_fs/fs-loader.c:356
+#: ../libsvn_fs/fs-loader.c:395
#, c-format
msgid "Path '%s' contains '.' or '..' element"
msgstr "Pfad »%s« enthält ein Element ».« oder »..«"
-#: ../libsvn_fs/fs-loader.c:1251
+#: ../libsvn_fs/fs-loader.c:534 ../libsvn_repos/repos.c:2017
+msgid "Hotcopy source and destination are equal"
+msgstr ""
+
+#: ../libsvn_fs/fs-loader.c:544
+#, fuzzy, c-format
+msgid "'%s' already exists and is a file"
+msgstr "»%s« existiert bereits und ist im Weg"
+
+#: ../libsvn_fs/fs-loader.c:549
+#, fuzzy, c-format
+msgid "'%s' already exists and has an unknown node kind"
+msgstr "»%s« existiert bereits und ist im Weg"
+
+#: ../libsvn_fs/fs-loader.c:567
+#, c-format
+msgid "The filesystem type of the hotcopy source ('%s') does not match the filesystem type of the hotcopy destination ('%s')"
+msgstr ""
+
+#: ../libsvn_fs/fs-loader.c:1365
#, c-format
msgid "Malformed UUID '%s'"
msgstr "Fehlerhafte UUID »%s«"
-#: ../libsvn_fs/fs-loader.c:1275
+#: ../libsvn_fs/fs-loader.c:1393
+#, fuzzy, c-format
+msgid "Lock token URI '%s' has bad scheme; expected '%s'"
+msgstr "UUID des Projektarchivs »%s« entspricht nicht der erwarteten UUID »%s«"
+
+#: ../libsvn_fs/fs-loader.c:1400
+#, fuzzy, c-format
+msgid "Lock token '%s' is not ASCII at byte %u"
+msgstr "Sperrdatei »%s« ist keine reguläre Datei"
+
+#: ../libsvn_fs/fs-loader.c:1407
+#, fuzzy, c-format
+msgid "Lock token URI '%s' is not XML-safe"
+msgstr "Sperrdatei »%s« ist keine reguläre Datei"
+
+#: ../libsvn_fs/fs-loader.c:1414
msgid "Negative expiration date passed to svn_fs_lock"
msgstr "Negatives Ablaufdatum an svn_fs_lock übergeben"
@@ -2286,48 +2513,48 @@
msgid "Berkeley DB error for filesystem '%s' while %s:\n"
msgstr "Berkeley-DB-Fehler für Dateisystem »%s« während %s:\n"
-#: ../libsvn_fs_base/bdb/changes-table.c:92
+#: ../libsvn_fs_base/bdb/changes-table.c:93
msgid "creating change"
msgstr "Erzeuge Änderungen"
-#: ../libsvn_fs_base/bdb/changes-table.c:116
+#: ../libsvn_fs_base/bdb/changes-table.c:117
msgid "deleting changes"
msgstr "Lösche Änderungen"
-#: ../libsvn_fs_base/bdb/changes-table.c:148 ../libsvn_fs_fs/fs_fs.c:4012
+#: ../libsvn_fs_base/bdb/changes-table.c:149 ../libsvn_fs_fs/fs_fs.c:5817
msgid "Missing required node revision ID"
msgstr "Für den Knoten fehlt eine erforderliche Revisions ID"
-#: ../libsvn_fs_base/bdb/changes-table.c:159 ../libsvn_fs_fs/fs_fs.c:4022
+#: ../libsvn_fs_base/bdb/changes-table.c:160 ../libsvn_fs_fs/fs_fs.c:5827
msgid "Invalid change ordering: new node revision ID without delete"
msgstr "Ungültige Reihenfolge bei Änderung: Neue Knoten Revisions ID ohne Löschen"
-#: ../libsvn_fs_base/bdb/changes-table.c:169 ../libsvn_fs_fs/fs_fs.c:4033
+#: ../libsvn_fs_base/bdb/changes-table.c:170 ../libsvn_fs_fs/fs_fs.c:5838
msgid "Invalid change ordering: non-add change on deleted path"
msgstr "Ungültige Reihenfolge bei Änderung: Nicht-hinzufügende Änderung auf gelöschtem Pfad"
-#: ../libsvn_fs_base/bdb/changes-table.c:178 ../libsvn_fs_fs/fs_fs.c:4042
+#: ../libsvn_fs_base/bdb/changes-table.c:179 ../libsvn_fs_fs/fs_fs.c:5847
msgid "Invalid change ordering: add change on preexisting path"
msgstr "Ungültige Reihenfolge bei Änderung: Hinzufügende Änderung auf schon vorhandenem Pfad"
-#: ../libsvn_fs_base/bdb/changes-table.c:270
-#: ../libsvn_fs_base/bdb/changes-table.c:393
+#: ../libsvn_fs_base/bdb/changes-table.c:271
+#: ../libsvn_fs_base/bdb/changes-table.c:394
msgid "creating cursor for reading changes"
msgstr "Erzeuge Cursor zum Lesen der Änderungen"
-#: ../libsvn_fs_base/bdb/changes-table.c:295
-#: ../libsvn_fs_base/bdb/changes-table.c:414
+#: ../libsvn_fs_base/bdb/changes-table.c:296
+#: ../libsvn_fs_base/bdb/changes-table.c:415
#, c-format
msgid "Error reading changes for key '%s'"
msgstr "Fehler beim Lesen der Änderungen für Schlüssel »%s«"
-#: ../libsvn_fs_base/bdb/changes-table.c:354
-#: ../libsvn_fs_base/bdb/changes-table.c:437
+#: ../libsvn_fs_base/bdb/changes-table.c:355
+#: ../libsvn_fs_base/bdb/changes-table.c:438
msgid "fetching changes"
msgstr "Hole Änderungen"
-#: ../libsvn_fs_base/bdb/changes-table.c:367
-#: ../libsvn_fs_base/bdb/changes-table.c:450
+#: ../libsvn_fs_base/bdb/changes-table.c:368
+#: ../libsvn_fs_base/bdb/changes-table.c:451
msgid "closing changes cursor"
msgstr "Schließe Änderungscursor"
@@ -2346,6 +2573,11 @@
msgid "storing checksum-reps record"
msgstr "Speichere »checksum-reps«-Datensatz"
+#: ../libsvn_fs_base/bdb/checksum-reps-table.c:164
+#, fuzzy
+msgid "deleting entry from 'checksum-reps' table"
+msgstr "Lösche Eintrag aus »copies« Tabelle"
+
#: ../libsvn_fs_base/bdb/checksum-reps-table.c:186
msgid "allocating new representation reuse ID (getting 'next-key')"
msgstr "Allokiere neuen Wiederverwendungsschlüssel für Darstellung (hole »next-key«)"
@@ -2374,6 +2606,65 @@
msgid "reading copy"
msgstr "lese Kopie"
+#: ../libsvn_fs_base/bdb/lock-tokens-table.c:87
+#, fuzzy
+msgid "storing lock token record"
+msgstr "Speichere Kopiedatensatz"
+
+#: ../libsvn_fs_base/bdb/lock-tokens-table.c:108
+#, fuzzy
+msgid "deleting entry from 'lock-tokens' table"
+msgstr "Lösche Eintrag aus »copies« Tabelle"
+
+#: ../libsvn_fs_base/bdb/lock-tokens-table.c:135
+#, fuzzy
+msgid "reading lock token"
+msgstr "Erzeuge Verzeichnis für Datenbanksperren"
+
+#: ../libsvn_fs_base/bdb/locks-table.c:92
+#, fuzzy
+msgid "storing lock record"
+msgstr "Speichere Kopiedatensatz"
+
+#: ../libsvn_fs_base/bdb/locks-table.c:115
+#, fuzzy
+msgid "deleting lock from 'locks' table"
+msgstr "Lösche Eintrag aus »nodes« Tabelle"
+
+#: ../libsvn_fs_base/bdb/locks-table.c:142
+#, fuzzy
+msgid "reading lock"
+msgstr "Erzeuge Verzeichnis für Datenbanksperren"
+
+#: ../libsvn_fs_base/bdb/locks-table.c:245
+#, fuzzy
+msgid "creating cursor for reading lock tokens"
+msgstr "Erzeuge Cursor zum Lesen der Änderungen"
+
+#: ../libsvn_fs_base/bdb/locks-table.c:320
+#, fuzzy
+msgid "fetching lock tokens"
+msgstr "Pfad hat keine Sperrmarke"
+
+#: ../libsvn_fs_base/bdb/locks-table.c:322
+msgid "fetching lock tokens (closing cursor)"
+msgstr ""
+
+#: ../libsvn_fs_base/bdb/miscellaneous-table.c:95
+#, fuzzy
+msgid "deleting record from 'miscellaneous' table"
+msgstr "Lösche Eintrag aus »nodes« Tabelle"
+
+#: ../libsvn_fs_base/bdb/miscellaneous-table.c:103
+#, fuzzy
+msgid "storing miscellaneous record"
+msgstr "Speichere Kopiedatensatz"
+
+#: ../libsvn_fs_base/bdb/miscellaneous-table.c:131
+#, fuzzy
+msgid "fetching miscellaneous record"
+msgstr "Hole Änderungen"
+
#: ../libsvn_fs_base/bdb/node-origins-table.c:117
#, c-format
msgid "Node origin for '%s' exists in filesystem '%s' with a different value (%s) than what we were about to store (%s)"
@@ -2383,6 +2674,11 @@
msgid "storing node-origins record"
msgstr "Speichere Knotenherkunftdatensatz"
+#: ../libsvn_fs_base/bdb/node-origins-table.c:142
+#, fuzzy
+msgid "deleting entry from 'node-origins' table"
+msgstr "Lösche Eintrag aus »nodes« Tabelle"
+
#: ../libsvn_fs_base/bdb/nodes-table.c:102
msgid "allocating new node ID (getting 'next-key')"
msgstr "Allokiere neue Knoten-ID (hole »next-key«)"
@@ -2442,14 +2738,148 @@
msgid "reading filesystem revision"
msgstr "Lese Dateisystemrevision"
+#: ../libsvn_fs_base/bdb/rev-table.c:141
+#, fuzzy
+msgid "updating filesystem revision"
+msgstr "Lese Dateisystemrevision"
+
+#: ../libsvn_fs_base/bdb/rev-table.c:149
+#, fuzzy
+msgid "storing filesystem revision"
+msgstr "Lese Dateisystemrevision"
+
+#: ../libsvn_fs_base/bdb/rev-table.c:179
+msgid "getting youngest revision (creating cursor)"
+msgstr ""
+
+#: ../libsvn_fs_base/bdb/rev-table.c:203
+msgid "getting youngest revision (finding last entry)"
+msgstr ""
+
+#. You can't commit a transaction with open cursors, because:
+#. 1) key/value pairs don't get deleted until the cursors referring
+#. to them are closed, so closing a cursor can fail for various
+#. reasons, and txn_commit shouldn't fail that way, and
+#. 2) using a cursor after committing its transaction can cause
+#. undetectable database corruption.
+#: ../libsvn_fs_base/bdb/rev-table.c:213
+msgid "getting youngest revision (closing cursor)"
+msgstr ""
+
#: ../libsvn_fs_base/bdb/strings-table.c:94
+#: ../libsvn_fs_base/bdb/strings-table.c:300
+#: ../libsvn_fs_base/bdb/strings-table.c:491
msgid "creating cursor for reading a string"
msgstr "Erzeuge Cursor zum Lesen von Zeichen"
+#: ../libsvn_fs_base/bdb/strings-table.c:124
+#, fuzzy
+msgid "moving cursor"
+msgstr "Schließe Änderungscursor"
+
+#: ../libsvn_fs_base/bdb/strings-table.c:136
+msgid "rerunning cursor move"
+msgstr ""
+
+#: ../libsvn_fs_base/bdb/strings-table.c:228
+#: ../libsvn_fs_base/bdb/strings-table.c:247
+#: ../libsvn_fs_base/bdb/strings-table.c:265
+#, fuzzy
+msgid "reading string"
+msgstr "Lese Darstellung"
+
+#. Done with the cursor.
+#: ../libsvn_fs_base/bdb/strings-table.c:254
+#: ../libsvn_fs_base/bdb/strings-table.c:334
+#: ../libsvn_fs_base/bdb/strings-table.c:539
+#, fuzzy
+msgid "closing string-reading cursor"
+msgstr "Schließe Änderungscursor"
+
+#: ../libsvn_fs_base/bdb/strings-table.c:313
+#: ../libsvn_fs_base/bdb/strings-table.c:505
+msgid "getting next-key value"
+msgstr ""
+
+#. ignore the error, the original is
+#. more important.
+#: ../libsvn_fs_base/bdb/strings-table.c:331
+#, fuzzy
+msgid "bumping next string key"
+msgstr "Erzeuge nächsten Darstellungsschlüssel"
+
+#: ../libsvn_fs_base/bdb/strings-table.c:358
+msgid "appending string"
+msgstr ""
+
+#. Handle any other error conditions.
+#: ../libsvn_fs_base/bdb/strings-table.c:390
+#, fuzzy
+msgid "clearing string"
+msgstr "Erzeuge Änderungen"
+
+#: ../libsvn_fs_base/bdb/strings-table.c:399
+#, fuzzy
+msgid "storing empty contents"
+msgstr "Speichere Kopiedatensatz"
+
+#: ../libsvn_fs_base/bdb/strings-table.c:436
+#, fuzzy
+msgid "fetching string length"
+msgstr "Hole Änderungen"
+
+#. Handle any other error conditions.
+#: ../libsvn_fs_base/bdb/strings-table.c:466
+#, fuzzy
+msgid "deleting string"
+msgstr "Lösche Änderungen"
+
+#: ../libsvn_fs_base/bdb/strings-table.c:524
+#, fuzzy
+msgid "writing copied data"
+msgstr "Übertrage Daten "
+
+#: ../libsvn_fs_base/bdb/strings-table.c:535
+msgid "fetching string data for a copy"
+msgstr ""
+
#: ../libsvn_fs_base/bdb/txn-table.c:99
msgid "storing transaction record"
msgstr "Speichere Transaktionsdatensatz"
+#: ../libsvn_fs_base/bdb/txn-table.c:123
+#, fuzzy
+msgid "allocating new transaction ID (getting 'next-key')"
+msgstr "Allokiere neuen Kopieschlüssel (hole »next-key«)"
+
+#: ../libsvn_fs_base/bdb/txn-table.c:142
+#, fuzzy
+msgid "bumping next transaction key"
+msgstr "Erzeuge nächsten Darstellungsschlüssel"
+
+#: ../libsvn_fs_base/bdb/txn-table.c:188
+#, fuzzy
+msgid "deleting entry from 'transactions' table"
+msgstr "Lösche Eintrag aus »nodes« Tabelle"
+
+#: ../libsvn_fs_base/bdb/txn-table.c:218
+#, fuzzy
+msgid "reading transaction"
+msgstr "Lese Darstellung"
+
+#: ../libsvn_fs_base/bdb/txn-table.c:251
+#, fuzzy
+msgid "reading transaction list (opening cursor)"
+msgstr "Speichere Transaktionsdatensatz"
+
+#: ../libsvn_fs_base/bdb/txn-table.c:314
+msgid "reading transaction list (listing keys)"
+msgstr ""
+
+#: ../libsvn_fs_base/bdb/txn-table.c:317
+msgid "reading transaction list (closing cursor)"
+msgstr ""
+
#: ../libsvn_fs_base/bdb/uuids-table.c:119
msgid "get repository uuid"
msgstr "Hole UUID des Projektarchivs"
@@ -2458,160 +2888,140 @@
msgid "set repository uuid"
msgstr "Setze UUID des Projektarchivs"
-#: ../libsvn_fs_base/dag.c:227
+#: ../libsvn_fs_base/dag.c:228
#, c-format
msgid "Corrupt DB: initial transaction id not '0' in filesystem '%s'"
msgstr "DB beschädigt: Erste Transaktion ist nicht »0« in Dateisystem »%s«"
-#: ../libsvn_fs_base/dag.c:235
+#: ../libsvn_fs_base/dag.c:236
#, c-format
msgid "Corrupt DB: initial copy id not '0' in filesystem '%s'"
msgstr "DB beschädigt: Erste Kopie ist nicht »0« in Dateisystem »%s«"
-#: ../libsvn_fs_base/dag.c:244
+#: ../libsvn_fs_base/dag.c:245
#, c-format
msgid "Corrupt DB: initial revision number is not '0' in filesystem '%s'"
msgstr "DB beschädigt: Erste Revision ist nicht »0« in Dateisystem »%s«"
-#: ../libsvn_fs_base/dag.c:293
+#: ../libsvn_fs_base/dag.c:294
msgid "Attempted to get entries of a non-directory node"
msgstr "Versuchte, Einträge eines *nicht* Verzeichnisknotens zu holen"
-#: ../libsvn_fs_base/dag.c:460 ../libsvn_fs_fs/dag.c:380
+#: ../libsvn_fs_base/dag.c:461 ../libsvn_fs_fs/dag.c:372
#, c-format
msgid "Attempted to create a node with an illegal name '%s'"
msgstr "Versuchte, Knoten mit illegalem Namen »%s« anzulegen"
-#: ../libsvn_fs_base/dag.c:466 ../libsvn_fs_fs/dag.c:386
+#: ../libsvn_fs_base/dag.c:467 ../libsvn_fs_fs/dag.c:378
msgid "Attempted to create entry in non-directory parent"
msgstr "Versuchte, Eintrag in einem *nicht* Verzeichnisknoten anzulegen"
-#: ../libsvn_fs_base/dag.c:472 ../libsvn_fs_base/dag.c:736
-#: ../libsvn_fs_fs/dag.c:392
+#: ../libsvn_fs_base/dag.c:473 ../libsvn_fs_base/dag.c:737
+#: ../libsvn_fs_fs/dag.c:384
#, c-format
msgid "Attempted to clone child of non-mutable node"
msgstr "Versuchte, Unterknoten eines nicht-veränderlichen Knotens zu klonen"
-#: ../libsvn_fs_base/dag.c:479
+#: ../libsvn_fs_base/dag.c:480
#, c-format
msgid "Attempted to create entry that already exists"
msgstr "Versuchte, Eintrag anzulegen, der bereits existiert"
-#: ../libsvn_fs_base/dag.c:528 ../libsvn_fs_fs/dag.c:453
+#: ../libsvn_fs_base/dag.c:529 ../libsvn_fs_fs/dag.c:462
msgid "Attempted to set entry in non-directory node"
msgstr "Versuchte, Eintrag in einem *nicht* Verzeichnisknoten zu setzen"
-#: ../libsvn_fs_base/dag.c:534 ../libsvn_fs_fs/dag.c:459
+#: ../libsvn_fs_base/dag.c:535 ../libsvn_fs_fs/dag.c:468
msgid "Attempted to set entry in immutable node"
msgstr "Versuchte, Eintrag in einem nicht-veränderlichen Knoten zu setzen"
# FIXME: node-revision or node-rev (wie überall)?
-#: ../libsvn_fs_base/dag.c:601
+#: ../libsvn_fs_base/dag.c:602
#, c-format
msgid "Can't set proplist on *immutable* node-revision %s"
msgstr "Kann keine Eigenschaften für *nicht-veränderliche* Knotenrevision %s setzen."
-#: ../libsvn_fs_base/dag.c:742
+#: ../libsvn_fs_base/dag.c:743
#, c-format
msgid "Attempted to make a child clone with an illegal name '%s'"
msgstr "Versuchte, Unterknoten mit illegalem Namen »%s« zu klonen"
-#: ../libsvn_fs_base/dag.c:859
+#: ../libsvn_fs_base/dag.c:860
#, c-format
msgid "Attempted to delete entry '%s' from *non*-directory node"
msgstr "Versuchte, Eintrag »%s« aus einem *nicht* Verzeichnisknoten zu löschen"
-#: ../libsvn_fs_base/dag.c:865
+#: ../libsvn_fs_base/dag.c:866
#, c-format
msgid "Attempted to delete entry '%s' from immutable directory node"
msgstr "Versuchte, Eintrag »%s« aus einem nicht-veränderlichen Verzeichnisknoten zu löschen"
-#: ../libsvn_fs_base/dag.c:872
+#: ../libsvn_fs_base/dag.c:873
#, c-format
msgid "Attempted to delete a node with an illegal name '%s'"
msgstr "Versuchte, einen Knoten mit illegalem Namen »%s« zu löschen"
-#: ../libsvn_fs_base/dag.c:887 ../libsvn_fs_base/dag.c:920
+#: ../libsvn_fs_base/dag.c:888 ../libsvn_fs_base/dag.c:921
#, c-format
msgid "Delete failed: directory has no entry '%s'"
msgstr "Löschen schlug fehl: Verzeichnis hat keinen Eintrag »%s«"
-#: ../libsvn_fs_base/dag.c:969
+#: ../libsvn_fs_base/dag.c:970
#, c-format
msgid "Attempted removal of immutable node"
msgstr "Versuchte, einen nicht-veränderlichen Knoten zu entfernen"
-#: ../libsvn_fs_base/dag.c:1087
+#: ../libsvn_fs_base/dag.c:1088
#, c-format
msgid "Attempted to get textual contents of a *non*-file node"
msgstr "Versuchte, den Textinhalt eines *nicht* Dateiknotens zu holen"
-#: ../libsvn_fs_base/dag.c:1120
+#: ../libsvn_fs_base/dag.c:1121
#, c-format
msgid "Attempted to get length of a *non*-file node"
msgstr "Versuchte, die Länge eines *nicht* Dateiknotens zu holen"
-#: ../libsvn_fs_base/dag.c:1147
+#: ../libsvn_fs_base/dag.c:1148
#, c-format
msgid "Attempted to get checksum of a *non*-file node"
msgstr "Versuchte, die Prüfsumme eines *nicht* Dateiknotens zu holen"
-#: ../libsvn_fs_base/dag.c:1186 ../libsvn_fs_base/dag.c:1243
+#: ../libsvn_fs_base/dag.c:1187 ../libsvn_fs_base/dag.c:1244
#, c-format
msgid "Attempted to set textual contents of a *non*-file node"
msgstr "Versuchte, den Textinhalt eines *nicht* Dateiknotens zu setzen"
-#: ../libsvn_fs_base/dag.c:1192 ../libsvn_fs_base/dag.c:1249
+#: ../libsvn_fs_base/dag.c:1193 ../libsvn_fs_base/dag.c:1250
#, c-format
msgid "Attempted to set textual contents of an immutable node"
msgstr "Versuchte, den Textinhalt eines nicht-veränderlichen Knotens zu setzen"
-#: ../libsvn_fs_base/dag.c:1280 ../libsvn_fs_base/reps-strings.c:829
+#: ../libsvn_fs_base/dag.c:1279 ../libsvn_fs_base/reps-strings.c:829
#, c-format
msgid "Checksum mismatch on representation '%s'"
msgstr "Prüfsummenfehler in Darstellung »%s«"
-#: ../libsvn_fs_base/dag.c:1281 ../libsvn_fs_base/reps-strings.c:830
-#: ../libsvn_fs_base/reps-strings.c:926 ../libsvn_fs_base/reps-strings.c:941
-#: ../libsvn_fs_base/tree.c:3882 ../libsvn_fs_fs/dag.c:1027
-#: ../libsvn_fs_fs/fs_fs.c:3494 ../libsvn_fs_fs/tree.c:2463
-#: ../libsvn_ra_neon/fetch.c:750 ../libsvn_ra_svn/client.c:1073
-#: ../libsvn_repos/commit.c:607 ../libsvn_repos/load-fs-vtable.c:484
-#, c-format
-msgid " expected: %s"
-msgstr " erwartet: %s"
-
-#: ../libsvn_fs_base/dag.c:1282 ../libsvn_fs_base/reps-strings.c:831
-#: ../libsvn_fs_base/reps-strings.c:927 ../libsvn_fs_base/reps-strings.c:942
-#: ../libsvn_fs_base/tree.c:3883 ../libsvn_fs_fs/dag.c:1028
-#: ../libsvn_fs_fs/fs_fs.c:3495 ../libsvn_fs_fs/tree.c:2464
-#: ../libsvn_ra_neon/fetch.c:751 ../libsvn_ra_svn/client.c:1074
-#: ../libsvn_repos/commit.c:608 ../libsvn_repos/load-fs-vtable.c:485
-#, c-format
-msgid " actual: %s"
-msgstr "tatsächlich: %s"
-
-#: ../libsvn_fs_base/dag.c:1378
+#: ../libsvn_fs_base/dag.c:1373
#, c-format
msgid "Attempted to open non-existent child node '%s'"
msgstr "Versuchte, nicht existierenden Unterknoten »%s« zu öffnen"
-#: ../libsvn_fs_base/dag.c:1384
+#: ../libsvn_fs_base/dag.c:1379
#, c-format
msgid "Attempted to open node with an illegal name '%s'"
msgstr "Versuchte, einen Knoten mit illegalem Namen »%s« zu öffnen"
-#: ../libsvn_fs_base/dag.c:1926
+#: ../libsvn_fs_base/dag.c:1701
#, c-format
msgid "Attempted merge tracking info change on immutable node"
msgstr "Versuchte, die Informationen zur Zusammenführungsverfolgung eines nicht-veränderlichen Knotens zu ändern"
-#: ../libsvn_fs_base/dag.c:1966
+#: ../libsvn_fs_base/dag.c:1741
#, c-format
msgid "Attempted mergeinfo count change on immutable node"
msgstr "Versuchte, die Anzahl der Zusammenführungsinformationen eines nicht-veränderlichen Knoten zu ändern"
-#: ../libsvn_fs_base/dag.c:1978
+#: ../libsvn_fs_base/dag.c:1753
#, c-format
msgid "Invalid value (%%%s) for node revision mergeinfo count"
msgstr "Ungültiger Wert (%%%s) für Knotenrevisions-Zusammenführungszähler"
@@ -2621,62 +3031,62 @@
msgid "Corrupt filesystem revision %ld in filesystem '%s'"
msgstr "Beschädigte Dateisystemrevision %ld in Dateisystem »%s«"
-#: ../libsvn_fs_base/err.c:57 ../libsvn_fs_fs/fs_fs.c:2160
+#: ../libsvn_fs_base/err.c:57 ../libsvn_fs_fs/fs_fs.c:2223
#, c-format
msgid "Reference to non-existent node '%s' in filesystem '%s'"
msgstr "Verweis auf einen nicht existierenden Knoten »%s« in Dateisystem »%s«"
-#: ../libsvn_fs_base/err.c:67
+#: ../libsvn_fs_base/err.c:68
#, c-format
msgid "No such revision %ld in filesystem '%s'"
msgstr "Keine solche Revision %ld im Dateisystem »%s«"
-#: ../libsvn_fs_base/err.c:79
+#: ../libsvn_fs_base/err.c:80
#, c-format
msgid "Corrupt entry in 'transactions' table for '%s' in filesystem '%s'"
msgstr "Beschädigter Eintrag in »transactions« Tabelle für »%s« in Dateisystem »%s«"
-#: ../libsvn_fs_base/err.c:90
+#: ../libsvn_fs_base/err.c:91
#, c-format
msgid "Corrupt entry in 'copies' table for '%s' in filesystem '%s'"
msgstr "Beschädigter Eintrag in »copies« Tabelle für »%s« in Dateisystem »%s«"
-#: ../libsvn_fs_base/err.c:101
+#: ../libsvn_fs_base/err.c:102
#, c-format
msgid "No transaction named '%s' in filesystem '%s'"
msgstr "Keine Transaktion namens »%s« in Dateisystem »%s«"
-#: ../libsvn_fs_base/err.c:112
+#: ../libsvn_fs_base/err.c:113
#, c-format
msgid "Cannot modify transaction named '%s' in filesystem '%s'"
msgstr "Kann die Transaktion namens »%s« in Dateisystem »%s« nicht modifizieren"
-#: ../libsvn_fs_base/err.c:123
+#: ../libsvn_fs_base/err.c:124
#, c-format
msgid "No copy with id '%s' in filesystem '%s'"
msgstr "Keine Kopie mit ID »%s« in Dateisystem »%s«"
-#: ../libsvn_fs_base/err.c:133
+#: ../libsvn_fs_base/err.c:134
#, c-format
msgid "Token '%s' does not point to any existing lock in filesystem '%s'"
msgstr "Marke »%s« zeigt auf keine existierende Sperre im Dateisystem »%s«"
-#: ../libsvn_fs_base/err.c:143
+#: ../libsvn_fs_base/err.c:144
#, c-format
msgid "No token given for path '%s' in filesystem '%s'"
msgstr "Keine Marke für Pfad »%s« in Dateisystem »%s« angegeben"
-#: ../libsvn_fs_base/err.c:152
+#: ../libsvn_fs_base/err.c:153
#, c-format
msgid "Corrupt lock in 'locks' table for '%s' in filesystem '%s'"
msgstr "Beschädigte Sperre in »locks« Tabelle für »%s« in Dateisystem »%s«"
-#: ../libsvn_fs_base/err.c:162
+#: ../libsvn_fs_base/err.c:163
#, c-format
msgid "No record in 'node-origins' table for node id '%s' in filesystem '%s'"
msgstr "Kein Datensatz in der »node-origins«-Tabelle für Knoten-ID »%s« im Dateisystem »%s«"
-#: ../libsvn_fs_base/err.c:172
+#: ../libsvn_fs_base/err.c:173
#, c-format
msgid "No record in 'checksum-reps' table for checksum '%s' in filesystem '%s'"
msgstr "Kein Datensatz in der »checksum-reps«-Tabelle für Prüfsumme »%s« im Dateisystem »%s«"
@@ -2696,27 +3106,156 @@
msgid "Berkeley DB error for filesystem '%s' while closing environment:\n"
msgstr "Berkeley-DB-Fehler für Dateisystem »%s« beim Schließen der Umgebung:\n"
-#: ../libsvn_fs_base/fs.c:538
+#: ../libsvn_fs_base/fs.c:543
#, c-format
msgid "Berkeley DB error for filesystem '%s' while creating environment:\n"
msgstr "Berkeley-DB-Fehler für Dateisystem »%s« beim Erzeugen der Umgebung:\n"
-#: ../libsvn_fs_base/fs.c:544
+#: ../libsvn_fs_base/fs.c:549
#, c-format
msgid "Berkeley DB error for filesystem '%s' while opening environment:\n"
msgstr "Berkeley-DB-Fehler für Dateisystem »%s« beim Öffnen der Umgebung:\n"
-#: ../libsvn_fs_base/fs.c:710
+#: ../libsvn_fs_base/fs.c:564
+#, fuzzy
+msgid "creating 'nodes' table"
+msgstr "Lösche Eintrag aus »nodes« Tabelle"
+
+#: ../libsvn_fs_base/fs.c:565
+#, fuzzy
+msgid "opening 'nodes' table"
+msgstr "Lösche Eintrag aus »nodes« Tabelle"
+
+#: ../libsvn_fs_base/fs.c:570
+#, fuzzy
+msgid "creating 'revisions' table"
+msgstr "Lese Knotenrevision"
+
+#: ../libsvn_fs_base/fs.c:571
+#, fuzzy
+msgid "opening 'revisions' table"
+msgstr "Fehler beim Einlesen der Revisionsnummer"
+
+#: ../libsvn_fs_base/fs.c:576
+#, fuzzy
+msgid "creating 'transactions' table"
+msgstr "Speichere Transaktionsdatensatz"
+
+#: ../libsvn_fs_base/fs.c:577
+#, fuzzy
+msgid "opening 'transactions' table"
+msgstr "Kopieren aus Transaktionen ist nicht erlaubt."
+
+#: ../libsvn_fs_base/fs.c:582
+#, fuzzy
+msgid "creating 'copies' table"
+msgstr "Lösche Eintrag aus »copies« Tabelle"
+
+#: ../libsvn_fs_base/fs.c:583
+#, fuzzy
+msgid "opening 'copies' table"
+msgstr "Lösche Eintrag aus »copies« Tabelle"
+
+#: ../libsvn_fs_base/fs.c:588
+#, fuzzy
+msgid "creating 'changes' table"
+msgstr "Erzeuge Änderungen"
+
+#: ../libsvn_fs_base/fs.c:589
+#, fuzzy
+msgid "opening 'changes' table"
+msgstr "Lösche Änderungen"
+
+#: ../libsvn_fs_base/fs.c:594
+#, fuzzy
+msgid "creating 'representations' table"
+msgstr "Lese Darstellung"
+
+#: ../libsvn_fs_base/fs.c:595
+#, fuzzy
+msgid "opening 'representations' table"
+msgstr "Lese Darstellung"
+
+#: ../libsvn_fs_base/fs.c:600
+#, fuzzy
+msgid "creating 'strings' table"
+msgstr "Erzeuge Änderungen"
+
+#: ../libsvn_fs_base/fs.c:601
+msgid "opening 'strings' table"
+msgstr ""
+
+#: ../libsvn_fs_base/fs.c:606
+msgid "creating 'uuids' table"
+msgstr ""
+
+#: ../libsvn_fs_base/fs.c:607
+msgid "opening 'uuids' table"
+msgstr ""
+
+#: ../libsvn_fs_base/fs.c:612
+#, fuzzy
+msgid "creating 'locks' table"
+msgstr "Erzeuge Datenbank-Sperrdatei"
+
+#: ../libsvn_fs_base/fs.c:613
+#, fuzzy
+msgid "opening 'locks' table"
+msgstr "Fehler beim Öffnen der Datenbank-Sperrdatei"
+
+#: ../libsvn_fs_base/fs.c:618
+#, fuzzy
+msgid "creating 'lock-tokens' table"
+msgstr "Erzeuge Datenbank-Sperrdatei"
+
+#: ../libsvn_fs_base/fs.c:619
+msgid "opening 'lock-tokens' table"
+msgstr ""
+
+#: ../libsvn_fs_base/fs.c:627
+#, fuzzy
+msgid "creating 'node-origins' table"
+msgstr "Speichere Knotenherkunftdatensatz"
+
+#: ../libsvn_fs_base/fs.c:628
+#, fuzzy
+msgid "opening 'node-origins' table"
+msgstr "Speichere Knotenherkunftdatensatz"
+
+#: ../libsvn_fs_base/fs.c:637
+msgid "creating 'miscellaneous' table"
+msgstr ""
+
+#: ../libsvn_fs_base/fs.c:638
+msgid "opening 'miscellaneous' table"
+msgstr ""
+
+#: ../libsvn_fs_base/fs.c:647
+#, fuzzy
+msgid "creating 'checksum-reps' table"
+msgstr "Speichere »checksum-reps«-Datensatz"
+
+#: ../libsvn_fs_base/fs.c:648
+#, fuzzy
+msgid "opening 'checksum-reps' table"
+msgstr "Speichere »checksum-reps«-Datensatz"
+
+#: ../libsvn_fs_base/fs.c:723
#, c-format
msgid "The '%s' feature requires version %d of the filesystem schema; filesystem '%s' uses only version %d"
msgstr "Das Merkmal »%s« erfordert Version %d des Dateisystemschemas; Dateisystem »%s« verwendet nur Version %d"
-#: ../libsvn_fs_base/fs.c:729
+#: ../libsvn_fs_base/fs.c:742
#, c-format
msgid "Expected FS format '%d'; found format '%d'"
msgstr "Erwartetes Dateisystemformat »%d«; gefunden »%d«"
-#: ../libsvn_fs_base/fs.c:1272
+#: ../libsvn_fs_base/fs.c:1206
+#, c-format
+msgid "BDB repositories do not support incremental hotcopy"
+msgstr ""
+
+#: ../libsvn_fs_base/fs.c:1310
msgid ""
"Error copying logfile; the DB_LOG_AUTOREMOVE feature\n"
"may be interfering with the hotcopy algorithm. If\n"
@@ -2727,7 +3266,7 @@
"könnte den Hotcopy-Algorithmus stören. Falls das Problem weiterhin\n"
"besteht, versuchen Sie diese Funktion in DB_CONFIG abzuschalten"
-#: ../libsvn_fs_base/fs.c:1291
+#: ../libsvn_fs_base/fs.c:1329
msgid ""
"Error running catastrophic recovery on hotcopy; the\n"
"DB_LOG_AUTOREMOVE feature may be interfering with the\n"
@@ -2739,33 +3278,33 @@
"könnte den Hotcopy-Algorithmus stören. Wenn das Problem weiterhin\n"
"besteht, versuchen Sie diese Funktion in DB_CONFIG abzuschalten"
-#: ../libsvn_fs_base/fs.c:1336
+#: ../libsvn_fs_base/fs.c:1374
msgid "Module for working with a Berkeley DB repository."
msgstr "Modul zum Zugriff auf ein Berkeley-DB-Projektarchiv."
-#: ../libsvn_fs_base/fs.c:1372
+#: ../libsvn_fs_base/fs.c:1411
#, c-format
msgid "Unsupported FS loader version (%d) for bdb"
msgstr "Nicht unterstützte Dateisystem-Laderversion (%d) für bdb"
-#: ../libsvn_fs_base/lock.c:104 ../libsvn_fs_base/lock.c:109
-#: ../libsvn_fs_fs/lock.c:755 ../libsvn_fs_fs/lock.c:760
-#: ../libsvn_fs_fs/lock.c:782
+#: ../libsvn_fs_base/lock.c:106 ../libsvn_fs_base/lock.c:111
+#: ../libsvn_fs_fs/lock.c:789 ../libsvn_fs_fs/lock.c:794
+#: ../libsvn_fs_fs/lock.c:816
#, c-format
msgid "Path '%s' doesn't exist in HEAD revision"
msgstr "Pfad »%s« existiert nicht in HEAD-Revision"
-#: ../libsvn_fs_base/lock.c:457 ../libsvn_fs_fs/lock.c:652
+#: ../libsvn_fs_base/lock.c:535 ../libsvn_fs_fs/lock.c:684
#, c-format
msgid "Cannot verify lock on path '%s'; no username available"
msgstr "Kann Sperre für Pfad »%s« nicht prüfen; keine Benutzername verfügbar"
-#: ../libsvn_fs_base/lock.c:463 ../libsvn_fs_fs/lock.c:658
+#: ../libsvn_fs_base/lock.c:541 ../libsvn_fs_fs/lock.c:690
#, c-format
msgid "User '%s' does not own lock on path '%s' (currently locked by '%s')"
msgstr "Benutzer »%s« besitzt die Sperre für Pfad »%s« nicht (derzeit gesperrt durch »%s«)"
-#: ../libsvn_fs_base/lock.c:470 ../libsvn_fs_fs/lock.c:665
+#: ../libsvn_fs_base/lock.c:548 ../libsvn_fs_fs/lock.c:697
#, c-format
msgid "Cannot verify lock on path '%s'; no matching lock-token available"
msgstr "Kann Sperre für Pfad »%s« nicht prüfen; keine entsprechende Sperrmarke verfügbar"
@@ -2785,1482 +3324,1304 @@
msgid "Svndiff source length inconsistency"
msgstr "Svndiff Quelllänge ist inkonsistent"
-#: ../libsvn_fs_base/reps-strings.c:507
+#: ../libsvn_fs_base/reps-strings.c:506
#, c-format
msgid "Diff version inconsistencies in representation '%s'"
msgstr "Inkonsistenzen in Diffversion in Darstellung »%s«"
-#: ../libsvn_fs_base/reps-strings.c:533
+#: ../libsvn_fs_base/reps-strings.c:532
#, c-format
msgid "Corruption detected whilst reading delta chain from representation '%s' to '%s'"
msgstr "Beim Lesen der Delta-Kette aus der Darstellung »%s« nach »%s« wurde eine Beschädigung entdeckt"
-#: ../libsvn_fs_base/reps-strings.c:797
+#: ../libsvn_fs_base/reps-strings.c:798
#, c-format
msgid "Rep contents are too large: got %s, limit is %s"
msgstr "Inhalt der Darstellung zu groß: »%s« erhalten, Grenze ist »%s«"
-#: ../libsvn_fs_base/reps-strings.c:813
+#: ../libsvn_fs_base/reps-strings.c:814
#, c-format
msgid "Failure reading representation '%s'"
msgstr "Fehler beim Lesen der Darstellung »%s«"
-#: ../libsvn_fs_base/reps-strings.c:925
+#: ../libsvn_fs_base/reps-strings.c:924
#, c-format
msgid "MD5 checksum mismatch on representation '%s'"
msgstr "MD5-Prüfsummenfehler auf Darstellung »%s«"
-#: ../libsvn_fs_base/reps-strings.c:940
+#: ../libsvn_fs_base/reps-strings.c:934
#, c-format
msgid "SHA1 checksum mismatch on representation '%s'"
msgstr "SHA1-Prüfsummenfehler auf Darstellung »%s«"
-#: ../libsvn_fs_base/reps-strings.c:956
+#: ../libsvn_fs_base/reps-strings.c:945
msgid "Null rep, but offset past zero already"
msgstr "Leere Darstellung, aber der Offset ist bereits größer als Null"
-#: ../libsvn_fs_base/reps-strings.c:1070 ../libsvn_fs_base/reps-strings.c:1261
+#: ../libsvn_fs_base/reps-strings.c:1062 ../libsvn_fs_base/reps-strings.c:1253
#, c-format
msgid "Rep '%s' is not mutable"
msgstr "Darstellung »%s« ist nicht veränderlich"
-#: ../libsvn_fs_base/reps-strings.c:1085
+#: ../libsvn_fs_base/reps-strings.c:1077
#, c-format
msgid "Rep '%s' both mutable and non-fulltext"
msgstr "Darstellung »%s« ist beides: veränderlich und kein Volltext"
-#: ../libsvn_fs_base/reps-strings.c:1380
+#: ../libsvn_fs_base/reps-strings.c:1372
msgid "Failed to get new string key"
msgstr "Konnte keinen neuen Schlüssel erzeugen"
-#: ../libsvn_fs_base/reps-strings.c:1457
+#: ../libsvn_fs_base/reps-strings.c:1449
#, c-format
msgid "Attempt to deltify '%s' against itself"
msgstr "Versuch, Deltas von »%s« gegen sich selber zu erstellen"
-#: ../libsvn_fs_base/reps-strings.c:1528 ../libsvn_fs_base/reps-strings.c:1721
+#: ../libsvn_fs_base/reps-strings.c:1520
#, c-format
msgid "Failed to calculate MD5 digest for '%s'"
msgstr "Berechnung der MD5-Summe für »%s« schlug fehl"
-#: ../libsvn_fs_base/reps-strings.c:1670
-#, fuzzy, c-format
-msgid "Attempt to obliterate '%s' using itself "
-msgstr "Versuch, Deltas von »%s« gegen sich selber zu erstellen"
-
-#: ../libsvn_fs_base/revs-txns.c:73
+#: ../libsvn_fs_base/revs-txns.c:72
#, c-format
msgid "Transaction is not dead: '%s'"
msgstr "Transaktion ist nicht tot: »%s«"
-#: ../libsvn_fs_base/revs-txns.c:76
+#: ../libsvn_fs_base/revs-txns.c:75
#, c-format
msgid "Transaction is dead: '%s'"
msgstr "Transaktion ist tot: »%s«"
-#: ../libsvn_fs_base/revs-txns.c:274 ../libsvn_fs_fs/fs_fs.c:7358
+#: ../libsvn_fs_base/revs-txns.c:273 ../libsvn_fs_fs/fs_fs.c:9624
#, c-format
msgid "revprop '%s' has unexpected value in filesystem"
msgstr "Revisionseigenschaft »%s« hat einen unerwarteten Wert im Dateisystem"
-#: ../libsvn_fs_base/revs-txns.c:1231
+#: ../libsvn_fs_base/revs-txns.c:1031
msgid "Transaction aborted, but cleanup failed"
msgstr "Transaktion abgebrochen, aber Aufräumen schlug fehl"
-#: ../libsvn_fs_base/tree.c:772 ../libsvn_fs_fs/tree.c:695
+#: ../libsvn_fs_base/trail.c:99
+msgid "beginning Berkeley DB transaction"
+msgstr ""
+
+#: ../libsvn_fs_base/trail.c:134
+msgid "aborting Berkeley DB transaction"
+msgstr ""
+
+#: ../libsvn_fs_base/trail.c:158
+msgid "committing Berkeley DB transaction"
+msgstr ""
+
+#: ../libsvn_fs_base/tree.c:773 ../libsvn_fs_fs/tree.c:997
#, c-format
msgid "Failure opening '%s'"
msgstr "Fehler beim Öffnen von »%s«"
-#: ../libsvn_fs_base/tree.c:1404 ../libsvn_fs_fs/tree.c:1124
+#: ../libsvn_fs_base/tree.c:1405 ../libsvn_fs_fs/tree.c:1445
msgid "Cannot compare property value between two different filesystems"
msgstr "Kann Eigenschaftswert nicht zwischen verschiedenen Dateisystemen vergleichen"
-#: ../libsvn_fs_base/tree.c:1850 ../libsvn_fs_base/tree.c:1920
+#: ../libsvn_fs_base/tree.c:1851 ../libsvn_fs_base/tree.c:1921
msgid "Corrupt DB: faulty predecessor count"
msgstr "DB beschädigt: Fehlerhafte Vorgängeranzahl"
-#: ../libsvn_fs_base/tree.c:1977 ../libsvn_fs_base/tree.c:2996
-#: ../libsvn_fs_fs/tree.c:1157
+#: ../libsvn_fs_base/tree.c:1978
#, c-format
msgid "Unexpected immutable node at '%s'"
msgstr "Unerwarteter unveränderlicher Knoten bei »%s«"
-#: ../libsvn_fs_base/tree.c:1998 ../libsvn_fs_fs/tree.c:1178
+#: ../libsvn_fs_base/tree.c:1999 ../libsvn_fs_fs/tree.c:1475
+#: ../libsvn_repos/commit.c:1236
#, c-format
msgid "Conflict at '%s'"
msgstr "Konflikt bei »%s«"
-#: ../libsvn_fs_base/tree.c:2051 ../libsvn_fs_base/tree.c:2845
-#: ../libsvn_fs_fs/tree.c:1229 ../libsvn_fs_fs/tree.c:1787
+#: ../libsvn_fs_base/tree.c:2052 ../libsvn_fs_base/tree.c:2804
+#: ../libsvn_fs_fs/tree.c:1526 ../libsvn_fs_fs/tree.c:2063
msgid "Bad merge; ancestor, source, and target not all in same fs"
msgstr "Fehlerhaftes Zusammenführen: Vorgänger, Quelle und Ziel nicht im gleichen Dateisystem"
-#: ../libsvn_fs_base/tree.c:2067 ../libsvn_fs_fs/tree.c:1245
+#: ../libsvn_fs_base/tree.c:2068 ../libsvn_fs_fs/tree.c:1542
#, c-format
msgid "Bad merge; target '%s' has id '%s', same as ancestor"
msgstr "Fehlerhaftes Zusammenführen: Ziel »%s« hat die gleiche ID »%s« wie der Vorgänger."
-#: ../libsvn_fs_base/tree.c:2611
+#: ../libsvn_fs_base/tree.c:2612
#, c-format
msgid "Transaction '%s' out-of-date with respect to revision '%s'"
msgstr "Transaktion »%s« ist in Bezug auf Revision »%s« veraltet"
-#: ../libsvn_fs_base/tree.c:2929
+#: ../libsvn_fs_base/tree.c:2888
#, c-format
msgid "Cannot deltify revisions prior to r%ld"
msgstr "Die Erstellung von Deltas für Revisionen vor r%ld ist nicht möglich"
-#: ../libsvn_fs_base/tree.c:3001
-#, fuzzy, c-format
-msgid "Cannot obliterate '%s' as it is not a file"
-msgstr "Pfad »%s« ist keine Datei"
-
-#: ../libsvn_fs_base/tree.c:3136 ../libsvn_fs_fs/tree.c:1924
+#: ../libsvn_fs_base/tree.c:3006 ../libsvn_fs_fs/tree.c:2200
msgid "The root directory cannot be deleted"
msgstr "Das Basisverzeichnis kann nicht gelöscht werden"
-#: ../libsvn_fs_base/tree.c:3359 ../libsvn_fs_fs/tree.c:2005
+#: ../libsvn_fs_base/tree.c:3219 ../libsvn_fs_fs/tree.c:2270
#, c-format
msgid "Cannot copy between two different filesystems ('%s' and '%s')"
msgstr "Kann nicht zwischen zwei verschiedenen Dateisystemen (»%s« und »%s«) kopieren"
-#: ../libsvn_fs_base/tree.c:3368 ../libsvn_fs_fs/tree.c:2011
+#: ../libsvn_fs_base/tree.c:3228 ../libsvn_fs_fs/tree.c:2276
msgid "Copy from mutable tree not currently supported"
msgstr "Kopieren eines veränderlichen Baumes wird derzeit nicht unterstützt"
-#: ../libsvn_fs_base/tree.c:3881 ../libsvn_fs_fs/tree.c:2462
+#: ../libsvn_fs_base/tree.c:3739 ../libsvn_fs_fs/tree.c:2742
#, c-format
msgid "Base checksum mismatch on '%s'"
msgstr "Basis-Prüfsummenfehler bei »%s«"
-#: ../libsvn_fs_base/tree.c:4130 ../libsvn_fs_fs/tree.c:2694
+#: ../libsvn_fs_base/tree.c:3972 ../libsvn_fs_fs/tree.c:2957
msgid "Cannot compare file contents between two different filesystems"
msgstr "Kann Dateiinhalte nicht zwischen verschiedenen Dateisystemen vergleichen"
-#: ../libsvn_fs_base/tree.c:4139 ../libsvn_fs_base/tree.c:4144
-#: ../libsvn_fs_fs/tree.c:2703 ../libsvn_fs_fs/tree.c:2708
-#: ../libsvn_ra/compat.c:671
-#, c-format
-msgid "'%s' is not a file"
-msgstr "»%s« ist keine Datei"
-
-#: ../libsvn_fs_base/tree.c:5169 ../libsvn_fs_base/tree.c:5357
+#: ../libsvn_fs_base/tree.c:5009 ../libsvn_fs_base/tree.c:5187
#, c-format
msgid "Node-revision '%s' claims to have mergeinfo but doesn't"
msgstr "Knotenrevision »%s« behauptet, Zusammenführungsinformationen zu haben, hat aber keine"
-#: ../libsvn_fs_base/tree.c:5193
+#: ../libsvn_fs_base/tree.c:5046
#, c-format
msgid "Node-revision '%s' claims to sit atop a tree containing mergeinfo but is not a directory"
msgstr "Knotenrevision »%s« behauptet, über einem Baum, der Zusammenführungsinformationen enthält, zu sitzen, ist aber kein Verzeichnis"
-#: ../libsvn_fs_fs/caching.c:75
-msgid "Bad ID in cache"
-msgstr "Fehlerhafte ID im Zwischenspeicher"
-
-#: ../libsvn_fs_fs/dag.c:435 ../libsvn_ra_serf/serf.c:845
+#: ../libsvn_fs_fs/dag.c:426 ../libsvn_fs_fs/dag.c:442
+#: ../libsvn_ra_serf/serf.c:967 ../libsvn_ra_serf/serf.c:1030
msgid "Can't get entries of non-directory"
msgstr "Kann keine Einträge aus einem nicht-Verzeichnis lesen"
-#: ../libsvn_fs_fs/dag.c:542
+#: ../libsvn_fs_fs/dag.c:551
#, c-format
msgid "Can't increment mergeinfo count on node-revision %%s to negative value %%%s"
msgstr "Kann Zusammenführungsinformationszähler für Knotenrevision %%s nicht auf negativen Wert %%%s erhöhen"
# FIXME: node-revision or node-rev (wie überall)?
-#: ../libsvn_fs_fs/dag.c:553
+#: ../libsvn_fs_fs/dag.c:562
#, c-format
msgid "Can't increment mergeinfo count on *file* node-revision %%s to %%%s (> 1)"
msgstr "Kann Zusammenführungsinformationszähler für Datei-Knotenrevision %%s nicht auf %%%s (> 1) erhöhen"
-#: ../libsvn_fs_fs/dag.c:1026 ../libsvn_ra_neon/fetch.c:749
-#: ../libsvn_ra_svn/client.c:1072
-#, c-format
-msgid "Checksum mismatch for '%s'"
-msgstr "Prüfsummenfehler für »%s«"
-
-#: ../libsvn_fs_fs/dag.c:1131
+#: ../libsvn_fs_fs/dag.c:1134
msgid "Empty noderev in cache"
msgstr "Leere Knotenrevision im Zwischenspeicher"
-#: ../libsvn_fs_fs/dag.c:1141
-msgid "Kindless noderev in cache"
-msgstr "Nutzlose Knotenrevision im Zwischenspeicher"
+#: ../libsvn_fs_fs/dag.c:1326
+#, fuzzy, c-format
+msgid "Attempted to update ancestry of non-mutable node"
+msgstr "Versuchte, Unterknoten eines nicht-veränderlichen Knotens zu klonen"
-#: ../libsvn_fs_fs/dag.c:1148
-#, c-format
-msgid "Unknown kind for noderev in cache: '%c'"
-msgstr "Unbekannte Art der Knotenrevision im Zwischenspeicher: »%c«"
-
-#: ../libsvn_fs_fs/dag.c:1155
-msgid "Unterminated ID in cache"
-msgstr "Nicht abgeschlossene ID im Zwischenspeicher"
-
-#: ../libsvn_fs_fs/dag.c:1160
-#, c-format
-msgid "Bogus ID '%s' in cache"
-msgstr "Fehlerhafte ID »%s« im Zwischenspeicher"
-
-#: ../libsvn_fs_fs/dag.c:1167
-msgid "No created path"
-msgstr "Kein erzeugter Pfad"
-
-#: ../libsvn_fs_fs/dag.c:1193
-#, c-format
-msgid "Unknown node type in cache: '%c'"
-msgstr "Unbekannter Knotentyp im Zwischenspeicher: »%c«"
-
-#: ../libsvn_fs_fs/fs.c:80
+#: ../libsvn_fs_fs/fs.c:82
#, c-format
msgid "Can't fetch FSFS shared data"
msgstr "Kann gemeinsame FSFS-Daten nicht holen"
-#: ../libsvn_fs_fs/fs.c:96
-#, c-format
-msgid "Can't create FSFS write-lock mutex"
-msgstr "Kann FSFS Schreibschutz-Mutex nicht anlegen"
-
-#: ../libsvn_fs_fs/fs.c:103
-#, c-format
-msgid "Can't create FSFS txn-current mutex"
-msgstr "Kann FSFS-txn-current-Mutex nicht anlegen"
-
-# CHECKME: s/txn list/txn-list/? Compare txn-current
-#: ../libsvn_fs_fs/fs.c:112
-#, c-format
-msgid "Can't create FSFS txn list mutex"
-msgstr "Kann FSFS-txn-list-Mutex nicht anlegen"
-
-#: ../libsvn_fs_fs/fs.c:119
+#: ../libsvn_fs_fs/fs.c:106
#, c-format
msgid "Can't store FSFS shared data"
msgstr "Kann gemeinsame FSFS-Daten nicht speichern"
-#: ../libsvn_fs_fs/fs.c:332
+#: ../libsvn_fs_fs/fs.c:396
msgid "Module for working with a plain file (FSFS) repository."
msgstr "Modul zum Zugriff auf ein dateibasiertes (FSFS) Projektarchiv."
-#: ../libsvn_fs_fs/fs.c:368
+#: ../libsvn_fs_fs/fs.c:433
#, c-format
msgid "Unsupported FS loader version (%d) for fsfs"
msgstr "Nicht unterstützte Dateisystem-Laderversion (%d) für fsfs"
-#: ../libsvn_fs_fs/fs_fs.c:288
-#, c-format
-msgid "Revision file '%s' does not exist, and r%ld is not packed"
-msgstr "Revisionsdatei »%s« existiert nicht und r%ld ist nicht gepackt"
-
-#: ../libsvn_fs_fs/fs_fs.c:535
-#, c-format
-msgid "Can't grab FSFS txn list mutex"
-msgstr "Kann FSFS-txn-list-Mutex nicht greifen"
-
-#: ../libsvn_fs_fs/fs_fs.c:543
-#, c-format
-msgid "Can't ungrab FSFS txn list mutex"
-msgstr "Kann FSFS-txn-list-Mutex nicht loslassen"
-
-#: ../libsvn_fs_fs/fs_fs.c:597
-#, c-format
-msgid "Can't grab FSFS mutex for '%s'"
-msgstr "Kann FSFS-Mutex für »%s« nicht greifen"
-
-#: ../libsvn_fs_fs/fs_fs.c:623
-#, c-format
-msgid "Can't ungrab FSFS mutex for '%s'"
-msgstr "Kann FSFS-Mutex für »%s« nicht loslassen"
-
-#: ../libsvn_fs_fs/fs_fs.c:694
+#: ../libsvn_fs_fs/fs_fs.c:726
#, c-format
msgid "Can't unlock unknown transaction '%s'"
msgstr "Kann unbekannte Transaktion »%s« nicht freigeben"
-#: ../libsvn_fs_fs/fs_fs.c:698
+#: ../libsvn_fs_fs/fs_fs.c:730
#, c-format
msgid "Can't unlock nonlocked transaction '%s'"
msgstr "Nicht gesperrte Transaktion »%s« kann nicht freigeben werden"
# FIXME: Dies ist aber nicht infinitisch übersetzt (siehe umliegenden Meldungen)
-#: ../libsvn_fs_fs/fs_fs.c:705
+#: ../libsvn_fs_fs/fs_fs.c:737
#, c-format
msgid "Can't unlock prototype revision lockfile for transaction '%s'"
msgstr "Kann Prototyp-Revisionssperrdatei für Transaktion »%s« nicht entsperren"
-#: ../libsvn_fs_fs/fs_fs.c:711
+#: ../libsvn_fs_fs/fs_fs.c:743
#, c-format
msgid "Can't close prototype revision lockfile for transaction '%s'"
msgstr "Kann Prototyp-Revisionssperrdatei für Transaktion »%s« nicht schließen"
-#: ../libsvn_fs_fs/fs_fs.c:773
+#: ../libsvn_fs_fs/fs_fs.c:805
#, c-format
msgid "Cannot write to the prototype revision file of transaction '%s' because a previous representation is currently being written by this process"
msgstr "Kann nicht in die Prototyp-Revisionsdatei der Transaktion »%s« schreiben, da eine frühere Darstellung zurzeit von diesem Prozess geschrieben wird"
-#: ../libsvn_fs_fs/fs_fs.c:809
+#: ../libsvn_fs_fs/fs_fs.c:841
#, c-format
msgid "Cannot write to the prototype revision file of transaction '%s' because a previous representation is currently being written by another process"
msgstr "Kann nicht in die Prototyp-Revisionsdatei der Transaktion »%s« schreiben, da eine frühere Darstellung zurzeit von einem anderen Prozess geschrieben wird"
-#: ../libsvn_fs_fs/fs_fs.c:816 ../libsvn_subr/io.c:1702
+#: ../libsvn_fs_fs/fs_fs.c:848 ../libsvn_subr/io.c:2006
#, c-format
msgid "Can't get exclusive lock on file '%s'"
msgstr "Kann keinen exklusiven Zugriff auf Datei »%s« erlangen"
-#: ../libsvn_fs_fs/fs_fs.c:928
-#, c-format
-msgid "Format file '%s' contains unexpected non-digit '%c' within '%s'"
+#: ../libsvn_fs_fs/fs_fs.c:967
+#, fuzzy, c-format
+msgid "%s file '%s' contains unexpected non-digit '%c' within '%s'"
msgstr "Die Formatdatei »%s« enthält eine unerwartete Nicht-Ziffer »%c« innerhalb »%s«"
-#: ../libsvn_fs_fs/fs_fs.c:977
+#: ../libsvn_fs_fs/fs_fs.c:1026
#, c-format
msgid "Can't read first line of format file '%s'"
msgstr "Die erste Zeile der Formatdatei »%s« kann nicht gelesen werden"
-#: ../libsvn_fs_fs/fs_fs.c:1021
+#: ../libsvn_fs_fs/fs_fs.c:1063
#, c-format
msgid "'%s' contains invalid filesystem format option '%s'"
msgstr "»%s« enthält eine ungültige Dateisystemformat-Option »%s«"
-#: ../libsvn_fs_fs/fs_fs.c:1091
+#: ../libsvn_fs_fs/fs_fs.c:1129
+#, c-format
+msgid "Found format '%d', only created by unreleased dev builds; see http://subversion.apache.org/docs/release-notes/1.7#revprop-packing"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:1140
#, c-format
msgid "Expected FS format between '1' and '%d'; found format '%d'"
msgstr "Erwartete Dateisystemformat zwischen 1 und %d; fand %d"
-#: ../libsvn_fs_fs/fs_fs.c:1335
+#: ../libsvn_fs_fs/fs_fs.c:1550
#, c-format
msgid "'%s' is not a regular file. Please move it out of the way and try again"
msgstr "»%s« ist keine reguläre Datei. Bitte aus dem Weg bewegen und noch einmal versuchen."
-#: ../libsvn_fs_fs/fs_fs.c:1593
-#, c-format
-msgid "Failed to create hotcopy at '%s'. The file '%s' is missing from the source repository. Please create this file, for instance by running 'svnadmin upgrade %s'"
-msgstr "Erstellen der hotcopy auf »%s« fehlgeschlagen. Die Datei »%s« fehlt im Quellprojektarchiv. Bitte diese Datei erstellen, z.B. durch die Ausführung von »svnadmin upgrade %s«"
+#: ../libsvn_fs_fs/fs_fs.c:1708
+#, fuzzy, c-format
+msgid "Can't read '%s'"
+msgstr "Kann Datei »%s« nicht lesen"
-#: ../libsvn_fs_fs/fs_fs.c:1830 ../libsvn_fs_fs/fs_fs.c:1844
-msgid "Found malformed header in revision file"
+#: ../libsvn_fs_fs/fs_fs.c:1771 ../libsvn_fs_fs/fs_fs.c:1790
+#, fuzzy, c-format
+msgid "Found malformed header '%s' in revision file"
msgstr "Fehlerhafter Kopf in Revisionsdatei gefunden"
-#: ../libsvn_fs_fs/fs_fs.c:1878
+#: ../libsvn_fs_fs/fs_fs.c:1826
#, c-format
msgid "Invalid revision number '%ld'"
msgstr "Ungültige Revisionsnummer »%ld«"
-#: ../libsvn_fs_fs/fs_fs.c:1893 ../libsvn_fs_fs/fs_fs.c:1919
-#: ../libsvn_fs_fs/fs_fs.c:2933 ../libsvn_fs_fs/fs_fs.c:2971
-#: ../libsvn_repos/log.c:1644 ../libsvn_repos/log.c:1648
+#: ../libsvn_fs_fs/fs_fs.c:1841 ../libsvn_fs_fs/fs_fs.c:1896
+#: ../libsvn_fs_fs/fs_fs.c:1907 ../libsvn_repos/log.c:2271
+#: ../libsvn_repos/log.c:2275
#, c-format
msgid "No such revision %ld"
msgstr "Keine Revision %ld"
-#: ../libsvn_fs_fs/fs_fs.c:1976
-msgid "Manifest offset too large"
-msgstr "Manifest offset zu groß"
+#: ../libsvn_fs_fs/fs_fs.c:1941
+#, fuzzy
+msgid "Unexpected EOF"
+msgstr "Unerwartetes EOF im Datenstrom"
-#: ../libsvn_fs_fs/fs_fs.c:2086 ../libsvn_fs_fs/fs_fs.c:2100
-#: ../libsvn_fs_fs/fs_fs.c:2108 ../libsvn_fs_fs/fs_fs.c:2116
-#: ../libsvn_fs_fs/fs_fs.c:2125 ../libsvn_fs_fs/fs_fs.c:2138
-#: ../libsvn_fs_fs/fs_fs.c:2147
+#: ../libsvn_fs_fs/fs_fs.c:1948
+#, c-format
+msgid "Number '%s' invalid or too large"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:2115 ../libsvn_fs_fs/fs_fs.c:2129
+#: ../libsvn_fs_fs/fs_fs.c:2137 ../libsvn_fs_fs/fs_fs.c:2145
+#: ../libsvn_fs_fs/fs_fs.c:2154 ../libsvn_fs_fs/fs_fs.c:2167
+#: ../libsvn_fs_fs/fs_fs.c:2176
msgid "Malformed text representation offset line in node-rev"
msgstr "Fehlerhafte »text representation offset«-Zeile in Knotenrevision"
-#: ../libsvn_fs_fs/fs_fs.c:2226
+#: ../libsvn_fs_fs/fs_fs.c:2207
+#, fuzzy, c-format
+msgid "While reading representation offsets for node-revision '%s':"
+msgstr "Fehler beim Lesen der Darstellung »%s«"
+
+#: ../libsvn_fs_fs/fs_fs.c:2362
msgid "Missing id field in node-rev"
msgstr "Fehlendes ID-Feld in Knotenrevision"
-#: ../libsvn_fs_fs/fs_fs.c:2238
-msgid "Missing kind field in node-rev"
+#: ../libsvn_fs_fs/fs_fs.c:2376
+#, fuzzy, c-format
+msgid "Missing kind field in node-rev '%s'"
msgstr "Fehlendes Feld »kind« in Knotenrevision"
-#: ../libsvn_fs_fs/fs_fs.c:2272
-msgid "Missing cpath in node-rev"
+#: ../libsvn_fs_fs/fs_fs.c:2411
+#, fuzzy, c-format
+msgid "Missing cpath field in node-rev '%s'"
msgstr "Fehlender »cpath« in Knotenrevision"
-#: ../libsvn_fs_fs/fs_fs.c:2299 ../libsvn_fs_fs/fs_fs.c:2305
-msgid "Malformed copyroot line in node-rev"
+#: ../libsvn_fs_fs/fs_fs.c:2439 ../libsvn_fs_fs/fs_fs.c:2446
+#, fuzzy, c-format
+msgid "Malformed copyroot line in node-rev '%s'"
msgstr "Fehlerhafte »copyroot«-Zeile in Knotenrevision"
-#: ../libsvn_fs_fs/fs_fs.c:2323 ../libsvn_fs_fs/fs_fs.c:2329
-msgid "Malformed copyfrom line in node-rev"
+#: ../libsvn_fs_fs/fs_fs.c:2463 ../libsvn_fs_fs/fs_fs.c:2470
+#, fuzzy, c-format
+msgid "Malformed copyfrom line in node-rev '%s'"
msgstr "Fehlerhafte »copyfrom«-Zeile in Knotenrevision"
-#: ../libsvn_fs_fs/fs_fs.c:2489 ../libsvn_fs_fs/fs_fs.c:5472
-msgid "Attempted to write to non-transaction"
+#: ../libsvn_fs_fs/fs_fs.c:2639 ../libsvn_fs_fs/fs_fs.c:7538
+#, fuzzy, c-format
+msgid "Attempted to write to non-transaction '%s'"
msgstr "Versuch, in eine Nicht-Transaktion zu schreiben"
-#: ../libsvn_fs_fs/fs_fs.c:2582
-msgid "Malformed representation header"
+#: ../libsvn_fs_fs/fs_fs.c:2776
+#, fuzzy, c-format
+msgid "Malformed representation header at %s"
msgstr "Fehlerhafter Darstellungskopf"
-#: ../libsvn_fs_fs/fs_fs.c:2610
-msgid "Missing node-id in node-rev"
+#: ../libsvn_fs_fs/fs_fs.c:2808
+#, fuzzy, c-format
+msgid "Missing node-id in node-rev at r%ld (offset %s)"
msgstr "Fehlende Knoten-Id in Knotenrevision"
-#: ../libsvn_fs_fs/fs_fs.c:2616
-msgid "Corrupt node-id in node-rev"
+#: ../libsvn_fs_fs/fs_fs.c:2817
+#, fuzzy, c-format
+msgid "Corrupt node-id '%s' in node-rev at r%ld (offset %s)"
msgstr "Beschädigter Knoten-Id in Knotenrevision"
-#: ../libsvn_fs_fs/fs_fs.c:2692
-#, c-format
-msgid "Revision file lacks trailing newline"
+#: ../libsvn_fs_fs/fs_fs.c:2908
+#, fuzzy, c-format
+msgid "Revision file (r%ld) lacks trailing newline"
msgstr "Revisionsdatei hat keinen abschließenden Zeilenumbruch"
-#: ../libsvn_fs_fs/fs_fs.c:2705
-#, c-format
-msgid "Final line in revision file longer than 64 characters"
+#: ../libsvn_fs_fs/fs_fs.c:2922
+#, fuzzy, c-format
+msgid "Final line in revision file (r%ld) longer than 64 characters"
msgstr "Letzte Zeile in der Revisionsdatei ist länger als 64 Zeichen"
-#: ../libsvn_fs_fs/fs_fs.c:2719
-msgid "Final line in revision file missing space"
+#: ../libsvn_fs_fs/fs_fs.c:2937
+#, fuzzy, c-format
+msgid "Final line in revision file r%ld missing space"
msgstr "Letzte Zeile in der Revisionsdatei enthält kein Leerzeichen"
-#: ../libsvn_fs_fs/fs_fs.c:3050
+#: ../libsvn_fs_fs/fs_fs.c:3632
+#, c-format
+msgid "Packed revprop manifest for rev %ld too small"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:3678
+#, fuzzy
+msgid "Header end not found"
+msgstr "Eigenschaft nicht gefunden"
+
+#: ../libsvn_fs_fs/fs_fs.c:3706
+msgid "Packed revprop size exceeds pack file size"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:3765
+#, fuzzy, c-format
+msgid "No such packed revision %ld"
+msgstr "Keine Revision %ld"
+
+#: ../libsvn_fs_fs/fs_fs.c:3805
+#, fuzzy, c-format
+msgid "Failed to read revprop pack file for rev %ld"
+msgstr "Konnte Zeit für Revision %ld nicht ermitteln"
+
+#: ../libsvn_fs_fs/fs_fs.c:3812
+#, c-format
+msgid "Revprop pack file for rev %ld is corrupt"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:3885
+#, fuzzy, c-format
+msgid "Could not read revprops for revision %ld"
+msgstr "Eigenschaften für Revision %ld kopiert.\n"
+
+#: ../libsvn_fs_fs/fs_fs.c:4110
+#, c-format
+msgid "Packed file '%s' misses a tag"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:4445
msgid "Malformed svndiff data in representation"
msgstr "Fehlerhafte svndiff-Daten in Darstellung"
-#: ../libsvn_fs_fs/fs_fs.c:3242 ../libsvn_fs_fs/fs_fs.c:3255
+#: ../libsvn_fs_fs/fs_fs.c:4881 ../libsvn_fs_fs/fs_fs.c:4900
msgid "Reading one svndiff window read beyond the end of the representation"
msgstr "Lesen eines svndiff-Fensters las über Ende der Darstellung hinaus"
-#: ../libsvn_fs_fs/fs_fs.c:3395
-msgid "svndiff data requested non-existent source"
-msgstr "svndiff-Daten verlangten nicht existierende Quelle"
-
-#: ../libsvn_fs_fs/fs_fs.c:3401
-msgid "svndiff requested position beyond end of stream"
-msgstr "Von svndiff verlangte Position ist jenseits des Datenstromendes"
-
-#: ../libsvn_fs_fs/fs_fs.c:3424 ../libsvn_fs_fs/fs_fs.c:3441
+#: ../libsvn_fs_fs/fs_fs.c:4988
msgid "svndiff window length is corrupt"
msgstr "Svndiff Fensterlänge ist beschädigt"
-#: ../libsvn_fs_fs/fs_fs.c:3493
#
+#: ../libsvn_fs_fs/fs_fs.c:5156
msgid "Checksum mismatch while reading representation"
msgstr "Prüfsummenfehler beim Lesen der Darstellung"
-#: ../libsvn_fs_fs/fs_fs.c:3790 ../libsvn_fs_fs/fs_fs.c:3803
-#: ../libsvn_fs_fs/fs_fs.c:3809 ../libsvn_fs_fs/fs_fs.c:6772
-#: ../libsvn_fs_fs/fs_fs.c:6781 ../libsvn_fs_fs/fs_fs.c:6787
-msgid "Directory entry corrupt"
+#: ../libsvn_fs_fs/fs_fs.c:5519 ../libsvn_fs_fs/fs_fs.c:5533
+#: ../libsvn_fs_fs/fs_fs.c:5540
+#, fuzzy, c-format
+msgid "Directory entry corrupt in '%s'"
msgstr "Verzeichniseintrag beschädigt"
-#: ../libsvn_fs_fs/fs_fs.c:4211 ../libsvn_fs_fs/fs_fs.c:4216
-#: ../libsvn_fs_fs/fs_fs.c:4222 ../libsvn_fs_fs/fs_fs.c:4239
-#: ../libsvn_fs_fs/fs_fs.c:4272 ../libsvn_fs_fs/fs_fs.c:4292
-#: ../libsvn_fs_fs/fs_fs.c:4326 ../libsvn_fs_fs/fs_fs.c:4331
+#: ../libsvn_fs_fs/fs_fs.c:6018 ../libsvn_fs_fs/fs_fs.c:6023
+#: ../libsvn_fs_fs/fs_fs.c:6029 ../libsvn_fs_fs/fs_fs.c:6046
+#: ../libsvn_fs_fs/fs_fs.c:6079 ../libsvn_fs_fs/fs_fs.c:6099
+#: ../libsvn_fs_fs/fs_fs.c:6134 ../libsvn_fs_fs/fs_fs.c:6139
msgid "Invalid changes line in rev-file"
msgstr "Ungültige »changes« Zeile in Rev Datei"
-#: ../libsvn_fs_fs/fs_fs.c:4265
+#: ../libsvn_fs_fs/fs_fs.c:6072
msgid "Invalid change kind in rev file"
msgstr "Ungültiger Änderungstyp in Rev Datei"
-#: ../libsvn_fs_fs/fs_fs.c:4285
+#: ../libsvn_fs_fs/fs_fs.c:6092
msgid "Invalid text-mod flag in rev-file"
msgstr "Ungültiges »text-mod« Flag in Rev Datei"
-#: ../libsvn_fs_fs/fs_fs.c:4305
+#: ../libsvn_fs_fs/fs_fs.c:6112
msgid "Invalid prop-mod flag in rev-file"
msgstr "Ungültiges »prop-mod« Flag in Rev Datei"
-#: ../libsvn_fs_fs/fs_fs.c:4482
+#: ../libsvn_fs_fs/fs_fs.c:6370
msgid "Copying from transactions not allowed"
msgstr "Kopieren aus Transaktionen ist nicht erlaubt."
-#: ../libsvn_fs_fs/fs_fs.c:4638
+#: ../libsvn_fs_fs/fs_fs.c:6503
#, c-format
msgid "Unable to create transaction directory in '%s' for revision %ld"
msgstr "Kann Transaktionsverzeichnis in »%s« in Revision %ld nicht anlegen"
-#: ../libsvn_fs_fs/fs_fs.c:4761
+#: ../libsvn_fs_fs/fs_fs.c:6568
msgid "Internal error: a null transaction id was passed to get_txn_proplist()"
msgstr "Interner Fehler: eine Transaktionskennung von Null wurde übergeben um get_txn_proplist() zu erhalten"
-#: ../libsvn_fs_fs/fs_fs.c:4920 ../libsvn_fs_fs/fs_fs.c:4927
+#: ../libsvn_fs_fs/fs_fs.c:6727 ../libsvn_fs_fs/fs_fs.c:6734
msgid "next-id file corrupt"
msgstr "»next-id« Datei beschädigt"
-#: ../libsvn_fs_fs/fs_fs.c:5023
-msgid "Transaction cleanup failed"
+#: ../libsvn_fs_fs/fs_fs.c:6830
+#, fuzzy, c-format
+msgid "Transaction '%s' cleanup failed"
msgstr "Aufräumen der Transaktion schlug fehl"
-#: ../libsvn_fs_fs/fs_fs.c:5136
-msgid "Invalid change type"
+#: ../libsvn_fs_fs/fs_fs.c:6970
+#, fuzzy, c-format
+msgid "Invalid change type %d"
msgstr "Ungültiger Änderungstyp"
-#: ../libsvn_fs_fs/fs_fs.c:5491
+#: ../libsvn_fs_fs/fs_fs.c:7558
msgid "Can't set text contents of a directory"
msgstr "Kann Textinhalt im Verzeichnis nicht erzeugen"
-#: ../libsvn_fs_fs/fs_fs.c:5575 ../libsvn_fs_fs/fs_fs.c:5580
-#: ../libsvn_fs_fs/fs_fs.c:5587
+#: ../libsvn_fs_fs/fs_fs.c:7644 ../libsvn_fs_fs/fs_fs.c:7649
+#: ../libsvn_fs_fs/fs_fs.c:7656
msgid "Corrupt 'current' file"
msgstr "Beschädigte Datei »current«"
-#: ../libsvn_fs_fs/fs_fs.c:6058
+#: ../libsvn_fs_fs/fs_fs.c:7916
+#, c-format
+msgid "predecessor count for the root node-revision is wrong: found (%d+%ld != %d), committing r%ld"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:8051
+msgid "Truncated protorev file detected"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:8406
msgid "Transaction out of date"
msgstr "Transaktion ist veraltet"
-#: ../libsvn_fs_fs/fs_fs.c:6234
-#, fuzzy
-msgid "Obliteration of already-packed revision is not supported"
-msgstr "Annotieren der WORKING-Revision wird nicht unterstützt"
-
-#: ../libsvn_fs_fs/fs_fs.c:6714
+#: ../libsvn_fs_fs/fs_fs.c:8904
msgid "Recovery encountered a non-directory node"
msgstr "Wiederherstellung fand einen Nicht-Verzeichnisknoten"
-#: ../libsvn_fs_fs/fs_fs.c:6736
+#: ../libsvn_fs_fs/fs_fs.c:8926
msgid "Recovery encountered a deltified directory representation"
msgstr "Wiederherstellung fand eine deltifizierte Verzeichnisrepräsentation"
+#: ../libsvn_fs_fs/fs_fs.c:8962 ../libsvn_fs_fs/fs_fs.c:8971
+#: ../libsvn_fs_fs/fs_fs.c:8977
+msgid "Directory entry corrupt"
+msgstr "Verzeichniseintrag beschädigt"
+
# FIXME: rev ==> revision
-#: ../libsvn_fs_fs/fs_fs.c:6886
+#: ../libsvn_fs_fs/fs_fs.c:9150
#, c-format
msgid "Expected current rev to be <= %ld but found %ld"
msgstr "Erwartete, dass aktuelle Revision <= %ld gilt, fand aber %ld"
-#: ../libsvn_fs_fs/fs_fs.c:6959
+#: ../libsvn_fs_fs/fs_fs.c:9207
#, c-format
msgid "Revision %ld has a revs file but no revprops file"
msgstr "Revision %ld hat eine Revisions-Datei aber keine Revisionseigenschafts-Datei"
-#: ../libsvn_fs_fs/fs_fs.c:6967
+#: ../libsvn_fs_fs/fs_fs.c:9214
+#, fuzzy, c-format
+msgid "Revision %ld has a revs file but the revprops file is inaccessible"
+msgstr "Revision %ld hat eine Revisions-Datei aber keine Revisionseigenschafts-Datei"
+
+#: ../libsvn_fs_fs/fs_fs.c:9223
#, c-format
msgid "Revision %ld has a non-file where its revprops file should be"
msgstr "Revision %ld hat eine Nicht-Datei, wo seine Revisionseigenschafts-Datei sein sollte"
-#: ../libsvn_fs_fs/fs_fs.c:7145
+#: ../libsvn_fs_fs/fs_fs.c:9401
#, c-format
msgid "Node origin for '%s' exists with a different value (%s) than what we were about to store (%s)"
msgstr "Knotenursprung für »%s« existiert mit einem anderen Wert (%s) als der, der gespeichert werden soll (%s)"
-#: ../libsvn_fs_fs/fs_fs.c:7251
-msgid "No such transaction"
+#: ../libsvn_fs_fs/fs_fs.c:9507
+#, fuzzy, c-format
+msgid "No such transaction '%s'"
msgstr "Keine solche Transaktion"
-#: ../libsvn_fs_fs/fs_fs.c:7711
-msgid "FS format too old to pack, please upgrade."
+#: ../libsvn_fs_fs/fs_fs.c:10225
+#, fuzzy, c-format
+msgid "FSFS format (%d) too old to pack; please upgrade the filesystem."
msgstr "Das Dateisystemformat ist zum Packen zu alt, bitte aktualisieren Sie."
-#: ../libsvn_fs_fs/lock.c:117
+#: ../libsvn_fs_fs/fs_fs.c:10441 ../libsvn_subr/io.c:247
+#, c-format
+msgid "Error converting entry in directory '%s' to UTF-8"
+msgstr "Fehler beim Konvertieren eines Eintrags im Verzeichnis »%s« nach UTF-8"
+
+#: ../libsvn_fs_fs/fs_fs.c:10478 ../libsvn_subr/io.c:1020
+#, c-format
+msgid "Source '%s' is not a directory"
+msgstr "Quelle »%s« ist kein Verzeichnis"
+
+#: ../libsvn_fs_fs/fs_fs.c:10484 ../libsvn_subr/io.c:1026
+#, c-format
+msgid "Destination '%s' is not a directory"
+msgstr "Ziel »%s« ist kein Verzeichnis"
+
+#: ../libsvn_fs_fs/fs_fs.c:10556 ../libsvn_subr/io.c:1103
+#: ../libsvn_subr/io.c:2482
+#, c-format
+msgid "Can't read directory '%s'"
+msgstr "Kann Verzeichnis »%s« nicht lesen"
+
+#: ../libsvn_fs_fs/fs_fs.c:10561 ../libsvn_subr/io.c:1108
+#: ../libsvn_subr/io.c:2487 ../libsvn_subr/io.c:3910
+#, c-format
+msgid "Error closing directory '%s'"
+msgstr "Fehler beim Schließen von Verzeichnis »%s«"
+
+#: ../libsvn_fs_fs/fs_fs.c:10801
+#, c-format
+msgid "The FSFS format (%d) of the hotcopy source does not match the FSFS format (%d) of the hotcopy destination; please upgrade both repositories to the same format"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:10810
+msgid "The UUID of the hotcopy source does not match the UUID of the hotcopy destination"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:10817
+msgid "The sharding layout configuration of the hotcopy source does not match the sharding layout configuration of the hotcopy destination"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:10922
+#, c-format
+msgid "Failed to create hotcopy at '%s'. The file '%s' is missing from the source repository. Please create this file, for instance by running 'svnadmin upgrade %s'"
+msgstr "Erstellen der hotcopy auf »%s« fehlgeschlagen. Die Datei »%s« fehlt im Quellprojektarchiv. Bitte diese Datei erstellen, z.B. durch die Ausführung von »svnadmin upgrade %s«"
+
+#: ../libsvn_fs_fs/fs_fs.c:10948
+#, c-format
+msgid "The hotcopy destination already contains more revisions (%lu) than the hotcopy source contains (%lu); are source and destination swapped?"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:10984
+#, c-format
+msgid "The hotcopy destination already contains more packed revisions (%lu) than the hotcopy source contains (%lu)"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:11097
+#, c-format
+msgid "The assumed HEAD revision (%lu) of the hotcopy source has been packed while the hotcopy was in progress; please restart the hotcopy operation"
+msgstr ""
+
+#: ../libsvn_fs_fs/fs_fs.c:11112
+#, c-format
+msgid "Revision %lu disappeared from the hotcopy source while hotcopy was in progress"
+msgstr ""
+
+#: ../libsvn_fs_fs/lock.c:120
#, c-format
msgid "Corrupt lockfile for path '%s' in filesystem '%s'"
msgstr "Beschädigte Sperrdatei für Pfad »%s« in Dateisystem »%s«"
-#: ../libsvn_fs_fs/lock.c:219
+#: ../libsvn_fs_fs/lock.c:228
#, c-format
msgid "Cannot write lock/entries hashfile '%s'"
msgstr "Kann »lock/entries« Hashdatei »%s« nicht schreiben"
-#: ../libsvn_fs_fs/lock.c:271
+#: ../libsvn_fs_fs/lock.c:280
#, c-format
msgid "Can't parse lock/entries hashfile '%s'"
msgstr "Kann »lock/entries« Hashdatei »%s« nicht zerlegen"
-#: ../libsvn_fs_fs/lock.c:787
+#: ../libsvn_fs_fs/lock.c:821
#, c-format
msgid "Lock failed: newer version of '%s' exists"
msgstr "Sperren schlug fehl: eine neuere Version von »%s« existiert"
+#: ../libsvn_fs_fs/rep-cache.c:113
+#, fuzzy
+msgid "Couldn't open rep-cache database"
+msgstr "Konnte Projektarchiv nicht öffnen"
+
# TODO: Same strings can be shared with another table!
-#: ../libsvn_fs_fs/rep-cache.c:96 ../libsvn_fs_fs/rep-cache.c:136
+#: ../libsvn_fs_fs/rep-cache.c:242 ../libsvn_fs_fs/rep-cache.c:287
msgid "Only SHA1 checksums can be used as keys in the rep_cache table.\n"
msgstr "Nur SHA1-Prüfsummen können als Schlüssel in der Tabelle rep_cache verwendet werden.\n"
-#: ../libsvn_fs_fs/rep-cache.c:153
+#: ../libsvn_fs_fs/rep-cache.c:323
#, c-format
msgid "Representation key for checksum '%%s' exists in filesystem '%%s' with a different value (%%ld,%%%s,%%%s,%%%s) than what we were about to store (%%ld,%%%s,%%%s,%%%s)"
msgstr "Repräsentationsschlüssel für Prüfsumme »%%s« existiert im Dateisystem »%%s« mit einem anderen Wert (%%ld,%%%s,%%%s,%%%s) als der, der gespeichert werden soll (%%ld,%%%s,%%%s,%%%s)"
-#: ../libsvn_fs_fs/tree.c:3435
+#: ../libsvn_fs_fs/tree.c:3700
#, c-format
msgid "Node-revision #'%s' claims to have mergeinfo but doesn't"
msgstr "Knotenrevision #»%s« behauptet, Zusammenführungsinformationen zu haben, hat aber keine"
-#: ../libsvn_fs_fs/tree.c:3557
+#: ../libsvn_fs_fs/tree.c:3819
#, c-format
msgid "Node-revision '%s@%ld' claims to have mergeinfo but doesn't"
msgstr "Knotenrevision »%s@%ld« behauptet, Zusammenführungsinformationen zu haben, hat aber keine"
-#: ../libsvn_fs_fs/tree.c:3678
+#: ../libsvn_fs_fs/tree.c:4020
#, c-format
msgid "Querying mergeinfo requires version %d of the FSFS filesystem schema; filesystem '%s' uses only version %d"
msgstr "Abfrage der Zusammenführungsinformationen erfordert Version %d des FSFS-Dateisystem-Schemas; Dateisystem »%s« verwendet nur Version %d"
-#: ../libsvn_fs_util/fs-util.c:104
+#: ../libsvn_fs_util/fs-util.c:139
msgid "Filesystem object has not been opened yet"
msgstr "Dateisystemobjekt ist noch nicht geöffnet"
-#: ../libsvn_fs_util/fs-util.c:107
+#: ../libsvn_fs_util/fs-util.c:142
msgid "Filesystem object already open"
msgstr "Dateisystemobjekt ist bereits geöffnet"
-#: ../libsvn_ra/compat.c:180
+#: ../libsvn_ra/compat.c:181
#, c-format
msgid "Missing changed-path information for '%s' in revision %ld"
msgstr "»%s« fehlt in der Liste der geänderten Pfade von Revision %ld"
-#: ../libsvn_ra/compat.c:307 ../libsvn_ra/compat.c:554
+#: ../libsvn_ra/compat.c:325 ../libsvn_ra/compat.c:569
#, c-format
msgid "Path '%s' doesn't exist in revision %ld"
msgstr "Pfad »%s« existiert nicht in Revision %ld"
-#: ../libsvn_ra/compat.c:384
+#: ../libsvn_ra/compat.c:402
#, c-format
msgid "'%s' in revision %ld is an unrelated object"
msgstr "»%s« in Revision %ld hat keinen Bezug zur Arbeitskopie"
-#: ../libsvn_ra/compat.c:844 ../libsvn_ra/ra_loader.c:1201
+#: ../libsvn_ra/compat.c:842 ../libsvn_ra/ra_loader.c:1272
#, c-format
msgid "Invalid peg revision %ld"
msgstr "Ungültige Fix-Revision %ld"
-#: ../libsvn_ra/compat.c:847 ../libsvn_ra/ra_loader.c:1204
-#: ../libsvn_repos/rev_hunt.c:208 ../libsvn_repos/rev_hunt.c:323
+#: ../libsvn_ra/compat.c:845 ../libsvn_ra/ra_loader.c:1275
+#: ../libsvn_repos/rev_hunt.c:213 ../libsvn_repos/rev_hunt.c:328
#, c-format
msgid "Invalid end revision %ld"
msgstr "Ungültige Endrevision %ld"
-#: ../libsvn_ra/compat.c:850 ../libsvn_ra/ra_loader.c:1207
+#: ../libsvn_ra/compat.c:848 ../libsvn_ra/ra_loader.c:1278
msgid "Peg revision must precede end revision"
msgstr "Fix-Revision muss vor der Endrevision liegen"
-#: ../libsvn_ra/ra_loader.c:234
+#: ../libsvn_ra/ra_loader.c:214
#, c-format
msgid "Mismatched RA version for '%s': found %d.%d.%d%s, expected %d.%d.%d%s"
msgstr "Version des ZM »%s« stimmt nicht überein: gefunden %d.%d.%d%s, erwartet %d.%d.%d%s"
-#: ../libsvn_ra/ra_loader.c:419
+#: ../libsvn_ra/ra_loader.c:291 ../libsvn_ra_serf/serf.c:520
+#, c-format
+msgid "Illegal repository URL '%s'"
+msgstr "Illegale Projektarchiv-URL »%s«"
+
+#: ../libsvn_ra/ra_loader.c:399
#, c-format
msgid "Invalid config: unknown HTTP library '%s'"
msgstr "Ungültige Konfiguration: Unbekannte HTTP-Bibliothek »%s«"
-#: ../libsvn_ra/ra_loader.c:483
+#: ../libsvn_ra/ra_loader.c:468
#, c-format
msgid "Unrecognized URL scheme for '%s'"
msgstr "Unbekanntes URL-Schema für »%s«"
-#: ../libsvn_ra/ra_loader.c:518
+#: ../libsvn_ra/ra_loader.c:519
#, c-format
msgid "Repository UUID '%s' doesn't match expected UUID '%s'"
msgstr "UUID des Projektarchivs »%s« entspricht nicht der erwarteten UUID »%s«"
-#: ../libsvn_ra/ra_loader.c:568
+#: ../libsvn_ra/ra_loader.c:540
+#, c-format
+msgid "'%s' isn't in the same repository as '%s'"
+msgstr "»%s« ist nicht im selben Projektarchiv wie »%s«"
+
+#: ../libsvn_ra/ra_loader.c:564
#, c-format
msgid "'%s' isn't a child of session URL '%s'"
msgstr "»%s« ist kein Kind der Sitzungs-URL »%s«"
-#: ../libsvn_ra/ra_loader.c:591 ../libsvn_ra_neon/session.c:1155
-#: ../libsvn_ra_svn/client.c:2271
+#: ../libsvn_ra/ra_loader.c:580 ../libsvn_ra_svn/client.c:2425
#, c-format
msgid "'%s' isn't a child of repository root URL '%s'"
msgstr "»%s« ist kein Kind der Projektarchivwurzel-URL »%s«"
-#: ../libsvn_ra/ra_loader.c:638
+#: ../libsvn_ra/ra_loader.c:624
#, c-format
msgid "Specifying 'old_value_p' is not allowed when the '%s' capability is not advertised, and could indicate a bug in your client"
msgstr "Die Angabe von »old_value_p« is nicht erlaubt, wenn die Fähigkeit »%s« nicht bekanntgemacht wurde, und könnte auf einen Bug in Ihrem Client hindeuten"
-#: ../libsvn_ra/ra_loader.c:1238
-msgid "Obliterate is not supported by this Repository Access method"
-msgstr ""
-
-#: ../libsvn_ra/ra_loader.c:1284
+#: ../libsvn_ra/ra_loader.c:1426
#, c-format
msgid " - handles '%s' scheme\n"
msgstr " - behandelt Schema »%s«\n"
-#: ../libsvn_ra/ra_loader.c:1368
+#: ../libsvn_ra/ra_loader.c:1519
#, c-format
msgid "Unrecognized URL scheme '%s'"
msgstr "Unbekanntes URL-Schema »%s«"
-#: ../libsvn_ra/util.c:66
+#: ../libsvn_ra/util.c:64
#, c-format
msgid "Retrieval of mergeinfo unsupported by '%s'"
msgstr "Abfrage der Zusammenführungsinformationen wird von »%s« nicht unterstützt"
+#: ../libsvn_ra/util.c:104
+#, c-format
+msgid "Lock was stolen by '%s'; unable to remove it"
+msgstr ""
+
+#: ../libsvn_ra/util.c:145
+#, fuzzy, c-format
+msgid "Unable to determine local hostname"
+msgstr "Kann den lokalen Hostnamen nicht bekommen"
+
+#: ../libsvn_ra/util.c:240
+#, c-format
+msgid "Couldn't get lock on destination repos after %d attempts"
+msgstr "Konnte Sperre für Zielprojektarchiv nach %d Versuchen nicht erhalten"
+
+#: ../libsvn_ra_local/ra_plugin.c:157
+msgid "memory-cache-size invalid"
+msgstr ""
+
#. ----------------------------------------------------------------
#. ** The RA vtable routines **
-#: ../libsvn_ra_local/ra_plugin.c:401
+#: ../libsvn_ra_local/ra_plugin.c:494
msgid "Module for accessing a repository on local disk."
msgstr "Modul zum Zugriff auf ein Projektarchiv auf der lokalen Festplatte"
-#: ../libsvn_ra_local/ra_plugin.c:468
+#: ../libsvn_ra_local/ra_plugin.c:570
msgid "Unable to open an ra_local session to URL"
msgstr "Kann keine ra_local-Verbindung zu einer URL aufbauen"
-#: ../libsvn_ra_local/ra_plugin.c:503
+#: ../libsvn_ra_local/ra_plugin.c:603 ../libsvn_ra_serf/serf.c:512
#, c-format
msgid "URL '%s' is not a child of the session's repository root URL '%s'"
msgstr "URL »%s« ist kein Kind der Projektarchivwurzel-URL »%s« der Sitzung"
-#: ../libsvn_ra_local/ra_plugin.c:1414 ../libsvn_ra_neon/options.c:452
-#: ../libsvn_ra_serf/options.c:622 ../libsvn_ra_svn/client.c:2464
-#, c-format
-msgid "Don't know anything about capability '%s'"
-msgstr "Es ist nichts über die Eigenschaft »%s« bekannt"
-
-#: ../libsvn_ra_local/ra_plugin.c:1537
-#, c-format
-msgid "Unsupported RA loader version (%d) for ra_local"
-msgstr "Nicht unterstützte Zugriffsmodul-Laderversion (%d) für ra_local"
-
-#: ../libsvn_ra_local/split_url.c:49 ../libsvn_ra_local/split_url.c:55
-#, c-format
-msgid "Unable to open repository '%s'"
-msgstr "Projektarchiv »%s« kann nicht geöffnet werden"
-
-#: ../libsvn_ra_neon/commit.c:245
-msgid "Could not fetch the Version Resource URL (needed during an import or when it is missing from the local, cached props)"
-msgstr "Konnte die Versionsressourcen-URL nicht bestimmen (wird für einen Import oder, falls sie in den lokalen, zwischengespeicherten Eigenschaften fehlt, benötigt)"
-
-#: ../libsvn_ra_neon/commit.c:503
-#, c-format
-msgid "File or directory '%s' is out of date; try updating"
-msgstr "Datei oder Verzeichnis »%s« ist veraltet; versuchen Sie zu aktualisieren"
-
-#: ../libsvn_ra_neon/commit.c:511
-msgid "The CHECKOUT response did not contain a 'Location:' header"
-msgstr "Die CHECKOUT-Antwort enthielt keinen »Location:« Kopf"
-
-#: ../libsvn_ra_neon/commit.c:521 ../libsvn_ra_neon/props.c:216
-#: ../libsvn_ra_neon/util.c:566 ../libsvn_ra_serf/commit.c:1648
-#: ../libsvn_ra_serf/commit.c:2055 ../libsvn_ra_serf/update.c:2130
-#, c-format
-msgid "Unable to parse URL '%s'"
-msgstr "Konnte die URL »%s« nicht zerlegen"
-
-#: ../libsvn_ra_neon/commit.c:1049 ../libsvn_ra_serf/commit.c:1913
-#, c-format
-msgid "File '%s' already exists"
-msgstr "Datei »%s« existiert bereits"
-
-#: ../libsvn_ra_neon/commit.c:1176
-#, c-format
-msgid "Could not write svndiff to temp file"
-msgstr "Konnte svndiff nicht in Temporärdatei schreiben"
-
-#: ../libsvn_ra_neon/fetch.c:246
-msgid "Could not save the URL of the version resource"
-msgstr "Konnte die URL der versionierten Ressource nicht speichern"
-
-#: ../libsvn_ra_neon/fetch.c:439
-msgid "Could not get content-type from response"
-msgstr "Konnte »content-type« nicht aus der Antwort lesen"
-
-#: ../libsvn_ra_neon/fetch.c:532
-msgid "Could not save file"
-msgstr "Konnte Datei nicht sichern"
-
-#: ../libsvn_ra_neon/fetch.c:995
-msgid "Server response missing the expected deadprop-count property"
-msgstr "Die Serverantwort enthält die erwartete Eigenschaft »deadprop-count« nicht"
-
-#: ../libsvn_ra_neon/fetch.c:1091 ../libsvn_ra_serf/property.c:1001
-msgid "The OPTIONS response did not include the youngest revision"
-msgstr "Die OPTIONS-Antwort enthielt nicht die jüngste Revision"
-
-#: ../libsvn_ra_neon/fetch.c:1199 ../libsvn_ra_serf/commit.c:2471
-msgid "DAV request failed; it's possible that the repository's pre-revprop-change hook either failed or is non-existent"
-msgstr "DAV-Anfrage schlug fehl; möglicherweise ist entweder die Aktion »pre-revprop-change« gescheitert oder sie fehlt"
-
-# FIXME: collect messages!
-#: ../libsvn_ra_neon/fetch.c:1450
-#, c-format
-msgid "Missing rev attr in target-revision element"
-msgstr "Fehlendes Revisionsattribut in Element »target-revision«"
-
-#: ../libsvn_ra_neon/fetch.c:1461 ../libsvn_ra_serf/update.c:1513
-#, c-format
-msgid "Missing name attr in absent-directory element"
-msgstr "Fehlendes Namensattribut in Element »absent-directory«"
-
-#: ../libsvn_ra_neon/fetch.c:1477 ../libsvn_ra_serf/update.c:1536
-#, c-format
-msgid "Missing name attr in absent-file element"
-msgstr "Fehlendes Namensattribut in Element »absent-file«"
-
-#: ../libsvn_ra_neon/fetch.c:1492
-#, c-format
-msgid "Missing path attr in resource element"
-msgstr "Fehlendes Pfadattribut in Ressourcen-Element"
-
-#: ../libsvn_ra_neon/fetch.c:1501
-#, c-format
-msgid "Missing rev attr in open-directory element"
-msgstr "Fehlendes Revisionsattribut in Element »open-directory«"
-
-#: ../libsvn_ra_neon/fetch.c:1532 ../libsvn_ra_serf/replay.c:282
-#: ../libsvn_ra_serf/update.c:1342
-#, c-format
-msgid "Missing name attr in open-directory element"
-msgstr "Fehlendes Namensattribut in Element »open-directory«"
-
-#: ../libsvn_ra_neon/fetch.c:1559 ../libsvn_ra_serf/replay.c:308
-#: ../libsvn_ra_serf/update.c:1377
-#, c-format
-msgid "Missing name attr in add-directory element"
-msgstr "Fehlendes Namensattribut in Element »add-directory«"
-
-#: ../libsvn_ra_neon/fetch.c:1572
-#, c-format
-msgid "Missing copyfrom-rev attr in add-directory element"
-msgstr "Fehlendes Attribut »copyfrom-rev« in Element »add-directory«"
-
-#: ../libsvn_ra_neon/fetch.c:1649
-#, c-format
-msgid "Missing rev attr in open-file element"
-msgstr "Fehlendes Revisionsattribut in Element »open-file«"
-
-#: ../libsvn_ra_neon/fetch.c:1656 ../libsvn_ra_serf/replay.c:343
-#: ../libsvn_ra_serf/update.c:1417
-#, c-format
-msgid "Missing name attr in open-file element"
-msgstr "Fehlendes Namensattribut in Element »open-file«"
-
-#: ../libsvn_ra_neon/fetch.c:1682 ../libsvn_ra_serf/replay.c:369
-#: ../libsvn_ra_serf/update.c:1452
-#, c-format
-msgid "Missing name attr in add-file element"
-msgstr "Fehlendes Namensattribut in Element »add-file«"
-
-#: ../libsvn_ra_neon/fetch.c:1695
-#, c-format
-msgid "Missing copyfrom-rev attr in add-file element"
-msgstr "Fehlendes Attribut »copyfrom-rev« in Element »add-file«"
-
-#: ../libsvn_ra_neon/fetch.c:1752
-#, c-format
-msgid "Missing name attr in set-prop element"
-msgstr "Fehlendes Namensattribut in Element »set-prop«"
-
-#: ../libsvn_ra_neon/fetch.c:1766
-#, c-format
-msgid "Missing name attr in remove-prop element"
-msgstr "Fehlendes Namensattribut in Element »remove-prop«"
-
-#: ../libsvn_ra_neon/fetch.c:1840 ../libsvn_ra_serf/replay.c:256
-#: ../libsvn_ra_serf/update.c:1482
-#, c-format
-msgid "Missing name attr in delete-entry element"
-msgstr "Fehlendes Namensattribut in Element »delete-entry«"
-
-#: ../libsvn_ra_neon/fetch.c:2002
-#, c-format
-msgid "Error writing to '%s': unexpected EOF"
-msgstr "Fehler beim Schreiben nach »%s«: unerwartetes EOF"
-
-#: ../libsvn_ra_neon/fetch.c:2149
-#, c-format
-msgid "Unknown XML encoding: '%s'"
-msgstr "Unbekannte XML Kodierung: »%s«"
-
-#: ../libsvn_ra_neon/fetch.c:2456
-#, c-format
-msgid "REPORT response handling failed to complete the editor drive"
-msgstr "Die Abwicklung der REPORT-Antwort konnte den Editorlauf nicht vollenden."
-
-#: ../libsvn_ra_neon/file_revs.c:290
-msgid "Failed to write full amount to stream"
-msgstr "Konnte nicht alles in den Datenstrom schreiben"
-
-#: ../libsvn_ra_neon/file_revs.c:376 ../libsvn_ra_neon/get_deleted_rev.c:170
-#: ../libsvn_ra_neon/get_location_segments.c:211
-#: ../libsvn_ra_neon/get_locations.c:194
-#: ../libsvn_ra_serf/get_deleted_rev.c:236
-#, c-format
-msgid "'%s' REPORT not implemented"
-msgstr "»%s« REPORT nicht implementiert"
-
-#: ../libsvn_ra_neon/file_revs.c:383
-msgid "The file-revs report didn't contain any revisions"
-msgstr "Der Report »file-revs« enthielt keine Revisionen"
-
-#: ../libsvn_ra_neon/get_dated_rev.c:158
-msgid "Server does not support date-based operations"
-msgstr "Server unterstützt keine datumsbasierten Operationen"
-
-#: ../libsvn_ra_neon/get_dated_rev.c:165
-msgid "Invalid server response to dated-rev request"
-msgstr "Ungültige Antwort des Servers auf datierte Revisionsanfrage"
-
-#: ../libsvn_ra_neon/get_location_segments.c:122
-#: ../libsvn_ra_serf/getlocationsegments.c:109 ../libsvn_ra_svn/client.c:1717
-msgid "Expected valid revision range"
-msgstr "Erwartete einen gültigen Revisionsbereich"
-
-#: ../libsvn_ra_neon/get_locations.c:112
-msgid "Expected a valid revnum and path"
-msgstr "Erwartete eine gültige Revisionsnummer samt Pfad"
-
-#: ../libsvn_ra_neon/get_locks.c:238
-msgid "Incomplete lock data returned"
-msgstr "Unvollständige Sperrdaten zurückgegeben"
-
-#: ../libsvn_ra_neon/get_locks.c:329 ../libsvn_ra_serf/property.c:370
-#: ../libsvn_ra_serf/update.c:1998
-#, c-format
-msgid "Got unrecognized encoding '%s'"
-msgstr "Unbekannte Codierung »%s«"
-
-#: ../libsvn_ra_neon/get_locks.c:425 ../libsvn_ra_neon/get_locks.c:429
-#: ../libsvn_ra_serf/locks.c:566
-msgid "Server does not support locking features"
-msgstr "Server unterstützt keine Sperroperationen"
-
-#: ../libsvn_ra_neon/lock.c:196
-msgid "Invalid creation date header value in response."
-msgstr "Ungültiges Erzeugungsdatum im Header-Feld in Antwort."
-
-#: ../libsvn_ra_neon/lock.c:221
-msgid "Invalid timeout value"
-msgstr "Ungültiger Timeout-Wert"
-
-#: ../libsvn_ra_neon/lock.c:261 ../libsvn_ra_neon/lock.c:410
-#, c-format
-msgid "Failed to parse URI '%s'"
-msgstr "Konnte URI »%s« nicht zerlegen"
-
-#: ../libsvn_ra_neon/lock.c:321 ../libsvn_ra_serf/locks.c:380
-#: ../libsvn_ra_serf/locks.c:391 ../libsvn_ra_serf/locks.c:423
-#, c-format
-msgid "Lock request failed: %d %s"
-msgstr "Sperranforderung gescheitert: %d %s"
-
-#: ../libsvn_ra_neon/lock.c:425 ../libsvn_ra_serf/locks.c:719
-#, c-format
-msgid "'%s' is not locked in the repository"
-msgstr "»%s« ist im Projektarchiv nicht gesperrt"
-
-#: ../libsvn_ra_neon/lock.c:553
-msgid "Failed to fetch lock information"
-msgstr "Konnte Sperrinformationen nicht ermitteln"
-
-#: ../libsvn_ra_neon/log.c:169 ../libsvn_ra_serf/log.c:228
-#, c-format
-msgid "Missing name attr in revprop element"
-msgstr "Fehlendes Namensattribut in Element »revprop«"
-
-#: ../libsvn_ra_neon/log.c:459 ../libsvn_ra_serf/log.c:625
-#: ../libsvn_ra_svn/client.c:1422
-msgid "Server does not support custom revprops via log"
-msgstr "Server unterstützt benutzerdefinierte Revisionseigenschaften mittels log nicht"
-
-#: ../libsvn_ra_neon/merge.c:221
-#, c-format
-msgid "Protocol error: we told the server not to auto-merge any resources, but it said that '%s' was merged"
-msgstr "Protokollfehler: Wir haben dem Server mitgeteilt, Ressourcen nicht automatisch zusammenzuführen, aber dieser behauptet, dass »%s« zusammengeführt wurde"
-
-#: ../libsvn_ra_neon/merge.c:230
-#, c-format
-msgid "Internal error: there is an unknown parent (%d) for the 'DAV:response' element within the MERGE response"
-msgstr "Interner Fehler: Es gibt ein unbekanntes Elternteil (%d) für das »DAV:response« Element innerhalb der MERGE-Antwort"
-
-#: ../libsvn_ra_neon/merge.c:245
-#, c-format
-msgid "Protocol error: the MERGE response for the '%s' resource did not return all of the properties that we asked for (and need to complete the commit)"
-msgstr "Protokollfehler: Die MERGE-Antwort für die »%s«-Ressource hat nicht alle angeforderten Eigenschaften zurück geliefert (und Übertragung muss beendet werden)"
-
-#: ../libsvn_ra_neon/merge.c:264 ../libsvn_ra_serf/merge.c:304
-#, c-format
-msgid "A MERGE response for '%s' is not a child of the destination ('%s')"
-msgstr "Eine MERGE-Antwort für »%s« ist kein Kind des Ziels (»%s«)"
-
-#: ../libsvn_ra_neon/merge.c:518
-msgid "The MERGE property response had an error status"
-msgstr "Die MERGE-Eigenschaftsantwort hatte einen Fehlerstatus"
-
-#: ../libsvn_ra_neon/options.c:316
-msgid "The OPTIONS response did not include the requested activity-collection-set; this often means that the URL is not WebDAV-enabled"
-msgstr "Die OPTIONS-Antwort enthielt nicht das angeforderte »activity-collection-set«; dies heißt oft, dass die URL nicht WebDAV-fähig ist"
-
-#: ../libsvn_ra_neon/options.c:435 ../libsvn_ra_serf/options.c:605
-#, c-format
-msgid "Don't know how to handle '%s' for capability '%s'"
-msgstr "Es ist unklar, wie mit »%s« für Eigenschaft »%s« verfahren werden soll"
-
-#: ../libsvn_ra_neon/options.c:459 ../libsvn_ra_serf/options.c:629
-#, c-format
-msgid "Attempt to fetch capability '%s' resulted in '%s'"
-msgstr "Der Versuch, die Eigenschaft »%s« abzufragen, führte zu »%s«"
-
-#: ../libsvn_ra_neon/props.c:607
-#, c-format
-msgid "Failed to find label '%s' for URL '%s'"
-msgstr "Marke »%s« für URL »%s« nicht gefunden"
-
-#: ../libsvn_ra_neon/props.c:636
-#, c-format
-msgid "'%s' was not present on the resource '%s'"
-msgstr "»%s« existierte nicht für die Ressource »%s«"
-
-#: ../libsvn_ra_neon/props.c:703
-#, c-format
-msgid "Neon was unable to parse URL '%s'"
-msgstr "Neon konnte die URL »%s« nicht zerlegen"
-
-#: ../libsvn_ra_neon/props.c:736
-msgid "The path was not part of a repository"
-msgstr "Der Pfad war kein Teil eines Projektarchivs"
-
-#: ../libsvn_ra_neon/props.c:745
-#, c-format
-msgid "No part of path '%s' was found in repository HEAD"
-msgstr "Kein Teil des Pfades »%s« wurde in HEAD des Projektarchivs gefunden"
-
-#: ../libsvn_ra_neon/props.c:801 ../libsvn_ra_neon/props.c:857
-msgid "The VCC property was not found on the resource"
-msgstr "Die VCC Eigenschaft wurde in der Ressource nicht gefunden"
-
-#: ../libsvn_ra_neon/props.c:870
-msgid "The relative-path property was not found on the resource"
-msgstr "Die »relative-path« Eigenschaft wurde in der Ressource nicht gefunden"
-
-#: ../libsvn_ra_neon/props.c:991
-msgid "'DAV:baseline-collection' was not present on the baseline resource"
-msgstr "»DAV:baseline-collection« ist nicht in der Baseline-Ressource enthalten"
-
-# TODO: proper translation for Baseline
-#: ../libsvn_ra_neon/props.c:1010
-#, c-format
-msgid "'%s' was not present on the baseline resource"
-msgstr "»%s« existierte nicht für die Baseline-Ressource"
-
-#: ../libsvn_ra_neon/props.c:1234 ../libsvn_ra_serf/commit.c:983
-msgid "At least one property change failed; repository is unchanged"
-msgstr "Mindestens eine Eigenschaftsänderung schlug fehl; Projektarchiv nicht geändert"
-
-#: ../libsvn_ra_neon/replay.c:277
-msgid "Got apply-textdelta element without preceding add-file or open-file"
-msgstr "Fand Element »apply-textdelta« ohne vorhergehendes »add-file« oder »open-file«"
-
-#: ../libsvn_ra_neon/replay.c:301
-msgid "Got close-file element without preceding add-file or open-file"
-msgstr "Fand Element »close-file« ohne vorhergehendes »add-file« oder »open-file«"
-
-# FIXME: inkonsistent zu obigen Meldungen: open_directory statt opening a directory
-# (Wird Bezug zu Elementen in Dump hergestellt oder nicht?)
-#: ../libsvn_ra_neon/replay.c:318
-msgid "Got close-directory element without ever opening a directory"
-msgstr "Fand Element »close-directory« ohne vorhergehendes Öffnen eines Verzeichnisses"
-
-#: ../libsvn_ra_neon/replay.c:437 ../libsvn_ra_serf/replay.c:565
-#, c-format
-msgid "Error writing stream: unexpected EOF"
-msgstr "Fehler beim Schreiben in Datenstrom: unerwartetes EOF"
-
-#: ../libsvn_ra_neon/replay.c:444
-#, c-format
-msgid "Got cdata content for a prop delete"
-msgstr "Fand cdata-Inhalt für eine Eigenschaftslöschung"
-
-#: ../libsvn_ra_neon/session.c:340
-#, c-format
-msgid "PIN for token \"%s\" in slot \"%s\""
-msgstr "PIN für Token »%s« in Slot »%s«"
-
-#: ../libsvn_ra_neon/session.c:541 ../libsvn_ra_serf/serf.c:278
-msgid "Invalid URL: illegal character in proxy port number"
-msgstr "Ungültige URL: Illegales Zeichen in Proxy Portnummer"
-
-#: ../libsvn_ra_neon/session.c:545 ../libsvn_ra_serf/serf.c:282
-msgid "Invalid URL: negative proxy port number"
-msgstr "Ungültige URL: Negative Proxy Portnummer"
-
-#: ../libsvn_ra_neon/session.c:548 ../libsvn_ra_serf/serf.c:285
-msgid "Invalid URL: proxy port number greater than maximum TCP port number 65535"
-msgstr "Ungültige URL: Proxy Portnummer ist größer als die maximale TCP Portnummer 65535"
-
-#: ../libsvn_ra_neon/session.c:562 ../libsvn_ra_serf/serf.c:260
-msgid "Invalid config: illegal character in timeout value"
-msgstr "Ungültige Konfiguration: Illegales Zeichen im Timeout-Wert"
-
-#: ../libsvn_ra_neon/session.c:566 ../libsvn_ra_serf/serf.c:264
-msgid "Invalid config: negative timeout value"
-msgstr "Ungültige Konfiguration: Negativer Timeout-Wert"
-
-#: ../libsvn_ra_neon/session.c:579
-msgid "Invalid config: illegal character in debug mask value"
-msgstr "Ungültige Konfiguration: Illegales Zeichen in Debugmaske"
-
-#: ../libsvn_ra_neon/session.c:604 ../libsvn_ra_serf/serf.c:120
-#, c-format
-msgid "Invalid config: unknown http authtype '%s'"
-msgstr "Ungültige Konfiguration: Unbekannter HTTP-Autorisationstyp »%s«"
-
-#: ../libsvn_ra_neon/session.c:665
-msgid "Module for accessing a repository via WebDAV protocol using Neon."
-msgstr "Modul zum Zugriff auf ein Projektarchiv über das Protokoll WebDAV mittels Neon."
-
-#: ../libsvn_ra_neon/session.c:745
-#, c-format
-msgid "URL '%s' is malformed or the scheme or host or path is missing"
-msgstr "URL »%s« ist fehlerhaft oder das Schema, der Rechner oder Pfad fehlt"
-
-#: ../libsvn_ra_neon/session.c:761
-msgid "Network socket initialization failed"
-msgstr "Initialisierung der Netzwerkverbindung schlug fehl"
-
-#: ../libsvn_ra_neon/session.c:825
-msgid "SSL is not supported"
-msgstr "SSL wird nicht unterstützt"
-
-#: ../libsvn_ra_neon/session.c:997 ../libsvn_ra_serf/util.c:264
-#, c-format
-msgid "Invalid config: unable to load certificate file '%s'"
-msgstr "Ungültige Konfiguration: Zertifikatsdatei »%s« kann nicht geladen werden"
-
-#: ../libsvn_ra_neon/session.c:1025
-#, c-format
-msgid "Invalid config: unable to load PKCS#11 provider '%s'"
-msgstr "Ungültige Konfiguration: PKCS#11-Anbieter »%s« kann nicht geladen werden"
-
-#: ../libsvn_ra_neon/session.c:1182 ../libsvn_ra_serf/serf.c:984
-msgid "The UUID property was not found on the resource or any of its parents"
-msgstr "Die UUID-Eigenschaft wurde weder auf der Ressource noch ihren Eltern gefunden."
-
-#: ../libsvn_ra_neon/session.c:1259
-#, c-format
-msgid "Unsupported RA loader version (%d) for ra_neon"
-msgstr "Nicht unterstützte Zugriffsmodul-Laderversion (%d) für ra_neon"
-
-#: ../libsvn_ra_neon/util.c:233
-msgid "The request response contained at least one error"
-msgstr "Die Antwort auf die Anfrage enthielt zumindest einen Fehler"
-
-#: ../libsvn_ra_neon/util.c:275
-msgid "The response contains a non-conforming HTTP status line"
-msgstr "Die Antwort enthält eine nicht konforme HTTP-Statuszeile"
-
-#: ../libsvn_ra_neon/util.c:285
-#, c-format
-msgid "Error setting property '%s': "
-msgstr "Fehler beim Setzen der Eigenschaft »%s«: "
-
-#: ../libsvn_ra_neon/util.c:580
-#, c-format
-msgid "%s of '%s'"
-msgstr "%s von »%s«"
-
-#: ../libsvn_ra_neon/util.c:592 ../libsvn_ra_serf/util.c:1929
+#: ../libsvn_ra_local/ra_plugin.c:1136 ../libsvn_ra_local/ra_plugin.c:1590
+#: ../libsvn_ra_serf/util.c:2388
#, c-format
msgid "'%s' path not found"
msgstr "»%s« Pfad nicht gefunden"
-#: ../libsvn_ra_neon/util.c:596
+#: ../libsvn_ra_local/ra_plugin.c:1532 ../libsvn_ra_serf/options.c:573
+#: ../libsvn_ra_svn/client.c:2625
#, c-format
-msgid "access to '%s' forbidden"
-msgstr "Zugriff zu »%s« verboten"
+msgid "Don't know anything about capability '%s'"
+msgstr "Es ist nichts über die Eigenschaft »%s« bekannt"
-#: ../libsvn_ra_neon/util.c:606 ../libsvn_ra_serf/util.c:1923
+#: ../libsvn_ra_local/ra_plugin.c:1738
#, c-format
-msgid "Repository moved permanently to '%s'; please relocate"
-msgstr "Das Projektarchiv wurde permanent nach »%s« verschoben; bitte umplatzieren"
+msgid "Unsupported RA loader version (%d) for ra_local"
+msgstr "Nicht unterstützte Zugriffsmodul-Laderversion (%d) für ra_local"
-#: ../libsvn_ra_neon/util.c:608 ../libsvn_ra_serf/util.c:1925
+#: ../libsvn_ra_local/split_url.c:47 ../libsvn_ra_local/split_url.c:53
#, c-format
-msgid "Repository moved temporarily to '%s'; please relocate"
-msgstr "Das Projektarchiv wurde zeitweilig nach »%s« verschoben; bitte umplatzieren"
+msgid "Unable to open repository '%s'"
+msgstr "Projektarchiv »%s« kann nicht geöffnet werden"
-# FIXME: missing translator comments!
-#: ../libsvn_ra_neon/util.c:616
-#, c-format
-msgid "Server sent unexpected return value (%d %s) in response to %s request for '%s'"
-msgstr "Der Server hat einen unerwarteten Rückgabewert (%d %s) in Antwort auf die Anfrage %s für »%s« zurückgeliefert"
+#: ../libsvn_ra_serf/commit.c:218
+#, fuzzy, c-format
+msgid "%s of '%s': %d %s"
+msgstr "%s von »%s«: %d %s (%s://%s)"
-#: ../libsvn_ra_neon/util.c:628
-#, c-format
-msgid "authorization failed: %s"
-msgstr "Autorisierung schlug fehl: %s"
-
-#: ../libsvn_ra_neon/util.c:630
-msgid "authorization failed"
-msgstr "Autorisierung schlug fehl"
-
-#: ../libsvn_ra_neon/util.c:635
-msgid "could not connect to server"
-msgstr "Konnte keine Verbindung zum Server herstellen"
-
-#: ../libsvn_ra_neon/util.c:639
-msgid "timed out waiting for server"
-msgstr "Zeitüberschreitung beim Warten auf Server"
-
-#: ../libsvn_ra_neon/util.c:983
-#, c-format
-msgid "Can't calculate the request body size"
-msgstr "Kann die Größe der Anfrage nicht berechnen"
-
-#: ../libsvn_ra_neon/util.c:1147
-#, c-format
-msgid "The %s request returned invalid XML in the response: %s (%s)"
-msgstr "Die %s-Anfrage gab in der Antwort ungültiges XML zurück: %s (%s)"
-
-#: ../libsvn_ra_neon/util.c:1332
-#, c-format
-msgid "Error reading spooled %s request response"
-msgstr "Fehler beim Lesen der Antwort auf die %s Anfrage von Festplatte"
-
-#: ../libsvn_ra_serf/auth.c:413 ../libsvn_ra_serf/auth.c:419
-#: ../libsvn_ra_serf/auth_digest.c:270
-msgid "Missing 'realm' attribute in Authorization header"
-msgstr "Fehlendes Attribut »realm« in Autorisations-Header"
-
-# CHECKME: full stop in error message?
-#: ../libsvn_ra_serf/auth_digest.c:465
-msgid "Incorrect response-digest in Authentication-Info header."
-msgstr "Falsche Antwortnummer im Header der Authentifizierungs-Informationen."
-
-#: ../libsvn_ra_serf/auth_kerb.c:160
-#, c-format
-msgid ""
-"Initialization of the GSSAPI context failed.\n"
-" %s\n"
-" %s\n"
-msgstr ""
-"Initialisierung des GSSAPI-Kontextes schlug fehl.\n"
-" %s\n"
-" %s\n"
-
-#: ../libsvn_ra_serf/commit.c:307
+#: ../libsvn_ra_serf/commit.c:316
msgid "No Location header received"
msgstr "Kein »Location« Kopf empfangen"
-#: ../libsvn_ra_serf/commit.c:438
+#: ../libsvn_ra_serf/commit.c:418
#, c-format
msgid "Directory '%s' is out of date; try updating"
msgstr "Verzeichnis »%s« ist veraltet; versuchen Sie zu aktualisieren"
-#: ../libsvn_ra_serf/commit.c:542 ../libsvn_repos/commit.c:394
+#: ../libsvn_ra_serf/commit.c:506 ../libsvn_repos/commit.c:508
#, c-format
msgid "Path '%s' not present"
msgstr "Pfad »%s« existiert nicht"
-#: ../libsvn_ra_serf/commit.c:629
+#: ../libsvn_ra_serf/commit.c:556
#, c-format
msgid "File '%s' is out of date; try updating"
msgstr "Datei »%s« ist veraltet; versuchen Sie zu aktualisieren"
-#: ../libsvn_ra_serf/commit.c:1206
+#: ../libsvn_ra_serf/commit.c:950
+msgid "At least one property change failed; repository is unchanged"
+msgstr "Mindestens eine Eigenschaftsänderung schlug fehl; Projektarchiv nicht geändert"
+
+#: ../libsvn_ra_serf/commit.c:1151
#, c-format
msgid "Failed writing updated file"
msgstr "Fehler beim Schreiben der aktualisierten Datei"
-#: ../libsvn_ra_serf/commit.c:1330 ../libsvn_ra_serf/commit.c:1408
+#: ../libsvn_ra_serf/commit.c:1339 ../libsvn_ra_serf/commit.c:1419
#, c-format
msgid "%s of '%s': %d %s (%s://%s)"
msgstr "%s von »%s«: %d %s (%s://%s)"
-#: ../libsvn_ra_serf/commit.c:1340
+#: ../libsvn_ra_serf/commit.c:1349
#, c-format
msgid "POST request did not return transaction information"
msgstr "POST-Anfrage lieferte keine Transaktionsinformationen zurück"
-#: ../libsvn_ra_serf/commit.c:1380
+#: ../libsvn_ra_serf/commit.c:1384
msgid "The OPTIONS response did not include the requested activity-collection-set value"
msgstr "Die OPTIONS-Antwort enthielt nicht den angeforderten Wert »activity-collection-set«"
-#: ../libsvn_ra_serf/commit.c:1679
+#: ../libsvn_ra_serf/commit.c:1649 ../libsvn_ra_serf/commit.c:2048
+#: ../libsvn_ra_serf/update.c:2636
#, c-format
-msgid "Adding a directory failed: %s on %s (%d %s)"
+msgid "Unable to parse URL '%s'"
+msgstr "Konnte die URL »%s« nicht zerlegen"
+
+#: ../libsvn_ra_serf/commit.c:1677 ../libsvn_ra_serf/util.c:2384
+#, fuzzy, c-format
+msgid "Access to '%s' forbidden"
+msgstr "Zugriff zu »%s« verboten"
+
+#: ../libsvn_ra_serf/commit.c:1681
+#, fuzzy, c-format
+msgid "Adding directory failed: %s on %s (%d %s)"
msgstr "Hinzufügen eines Verzeichnisses schlug fehl: %s auf %s (%d %s)"
-#: ../libsvn_ra_serf/getlocationsegments.c:233
+#: ../libsvn_ra_serf/commit.c:1900
#, c-format
-msgid "Location segment report failed on '%s'@'%ld'"
-msgstr "Ortssegmentreport schlug auf »%s«@»%ld« fehl"
+msgid "File '%s' already exists"
+msgstr "Datei »%s« existiert bereits"
-#: ../libsvn_ra_serf/locks.c:560
+#: ../libsvn_ra_serf/commit.c:2171
+#, c-format
+msgid "MERGE request failed: returned %d (during commit)"
+msgstr ""
+
+#: ../libsvn_ra_serf/commit.c:2438
+msgid "DAV request failed; it's possible that the repository's pre-revprop-change hook either failed or is non-existent"
+msgstr "DAV-Anfrage schlug fehl; möglicherweise ist entweder die Aktion »pre-revprop-change« gescheitert oder sie fehlt"
+
+#: ../libsvn_ra_serf/get_deleted_rev.c:173
+#, c-format
+msgid "'%s' REPORT not implemented"
+msgstr "»%s« REPORT nicht implementiert"
+
+#: ../libsvn_ra_serf/locks.c:234
+#, c-format
+msgid "Lock request failed: %d %s"
+msgstr "Sperranforderung gescheitert: %d %s"
+
+#: ../libsvn_ra_serf/locks.c:414
msgid "Malformed URL for repository"
msgstr "Fehlerhafte URL für Projektarchiv"
-#: ../libsvn_ra_serf/locks.c:759
+#: ../libsvn_ra_serf/locks.c:420
+msgid "Server does not support locking features"
+msgstr "Server unterstützt keine Sperroperationen"
+
+#: ../libsvn_ra_serf/locks.c:581
+#, c-format
+msgid "'%s' is not locked in the repository"
+msgstr "»%s« ist im Projektarchiv nicht gesperrt"
+
+#: ../libsvn_ra_serf/locks.c:632 ../libsvn_ra_serf/locks.c:638
#, c-format
msgid "Unlock request failed: %d %s"
msgstr "Sperrfreigabe gescheitert: %d %s"
-#: ../libsvn_ra_serf/property.c:1030 ../libsvn_ra_serf/update.c:1184
-#: ../libsvn_ra_serf/update.c:1732
+#: ../libsvn_ra_serf/log.c:168
+#, fuzzy, c-format
+msgid "Unsupported encoding '%s'"
+msgstr "Nicht unterstützte Reporttiefe »%s«"
+
+#: ../libsvn_ra_serf/log.c:574 ../libsvn_ra_svn/client.c:1569
+msgid "Server does not support custom revprops via log"
+msgstr "Server unterstützt benutzerdefinierte Revisionseigenschaften mittels log nicht"
+
+#: ../libsvn_ra_serf/merge.c:200
+#, c-format
+msgid "A MERGE response for '%s' is not a child of the destination ('%s')"
+msgstr "Eine MERGE-Antwort für »%s« ist kein Kind des Ziels (»%s«)"
+
+#: ../libsvn_ra_serf/options.c:556
+#, c-format
+msgid "Don't know how to handle '%s' for capability '%s'"
+msgstr "Es ist unklar, wie mit »%s« für Eigenschaft »%s« verfahren werden soll"
+
+#: ../libsvn_ra_serf/options.c:580
+#, c-format
+msgid "Attempt to fetch capability '%s' resulted in '%s'"
+msgstr "Der Versuch, die Eigenschaft »%s« abzufragen, führte zu »%s«"
+
+#: ../libsvn_ra_serf/property.c:279 ../libsvn_ra_serf/update.c:2477
+#, c-format
+msgid "Got unrecognized encoding '%s'"
+msgstr "Unbekannte Codierung »%s«"
+
+#: ../libsvn_ra_serf/property.c:705
+#, fuzzy
+msgid "The PROPFIND response did not include the requested properties"
+msgstr "Die PROPFIND-Antwort enthielt nicht den angeforderten Wert »resourcetype«"
+
+#: ../libsvn_ra_serf/property.c:998
+#, fuzzy
+msgid "The PROPFIND response did not include the requested baseline-collection value"
+msgstr "Die OPTIONS-Antwort enthielt nicht den angeforderten Wert »baseline-collection«"
+
+#: ../libsvn_ra_serf/property.c:1010
+#, fuzzy
+msgid "The PROPFIND response did not include the requested version-name value"
+msgstr "Die OPTIONS-Antwort enthielt nicht den angeforderten Wert »version-name«"
+
+#: ../libsvn_ra_serf/property.c:1048
msgid "The OPTIONS response did not include the requested checked-in value"
msgstr "Die OPTIONS-Antwort enthielt nicht den angeforderten Wert »checked-in«"
-#: ../libsvn_ra_serf/property.c:1047
-msgid "The OPTIONS response did not include the requested baseline-collection value"
-msgstr "Die OPTIONS-Antwort enthielt nicht den angeforderten Wert »baseline-collection«"
+#: ../libsvn_ra_serf/property.c:1130
+msgid "The OPTIONS response did not include the youngest revision"
+msgstr "Die OPTIONS-Antwort enthielt nicht die jüngste Revision"
-#: ../libsvn_ra_serf/property.c:1063
-msgid "The OPTIONS response did not include the requested version-name value"
-msgstr "Die OPTIONS-Antwort enthielt nicht den angeforderten Wert »version-name«"
+#: ../libsvn_ra_serf/property.c:1223
+msgid "The PROPFIND response did not include the requested resourcetype value"
+msgstr "Die PROPFIND-Antwort enthielt nicht den angeforderten Wert »resourcetype«"
-#: ../libsvn_ra_serf/replay.c:218 ../libsvn_ra_serf/update.c:1279
+#: ../libsvn_ra_serf/property.c:1258
+#, fuzzy
+msgid "The PROPFIND response did not include the requested 'DAV:' properties"
+msgstr "Die PROPFIND-Antwort enthielt nicht den angeforderten Wert »resourcetype«"
+
+#: ../libsvn_ra_serf/replay.c:221 ../libsvn_ra_serf/update.c:1659
msgid "Missing revision attr in target-revision element"
msgstr "Fehlendes Revisionsattribut in Element »target-revision«"
-#: ../libsvn_ra_serf/replay.c:236
+#: ../libsvn_ra_serf/replay.c:239
msgid "Missing revision attr in open-root element"
msgstr "Fehlendes Revisionsattribut in Element »open-root«"
-#: ../libsvn_ra_serf/replay.c:262
+#: ../libsvn_ra_serf/replay.c:259 ../libsvn_ra_serf/update.c:1889
+msgid "Missing name attr in delete-entry element"
+msgstr "Fehlendes Namensattribut in Element »delete-entry«"
+
+#: ../libsvn_ra_serf/replay.c:265
msgid "Missing revision attr in delete-entry element"
msgstr "Fehlendes Revisionsattribut in Element »delete-entry«"
-#: ../libsvn_ra_serf/replay.c:288 ../libsvn_ra_serf/update.c:1297
-#: ../libsvn_ra_serf/update.c:1333
+#: ../libsvn_ra_serf/replay.c:285 ../libsvn_ra_serf/update.c:1727
+msgid "Missing name attr in open-directory element"
+msgstr "Fehlendes Namensattribut in Element »open-directory«"
+
+#: ../libsvn_ra_serf/replay.c:291 ../libsvn_ra_serf/update.c:1677
+#: ../libsvn_ra_serf/update.c:1718
msgid "Missing revision attr in open-directory element"
msgstr "Fehlendes Revisionsattribut in Element »open-directory«"
-#: ../libsvn_ra_serf/replay.c:349 ../libsvn_ra_serf/update.c:1426
+#: ../libsvn_ra_serf/replay.c:311 ../libsvn_ra_serf/update.c:1766
+msgid "Missing name attr in add-directory element"
+msgstr "Fehlendes Namensattribut in Element »add-directory«"
+
+#: ../libsvn_ra_serf/replay.c:347 ../libsvn_ra_serf/update.c:1810
+msgid "Missing name attr in open-file element"
+msgstr "Fehlendes Namensattribut in Element »open-file«"
+
+#: ../libsvn_ra_serf/replay.c:353 ../libsvn_ra_serf/update.c:1819
msgid "Missing revision attr in open-file element"
msgstr "Fehlendes Revisionsattribut in Element »open-file«"
-#: ../libsvn_ra_serf/replay.c:436 ../libsvn_ra_serf/update.c:1572
-#: ../libsvn_ra_serf/update.c:1654
+#: ../libsvn_ra_serf/replay.c:374 ../libsvn_ra_serf/update.c:1844
+msgid "Missing name attr in add-file element"
+msgstr "Fehlendes Namensattribut in Element »add-file«"
+
+#: ../libsvn_ra_serf/replay.c:440 ../libsvn_ra_serf/update.c:1985
+#: ../libsvn_ra_serf/update.c:2072
#, c-format
msgid "Missing name attr in %s element"
msgstr "Fehlendes Namensattribut in Element %s"
-#: ../libsvn_ra_serf/replay.c:864
-#, c-format
-msgid "Error retrieving replay REPORT (%d)"
-msgstr "Fehler beim Holen des Wiederholungs-REPORT (%d)"
+#: ../libsvn_ra_serf/replay.c:577
+msgid "Error writing stream: unexpected EOF"
+msgstr "Fehler beim Schreiben in Datenstrom: unerwartetes EOF"
-#: ../libsvn_ra_serf/serf.c:61
+#: ../libsvn_ra_serf/sb_bucket.c:65
+#, fuzzy
+msgid "Failed to read the request"
+msgstr "ZM-Schicht konnte keine HTTP-Anforderung erzeugen"
+
+#: ../libsvn_ra_serf/serf.c:62
msgid "Module for accessing a repository via WebDAV protocol using serf."
msgstr "Modul zum Zugriff auf ein Projektarchiv über das Protokoll WebDAV mittels serf."
-#: ../libsvn_ra_serf/serf.c:408
+#: ../libsvn_ra_serf/serf.c:122
#, c-format
-msgid "Could not lookup hostname `%s'"
-msgstr "Konnte Rechnernamen »%s« nicht nachschlagen"
+msgid "Invalid config: unknown http authtype '%s'"
+msgstr "Ungültige Konfiguration: Unbekannter HTTP-Autorisationstyp »%s«"
-#: ../libsvn_ra_serf/serf.c:675
-msgid "The OPTIONS response did not include the requested resourcetype value"
-msgstr "Die OPTIONS-Antwort enthielt nicht den angeforderten Wert »resourcetype«"
+#: ../libsvn_ra_serf/serf.c:304
+msgid "Invalid config: illegal character in timeout value"
+msgstr "Ungültige Konfiguration: Illegales Zeichen im Timeout-Wert"
-#: ../libsvn_ra_serf/serf.c:839
-msgid "The PROPFIND response did not include the requested resourcetype value"
-msgstr "Die PROPFIND-Antwort enthielt nicht den angeforderten Wert »resourcetype«"
+#: ../libsvn_ra_serf/serf.c:308
+msgid "Invalid config: negative timeout value"
+msgstr "Ungültige Konfiguration: Negativer Timeout-Wert"
-#: ../libsvn_ra_serf/serf.c:1054
+#: ../libsvn_ra_serf/serf.c:321
+msgid "Invalid URL: illegal character in proxy port number"
+msgstr "Ungültige URL: Illegales Zeichen in Proxy Portnummer"
+
+#: ../libsvn_ra_serf/serf.c:325
+msgid "Invalid URL: negative proxy port number"
+msgstr "Ungültige URL: Negative Proxy Portnummer"
+
+#: ../libsvn_ra_serf/serf.c:328
+msgid "Invalid URL: proxy port number greater than maximum TCP port number 65535"
+msgstr "Ungültige URL: Proxy Portnummer ist größer als die maximale TCP Portnummer 65535"
+
+#: ../libsvn_ra_serf/serf.c:348
+#, fuzzy, c-format
+msgid "Could not resolve proxy server '%s'"
+msgstr "Konnte Zusammenführungsinformationszeichenkette »%s« nicht einlesen"
+
+#: ../libsvn_ra_serf/serf.c:420
+#, fuzzy, c-format
+msgid "Illegal URL '%s'"
+msgstr "Ungültige URL »%s«"
+
+#: ../libsvn_ra_serf/serf.c:1145
+msgid "The UUID property was not found on the resource or any of its parents"
+msgstr "Die UUID-Eigenschaft wurde weder auf der Ressource noch ihren Eltern gefunden."
+
+#: ../libsvn_ra_serf/serf.c:1219
#, c-format
msgid "Unsupported RA loader version (%d) for ra_serf"
msgstr "Nicht unterstützte Zugriffsmodul-Laderversion (%d) für ra_serf"
-#: ../libsvn_ra_serf/update.c:852
+#: ../libsvn_ra_serf/serf.c:1233
+#, c-format
+msgid "ra_serf was compiled for serf %d.%d.%d but loaded an incompatible %d.%d.%d library"
+msgstr ""
+
+#: ../libsvn_ra_serf/update.c:1122
+#, c-format
+msgid "GET request returned unexpected delta base: %s"
+msgstr ""
+
+#: ../libsvn_ra_serf/update.c:1140
#, c-format
msgid "GET request failed: %d %s"
msgstr "GET-Anfrage schlug fehl: %d %s"
-#: ../libsvn_ra_serf/update.c:2332
+#: ../libsvn_ra_serf/update.c:1923
+msgid "Missing name attr in absent-directory element"
+msgstr "Fehlendes Namensattribut in Element »absent-directory«"
+
+#: ../libsvn_ra_serf/update.c:1948
+msgid "Missing name attr in absent-file element"
+msgstr "Fehlendes Namensattribut in Element »absent-file«"
+
+#: ../libsvn_ra_serf/update.c:2016 ../libsvn_ra_serf/update.c:2123
+#, fuzzy, c-format
+msgid "Unknown tag '%s' while at state %d"
+msgstr "Unbekannter Status »%s« in Antwort auf Befehl"
+
+#: ../libsvn_ra_serf/update.c:2191 ../libsvn_ra_serf/update.c:2318
+#: ../libsvn_ra_serf/update.c:2355
+#, fuzzy
+msgid "The REPORT or PROPFIND response did not include the requested checked-in value"
+msgstr "Die OPTIONS-Antwort enthielt nicht den angeforderten Wert »checked-in«"
+
+#: ../libsvn_ra_serf/update.c:2537
#, c-format
-msgid "Error retrieving REPORT (%d)"
+msgid "Error writing to '%s': unexpected EOF"
+msgstr "Fehler beim Schreiben nach »%s«: unerwartetes EOF"
+
+#: ../libsvn_ra_serf/update.c:2873
+#, fuzzy
+msgid "Error retrieving REPORT"
msgstr "Fehler beim Holen von REPORT (%d)"
-#: ../libsvn_ra_serf/util.c:699 ../libsvn_ra_serf/util.c:702
+#: ../libsvn_ra_serf/update.c:3078
+msgid "Missing update-report close tag"
+msgstr ""
+
+#: ../libsvn_ra_serf/update.c:3510
+#, fuzzy
+msgid "Can't get text contents of a directory"
+msgstr "Kann Textinhalt im Verzeichnis nicht erzeugen"
+
+#: ../libsvn_ra_serf/util.c:347
#, c-format
+msgid "Invalid config: unable to load certificate file '%s'"
+msgstr "Ungültige Konfiguration: Zertifikatsdatei »%s« kann nicht geladen werden"
+
+#: ../libsvn_ra_serf/util.c:783 ../libsvn_ra_serf/util.c:786
msgid "Error running context"
msgstr "Fehler beim Ausführen des Kontextes"
-#: ../libsvn_ra_serf/util.c:1398
+#: ../libsvn_ra_serf/util.c:1079 ../libsvn_ra_serf/util.c:1084
+#, fuzzy, c-format
+msgid "Malformed DAV:status CDATA '%s'"
+msgstr "Fehlerhafte UUID »%s«"
+
+#: ../libsvn_ra_serf/util.c:1376
+#, fuzzy, c-format
+msgid "XML parsing failed"
+msgstr "XML-Parser schlug in »%s« fehl"
+
+#: ../libsvn_ra_serf/util.c:1379
+#, fuzzy, c-format
+msgid "XML parsing failed: (%d %s)"
+msgstr "XML-Parser schlug in »%s« fehl"
+
+#: ../libsvn_ra_serf/util.c:1754
+#, fuzzy
msgid ""
-"No more credentials or we tried too many times.\n"
+"No more credentials or we tried too manytimes.\n"
"Authentication failed"
msgstr ""
"Keine weiteren Zugangsdaten oder zu viele Versuche.\n"
"Anmeldung fehlgeschlagen"
-#: ../libsvn_ra_serf/util.c:1421
+#: ../libsvn_ra_serf/util.c:1776
msgid "Proxy authentication failed"
msgstr "Proxy-Anmeldung schlug fehl"
-#: ../libsvn_ra_serf/util.c:1495
+#: ../libsvn_ra_serf/util.c:1887
#, c-format
msgid "Premature EOF seen from server (http status=%d)"
msgstr "Vorzeitiges EOF vom Server (http Status=%d)"
-#: ../libsvn_ra_serf/util.c:1547
-#, c-format
-msgid "Unspecified error message: %d %s"
-msgstr "Nicht spezifizierte Fehlermeldung: %d %s"
+#: ../libsvn_ra_serf/util.c:1953
+#, fuzzy, c-format
+msgid "%s request on '%s' failed: %d %s"
+msgstr "GET-Anfrage schlug fehl: %d %s"
-#: ../libsvn_ra_serf/util.c:1815
-msgid "The OPTIONS response did not include the requested version-controlled-configuration value"
+#: ../libsvn_ra_serf/util.c:2276
+#, fuzzy
+msgid "The PROPFIND response did not include the requested version-controlled-configuration value"
msgstr "Die OPTIONS-Antwort enthielt nicht den angeforderten Wert »version-controlled-configuration«"
-#: ../libsvn_ra_serf/util.c:1932
+#: ../libsvn_ra_serf/util.c:2378
+#, c-format
+msgid "Repository moved permanently to '%s'; please relocate"
+msgstr "Das Projektarchiv wurde permanent nach »%s« verschoben; bitte umplatzieren"
+
+#: ../libsvn_ra_serf/util.c:2380
+#, c-format
+msgid "Repository moved temporarily to '%s'; please relocate"
+msgstr "Das Projektarchiv wurde zeitweilig nach »%s« verschoben; bitte umplatzieren"
+
+#: ../libsvn_ra_serf/util.c:2391
#, c-format
msgid "'%s': no lock token available"
msgstr "»%s«: Keine Sperrmarke verfügbar"
-#: ../libsvn_ra_svn/client.c:136
+#: ../libsvn_ra_serf/util.c:2535
+#, fuzzy, c-format
+msgid "The %s response contains invalid XML (%d %s)"
+msgstr "Option »verbose« ist im XML-Modus ungültig"
+
+#: ../libsvn_ra_serf/xml.c:673
+#, fuzzy, c-format
+msgid "Missing XML attribute: '%s'"
+msgstr "Fehlendes »left« Attribut für »%s«"
+
+#: ../libsvn_ra_serf/xml.c:748
+#, fuzzy
+msgid "The response contains invalid XML"
+msgstr "Option »verbose« ist im XML-Modus ungültig"
+
+#: ../libsvn_ra_svn/client.c:140
#, c-format
msgid "Unknown hostname '%s'"
msgstr "Unbekannter Hostname »%s«"
-#: ../libsvn_ra_svn/client.c:161
+#: ../libsvn_ra_svn/client.c:165
#, c-format
msgid "Can't connect to host '%s'"
msgstr "Kann nicht mit Host »%s« verbinden"
-#: ../libsvn_ra_svn/client.c:199
+#: ../libsvn_ra_svn/client.c:203
msgid "Prop diffs element not a list"
msgstr "Eigenschafts-Diff Element ist keine Liste"
-#: ../libsvn_ra_svn/client.c:395
+#: ../libsvn_ra_svn/client.c:410
#, c-format
msgid "Undefined tunnel scheme '%s'"
msgstr "Undefiniertes Tunnelschema »%s«"
-#: ../libsvn_ra_svn/client.c:412
+#: ../libsvn_ra_svn/client.c:427
#, c-format
msgid "Tunnel scheme %s requires environment variable %s to be defined"
msgstr "Für Tunnelschema %s muss die Umgebungsvariable %s definiert sein"
-#: ../libsvn_ra_svn/client.c:423
+#: ../libsvn_ra_svn/client.c:438
#, c-format
msgid "Can't tokenize command '%s'"
msgstr "Kann Anweisung »%s« nicht zerlegen"
-#: ../libsvn_ra_svn/client.c:454
+#: ../libsvn_ra_svn/client.c:471
#, c-format
msgid "Error in child process: %s"
msgstr "Fehler in Kindprozess: %s"
-#: ../libsvn_ra_svn/client.c:480
+#: ../libsvn_ra_svn/client.c:497
#, c-format
msgid "Can't create tunnel"
msgstr "Kann Tunnel nicht erzeugen"
-#: ../libsvn_ra_svn/client.c:525
+#: ../libsvn_ra_svn/client.c:544
msgid "To better debug SSH connection problems, remove the -q option from 'ssh' in the [tunnels] section of your Subversion configuration file."
msgstr "Um Probleme mit der Konfiguration von SSH zu untersuchen, entfernen Sie die Option »-q« von »ssh« im Abschnitt »[tunnels]« Ihrer Konfigurationsdatei für Subversion."
-#: ../libsvn_ra_svn/client.c:543
+#: ../libsvn_ra_svn/client.c:562
#, c-format
msgid "Illegal svn repository URL '%s'"
msgstr "Illegale svn Projektarchiv URL »%s«"
-#: ../libsvn_ra_svn/client.c:604
+#: ../libsvn_ra_svn/client.c:642
#, c-format
msgid "Server requires minimum version %d"
msgstr "Server erfordert mindestens Version %d"
-#: ../libsvn_ra_svn/client.c:608
+#: ../libsvn_ra_svn/client.c:646
#, c-format
msgid "Server only supports versions up to %d"
msgstr "Server unterstützt nur Versionen bis zu %d"
-#: ../libsvn_ra_svn/client.c:616
+#: ../libsvn_ra_svn/client.c:654
msgid "Server does not support edit pipelining"
msgstr "Server unterstützt »edit pipelining« nicht"
-#: ../libsvn_ra_svn/client.c:655
+#: ../libsvn_ra_svn/client.c:691
msgid "Impossibly long repository root from server"
msgstr "Unmöglich lange Projektarchivbasis vom Server"
-#: ../libsvn_ra_svn/client.c:667
+#: ../libsvn_ra_svn/client.c:703
msgid ""
"Module for accessing a repository using the svn network protocol.\n"
" - with Cyrus SASL authentication"
@@ -4268,184 +4629,202 @@
"Modul zum Zugriff auf ein Projektarchiv über das svn-Netzwerkprotokoll.\n"
" - mit Cyrus-SASL-Authentifizierung"
-#: ../libsvn_ra_svn/client.c:671
+#: ../libsvn_ra_svn/client.c:707
msgid "Module for accessing a repository using the svn network protocol."
msgstr "Modul zum Zugriff auf ein Projektarchiv über das svn-Netzwerkprotokoll"
-#: ../libsvn_ra_svn/client.c:883
+#: ../libsvn_ra_svn/client.c:925
msgid "Server did not send repository root"
msgstr "Server gab keine Projektarchivbasis zurück"
-#: ../libsvn_ra_svn/client.c:958
+#: ../libsvn_ra_svn/client.c:1002
msgid "Server doesn't support setting arbitrary revision properties during commit"
msgstr "Der Server unterstützt das Setzen beliebiger Revisionseigenschaften während eines Commits nicht"
-#: ../libsvn_ra_svn/client.c:1046
+#: ../libsvn_ra_svn/client.c:1109
+#, fuzzy
+msgid "Inherited proplist element not a list"
+msgstr "Eigenschaftselement ist keine Liste"
+
+#: ../libsvn_ra_svn/client.c:1186
msgid "Non-string as part of file contents"
msgstr "Ein Teil des Dateiinhaltes ist keine Zeichenkette"
-#: ../libsvn_ra_svn/client.c:1138
+#: ../libsvn_ra_svn/client.c:1272
msgid "Dirlist element not a list"
msgstr "Verzeichniseintrag ist keine Liste"
-#: ../libsvn_ra_svn/client.c:1198
+#: ../libsvn_ra_svn/client.c:1357
msgid "Mergeinfo element is not a list"
msgstr "Zusammenführungsinfo-Element ist keine Liste"
-#: ../libsvn_ra_svn/client.c:1411
+#: ../libsvn_ra_svn/client.c:1557
msgid "Log entry not a list"
msgstr "Logeintrag ist keine Liste"
-#: ../libsvn_ra_svn/client.c:1452
+#: ../libsvn_ra_svn/client.c:1604
msgid "Changed-path entry not a list"
msgstr "Eintrag für geänderte Pfade ist keine Liste"
-#: ../libsvn_ra_svn/client.c:1577
+#: ../libsvn_ra_svn/client.c:1733
msgid "'stat' not implemented"
msgstr "»stat« nicht implementiert"
-#: ../libsvn_ra_svn/client.c:1637
+#: ../libsvn_ra_svn/client.c:1792
msgid "'get-locations' not implemented"
msgstr "»get-locations« nicht implementiert"
-#: ../libsvn_ra_svn/client.c:1652
+#: ../libsvn_ra_svn/client.c:1807
msgid "Location entry not a list"
msgstr "Ortseintrag ist keine Liste"
-#: ../libsvn_ra_svn/client.c:1691
+#: ../libsvn_ra_svn/client.c:1846
msgid "'get-location-segments' not implemented"
msgstr "»get-location-segments« nicht implementiert"
-#: ../libsvn_ra_svn/client.c:1707
+#: ../libsvn_ra_svn/client.c:1863
msgid "Location segment entry not a list"
msgstr "Ortssegmenteintrag ist keine Liste"
-#: ../libsvn_ra_svn/client.c:1758
+#: ../libsvn_ra_svn/client.c:1873
+msgid "Expected valid revision range"
+msgstr "Erwartete einen gültigen Revisionsbereich"
+
+#: ../libsvn_ra_svn/client.c:1915
msgid "'get-file-revs' not implemented"
msgstr "»get-file-revs« nicht implementiert"
-#: ../libsvn_ra_svn/client.c:1782
+#: ../libsvn_ra_svn/client.c:1939
msgid "Revision entry not a list"
msgstr "Revisionseintrag ist keine Liste"
-#: ../libsvn_ra_svn/client.c:1799 ../libsvn_ra_svn/client.c:1829
+#: ../libsvn_ra_svn/client.c:1956 ../libsvn_ra_svn/client.c:1986
msgid "Text delta chunk not a string"
msgstr "Text-Deltastück ist kein String"
-#: ../libsvn_ra_svn/client.c:1841
+#: ../libsvn_ra_svn/client.c:1998
msgid "The get-file-revs command didn't return any revisions"
msgstr "Der »get-file-revs« Befehl gab keine Revisionen zurück"
-#: ../libsvn_ra_svn/client.c:1889
+#: ../libsvn_ra_svn/client.c:2047
msgid "Server doesn't support the lock command"
msgstr "Server unterstützt das Kommando »lock« nicht"
-#: ../libsvn_ra_svn/client.c:1953
+#: ../libsvn_ra_svn/client.c:2112
msgid "Server doesn't support the unlock command"
msgstr "Server unterstützt das Kommando »unlock« nicht"
-#: ../libsvn_ra_svn/client.c:2051
+#: ../libsvn_ra_svn/client.c:2210
msgid "Lock response not a list"
msgstr "Antwort beim Sperren ist keine Liste"
-#: ../libsvn_ra_svn/client.c:2065
+#: ../libsvn_ra_svn/client.c:2224
msgid "Unknown status for lock command"
msgstr "Unbekannter Status für Sperrbefehl"
-#: ../libsvn_ra_svn/client.c:2089
+#: ../libsvn_ra_svn/client.c:2248
msgid "Didn't receive end marker for lock responses"
msgstr "Keine Endemarke für Sperrantworten erhalten"
-#: ../libsvn_ra_svn/client.c:2179
+#: ../libsvn_ra_svn/client.c:2338
msgid "Unlock response not a list"
msgstr "Antwort beim Entsperren ist keine Liste"
-#: ../libsvn_ra_svn/client.c:2193
+#: ../libsvn_ra_svn/client.c:2352
msgid "Unknown status for unlock command"
msgstr "Unbekannter Status für Entsperrbefehl"
-#: ../libsvn_ra_svn/client.c:2216
+#: ../libsvn_ra_svn/client.c:2375
msgid "Didn't receive end marker for unlock responses"
msgstr "Keine Endemarke für Entsperrantworten erhalten"
-#: ../libsvn_ra_svn/client.c:2240 ../libsvn_ra_svn/client.c:2301
+#: ../libsvn_ra_svn/client.c:2400 ../libsvn_ra_svn/client.c:2454
msgid "Server doesn't support the get-lock command"
msgstr "Server unterstützt das Kommando »get-lock« nicht"
-#: ../libsvn_ra_svn/client.c:2315
+#: ../libsvn_ra_svn/client.c:2468
msgid "Lock element not a list"
msgstr "Sperrelement ist keine Liste"
-#: ../libsvn_ra_svn/client.c:2358
+#: ../libsvn_ra_svn/client.c:2512
msgid "Server doesn't support the replay command"
msgstr "Server unterstützt das Kommando »replay« nicht"
-#: ../libsvn_ra_svn/client.c:2389
+#: ../libsvn_ra_svn/client.c:2544
msgid "Server doesn't support the replay-range command"
msgstr "Server unterstützt das Kommando »replay-range« nicht"
-#: ../libsvn_ra_svn/client.c:2407
+#: ../libsvn_ra_svn/client.c:2562
#, c-format
msgid "Expected 'revprops', found '%s'"
msgstr "Erwartete »revprops«, fand »%s«"
-#: ../libsvn_ra_svn/client.c:2424
+#: ../libsvn_ra_svn/client.c:2579
msgid "Error while replaying commit"
msgstr "Fehler beim Wiederholen der Übertragung"
-#: ../libsvn_ra_svn/client.c:2488
+#: ../libsvn_ra_svn/client.c:2650
msgid "'get-deleted-rev' not implemented"
msgstr "»get-deleted-rev« nicht implementiert"
-#: ../libsvn_ra_svn/client.c:2553
+#: ../libsvn_ra_svn/client.c:2750
#, c-format
msgid "Unsupported RA loader version (%d) for ra_svn"
msgstr "Nicht unterstützte Zugriffsmodul-Laderversion (%d) für ra_svn"
#: ../libsvn_ra_svn/cram.c:199 ../libsvn_ra_svn/cram.c:217
-#: ../libsvn_ra_svn/cyrus_auth.c:448 ../libsvn_ra_svn/cyrus_auth.c:503
+#: ../libsvn_ra_svn/cyrus_auth.c:526 ../libsvn_ra_svn/cyrus_auth.c:582
#: ../libsvn_ra_svn/internal_auth.c:66
msgid "Unexpected server response to authentication"
msgstr "Unerwartete Serverantwort bei Anmeldung"
-#: ../libsvn_ra_svn/cyrus_auth.c:176 ../svnserve/cyrus_auth.c:113
-#: ../svnserve/cyrus_auth.c:123
-#, c-format
-msgid "Could not initialize the SASL library"
+#: ../libsvn_ra_svn/cyrus_auth.c:225
+#, fuzzy, c-format
+msgid "SASL authentication error: %s%s"
+msgstr "Anmeldefehler von Server: %s"
+
+#: ../libsvn_ra_svn/cyrus_auth.c:242
+#, fuzzy, c-format
+msgid "Could not initialized the SASL library: %s%s"
msgstr "Konnte die SASL-Bibliothek nicht initialisieren"
-#: ../libsvn_ra_svn/cyrus_auth.c:830 ../libsvn_ra_svn/internal_auth.c:63
+#: ../libsvn_ra_svn/cyrus_auth.c:415
+#, c-format
+msgid "Could not create SASL context: %s%s"
+msgstr ""
+
+#: ../libsvn_ra_svn/cyrus_auth.c:921 ../libsvn_ra_svn/internal_auth.c:63
#: ../libsvn_ra_svn/internal_auth.c:114
#, c-format
msgid "Authentication error from server: %s"
msgstr "Anmeldefehler von Server: %s"
-#: ../libsvn_ra_svn/cyrus_auth.c:834
+#: ../libsvn_ra_svn/cyrus_auth.c:925
msgid "Can't get username or password"
msgstr "Kann Benutzername oder Passwort nicht erhalten"
-#: ../libsvn_ra_svn/editorp.c:131
+#: ../libsvn_ra_svn/editorp.c:145
msgid "Successful edit status returned too soon"
msgstr "Status für erfolgreiche Bearbeitung wurde zu früh zurückgegeben"
-#: ../libsvn_ra_svn/editorp.c:458
+#: ../libsvn_ra_svn/editorp.c:513
msgid "Invalid file or dir token during edit"
msgstr "Ungültige Datei- oder Verzeichnismarke während der Bearbeitung"
-#: ../libsvn_ra_svn/editorp.c:667
+#: ../libsvn_ra_svn/editorp.c:740
msgid "Apply-textdelta already active"
msgstr "Text-Delta Anwendung bereits aktiv"
-#: ../libsvn_ra_svn/editorp.c:689 ../libsvn_ra_svn/editorp.c:707
+#: ../libsvn_ra_svn/editorp.c:762 ../libsvn_ra_svn/editorp.c:780
msgid "Apply-textdelta not active"
msgstr "Text-Delta Anwendung nicht aktiv"
-#: ../libsvn_ra_svn/editorp.c:802
+#: ../libsvn_ra_svn/editorp.c:875
#, c-format
msgid "Command 'finish-replay' invalid outside of replays"
msgstr "Das Kommando »finish-replay« ist außerhalb von »replay«s ungültig"
-#: ../libsvn_ra_svn/editorp.c:893 ../libsvn_ra_svn/marshal.c:1025
+#: ../libsvn_ra_svn/editorp.c:979 ../libsvn_ra_svn/marshal.c:1802
#, c-format
msgid "Unknown command '%s'"
msgstr "Unbekannter Befehl »%s«"
@@ -4455,35 +4834,39 @@
msgid "Can't get password"
msgstr "Kein Passwort erhalten"
-#: ../libsvn_ra_svn/marshal.c:105
+#: ../libsvn_ra_svn/marshal.c:156
msgid "Capability entry is not a word"
msgstr "Eigenschaftseintrag ist kein Wort"
-#: ../libsvn_ra_svn/marshal.c:559
+#: ../libsvn_ra_svn/marshal.c:1256
msgid "String length larger than maximum"
msgstr "Stringlänge größer als Maximum"
-#: ../libsvn_ra_svn/marshal.c:647
+#: ../libsvn_ra_svn/marshal.c:1322
msgid "Too many nested items"
msgstr "Zu viele verschachtelte Objekte"
-#: ../libsvn_ra_svn/marshal.c:666
+#: ../libsvn_ra_svn/marshal.c:1342 ../libsvn_ra_svn/marshal.c:1420
msgid "Number is larger than maximum"
msgstr "Zahl ist größer als Maximum"
-#: ../libsvn_ra_svn/marshal.c:881
+#: ../libsvn_ra_svn/marshal.c:1448
+msgid "Word too long"
+msgstr ""
+
+#: ../libsvn_ra_svn/marshal.c:1658
msgid "Proplist element not a list"
msgstr "Eigenschaftselement ist keine Liste"
-#: ../libsvn_ra_svn/marshal.c:919
+#: ../libsvn_ra_svn/marshal.c:1696
msgid "Empty error list"
msgstr "Leere Fehlerliste"
-#: ../libsvn_ra_svn/marshal.c:928 ../libsvn_ra_svn/marshal.c:954
+#: ../libsvn_ra_svn/marshal.c:1705 ../libsvn_ra_svn/marshal.c:1731
msgid "Malformed error list"
msgstr "Fehlerhafte Fehlerliste"
-#: ../libsvn_ra_svn/marshal.c:982
+#: ../libsvn_ra_svn/marshal.c:1759
#, c-format
msgid "Unknown status '%s' in command response"
msgstr "Unbekannter Status »%s« in Antwort auf Befehl"
@@ -4503,22 +4886,22 @@
msgid "Can't get socket timeout"
msgstr "Kann Socket-Timeout nicht erhalten"
-#: ../libsvn_repos/commit.c:135
+#: ../libsvn_repos/commit.c:168
#, c-format
msgid "'%s' is out of date"
msgstr "»%s« ist veraltet"
-#: ../libsvn_repos/commit.c:302 ../libsvn_repos/commit.c:447
+#: ../libsvn_repos/commit.c:287
#, c-format
msgid "Got source path but no source revision for '%s'"
msgstr "Quellpfad, aber keine Quellrevision für »%s« erhalten"
-#: ../libsvn_repos/commit.c:334 ../libsvn_repos/commit.c:478
+#: ../libsvn_repos/commit.c:320
#, c-format
msgid "Source url '%s' is from different repository"
msgstr "Quell URL »%s« stammt aus einem fremden Projektarchiv"
-#: ../libsvn_repos/commit.c:606
+#: ../libsvn_repos/commit.c:636
#, c-format
msgid ""
"Checksum mismatch for resulting fulltext\n"
@@ -4527,33 +4910,67 @@
"Prüfsummenfehler für Volltextergebnis\n"
"(%s)"
+#: ../libsvn_repos/commit.c:681
+#, fuzzy
+msgid "(no error)"
+msgstr "(kein Autor)"
+
+#: ../libsvn_repos/commit.c:712 ../libsvn_repos/commit.c:718
+msgid "post-commit hook failed with no error message."
+msgstr ""
+
+#: ../libsvn_repos/commit.c:721
+#, c-format
+msgid ""
+"post commit FS processing had error:\n"
+"%s\n"
+"%s"
+msgstr ""
+
+#: ../libsvn_repos/commit.c:722 ../libsvn_repos/commit.c:731
+#, fuzzy
+msgid "(no error message)"
+msgstr "Nicht spezifizierte Fehlermeldung: %d %s"
+
+#: ../libsvn_repos/commit.c:729
+#, c-format
+msgid ""
+"post commit FS processing had error:\n"
+"%s"
+msgstr ""
+
+#: ../libsvn_repos/commit.c:1247 ../libsvn_repos/fs-wrap.c:91
+#: ../libsvn_repos/load-fs-vtable.c:967
+msgid "Commit succeeded, but post-commit hook failed"
+msgstr "Übertragen erfolgreich, aber die »post-commit«-Aktion schlug fehl"
+
#: ../libsvn_repos/delta.c:191
msgid "Unable to open root of edit"
msgstr "Kann Basis der Änderung nicht öffnen"
-#: ../libsvn_repos/delta.c:242
+#: ../libsvn_repos/delta.c:246
msgid "Invalid target path"
msgstr "Ungültiger Zielpfad"
-#: ../libsvn_repos/delta.c:246
+#: ../libsvn_repos/delta.c:250
msgid "Delta depth 'exclude' not supported"
msgstr "Delta-Tiefe »exclude« wird nicht unterstützt"
-#: ../libsvn_repos/delta.c:272
+#: ../libsvn_repos/delta.c:276
msgid "Invalid editor anchoring; at least one of the input paths is not a directory and there was no source entry"
msgstr "Ungültiger Editoranker; zumindest einer der Eingabepfade ist kein Verzeichnis und es gab keinen Quelleintrag"
-#: ../libsvn_repos/deprecated.c:570 ../svnadmin/main.c:671
+#: ../libsvn_repos/deprecated.c:615 ../svnadmin/svnadmin.c:749
#, c-format
msgid "* Dumped revision %ld.\n"
msgstr "* Revision %ld ausgegeben.\n"
-#: ../libsvn_repos/deprecated.c:576 ../svnadmin/main.c:677
+#: ../libsvn_repos/deprecated.c:621 ../svnadmin/svnadmin.c:755
#, c-format
msgid "* Verified revision %ld.\n"
msgstr "* Revision %ld verifiziert.\n"
-#: ../libsvn_repos/deprecated.c:584 ../svnadmin/main.c:717
+#: ../libsvn_repos/deprecated.c:629 ../svnadmin/svnadmin.c:793
#, c-format
msgid ""
"\n"
@@ -4564,7 +4981,7 @@
"------- Übertrage Revision %ld >>>\n"
"\n"
-#: ../libsvn_repos/deprecated.c:590 ../svnadmin/main.c:723
+#: ../libsvn_repos/deprecated.c:635 ../svnadmin/svnadmin.c:799
#, c-format
msgid ""
"\n"
@@ -4575,231 +4992,203 @@
"------- Neue Revision %ld übertragen (geladen aus Original %ld) >>>\n"
"\n"
-#: ../libsvn_repos/deprecated.c:603 ../svnadmin/main.c:736
+#: ../libsvn_repos/deprecated.c:648 ../svnadmin/svnadmin.c:812
#, c-format
msgid " * editing path : %s ..."
msgstr " * Bearbeite Pfad: %s ..."
-#: ../libsvn_repos/deprecated.c:609 ../svnadmin/main.c:742
+#: ../libsvn_repos/deprecated.c:654 ../svnadmin/svnadmin.c:818
#, c-format
msgid " * deleting path : %s ..."
msgstr " * Lösche Pfad: %s ..."
-#: ../libsvn_repos/deprecated.c:615 ../svnadmin/main.c:748
+#: ../libsvn_repos/deprecated.c:660 ../svnadmin/svnadmin.c:824
#, c-format
msgid " * adding path : %s ..."
msgstr " * Füge Pfad hinzu: %s ..."
-#: ../libsvn_repos/deprecated.c:621 ../svnadmin/main.c:754
+#: ../libsvn_repos/deprecated.c:666 ../svnadmin/svnadmin.c:830
#, c-format
msgid " * replacing path : %s ..."
msgstr " * Ersetze Pfad: %s ..."
-#: ../libsvn_repos/deprecated.c:631 ../svnadmin/main.c:764
+#: ../libsvn_repos/deprecated.c:676 ../svnadmin/svnadmin.c:840
msgid " done.\n"
msgstr " erledigt.\n"
-#: ../libsvn_repos/deprecated.c:641 ../svnadmin/main.c:774
+#: ../libsvn_repos/deprecated.c:686 ../svnadmin/svnadmin.c:850
#, c-format
msgid "<<< Started new transaction, based on original revision %ld\n"
msgstr "<<< Neue Transaktion basierend auf Originalrevision %ld gestartet\n"
-#: ../libsvn_repos/deprecated.c:648 ../svnadmin/main.c:781
+#: ../libsvn_repos/deprecated.c:693 ../svnadmin/svnadmin.c:863
#, c-format
msgid " removing '\\r' from %s ..."
msgstr " Entferne »\\r« aus %s ..."
-#: ../libsvn_repos/dump.c:353
+#: ../libsvn_repos/dump.c:267
#, c-format
-msgid ""
-"WARNING: Referencing data in revision %ld, which is older than the oldest\n"
-"WARNING: dumped revision (%ld). Loading this dump into an empty repository\n"
-"WARNING: will fail.\n"
+msgid "E%06d: While validating fspath '%s': %s"
+msgstr ""
+
+#: ../libsvn_repos/dump.c:389
+#, fuzzy, c-format
+msgid "Referencing data in revision %ld, which is older than the oldest dumped revision (r%ld). Loading this dump into an empty repository will fail."
msgstr ""
"WARNUNG: Verweis auf Daten in Revision %ld, welche älter als die älteste\n"
"WARNUNG: ausgegebene Revision (%ld) ist. Das Laden diese Datei in ein\n"
"WARNUNG: leeres Projektarchiv wird fehlschlagen.\n"
-#: ../libsvn_repos/dump.c:457
-#, c-format
-msgid ""
-"WARNING: Mergeinfo referencing revision(s) prior to the oldest dumped revision (%ld).\n"
-"WARNING: Loading this dump may result in invalid mergeinfo.\n"
+#: ../libsvn_repos/dump.c:495
+#, fuzzy, c-format
+msgid "Mergeinfo referencing revision(s) prior to the oldest dumped revision (r%ld). Loading this dump may result in invalid mergeinfo."
msgstr ""
"WARNUNG: Zusammenführungsinformationen verweisen auf Revision(en) vor der ältesten\n"
"WARNUNG: ausgegebene Revision (%ld). Das Laden dieser Datei kann ungültige\n"
"WARNUNG: Zusammenführungsinformationen zur Folge haben.\n"
-#: ../libsvn_repos/dump.c:979 ../libsvn_repos/dump.c:1235
+#: ../libsvn_repos/dump.c:1129 ../libsvn_repos/dump.c:1390
#, c-format
msgid "Start revision %ld is greater than end revision %ld"
msgstr "Startrevision %ld ist größer als Endrevision %ld"
-#: ../libsvn_repos/dump.c:984 ../libsvn_repos/dump.c:1240
+#: ../libsvn_repos/dump.c:1134 ../libsvn_repos/dump.c:1395
#, c-format
msgid "End revision %ld is invalid (youngest revision is %ld)"
msgstr "Endrevision %ld ist ungültig (neueste Revision ist %ld)"
-#: ../libsvn_repos/dump.c:1120
-msgid ""
-"WARNING: The range of revisions dumped contained references to\n"
-"WARNING: copy sources outside that range.\n"
+#: ../libsvn_repos/dump.c:1272
+#, fuzzy
+msgid "The range of revisions dumped contained references to copy sources outside that range."
msgstr ""
"WARNUNG: Der ausgegebene Revisionsbereich enthält Verweise auf\n"
"WARNUNG: Quellpfade außerhalb dieses Bereichs.\n"
-#: ../libsvn_repos/dump.c:1131
-msgid ""
-"WARNING: The range of revisions dumped contained mergeinfo\n"
-"WARNING: which reference revisions outside that range.\n"
+#: ../libsvn_repos/dump.c:1286
+#, fuzzy
+msgid "The range of revisions dumped contained mergeinfo which reference revisions outside that range."
msgstr ""
"WARNUNG: Der ausgegebene Revisionsbereich enthält Zusammenführungsinformationen\n"
"WARNUNG: die auf Revisionen außerhalb dieses Bereichs verweisen.\n"
-#: ../libsvn_repos/dump.c:1188
+#: ../libsvn_repos/dump.c:1343
#, c-format
msgid "Unexpected node kind %d for '%s'"
msgstr "Unerwartete Knotenart %d für »%s«"
-#: ../libsvn_repos/fs-wrap.c:64 ../libsvn_repos/load-fs-vtable.c:818
-msgid "Commit succeeded, but post-commit hook failed"
-msgstr "Übertragen erfolgreich, aber die »post-commit«-Aktion schlug fehl"
-
-#: ../libsvn_repos/fs-wrap.c:171
+#: ../libsvn_repos/fs-wrap.c:170
#, c-format
msgid "Storage of non-regular property '%s' is disallowed through the repository interface, and could indicate a bug in your client"
msgstr "Das Speichern der speziellen Eigenschaft »%s« wird vom Projektarchiv verhindert und könnte auf einen Bug in Ihrem Client hindeuten"
-#: ../libsvn_repos/fs-wrap.c:186
+#: ../libsvn_repos/fs-wrap.c:185
#, c-format
msgid "Cannot accept '%s' property because it is not encoded in UTF-8"
msgstr "Kann Eigenschaft »%s« nicht akzeptieren, da sie nicht in UTF-8 kodiert ist"
-#: ../libsvn_repos/fs-wrap.c:196
+#: ../libsvn_repos/fs-wrap.c:195
#, c-format
msgid "Cannot accept non-LF line endings in '%s' property"
msgstr "Kann nicht-»LF« (LF = Unix-artige) Zeilenumbrüche in Eigenschaft »%s« nicht akzeptieren"
-#: ../libsvn_repos/fs-wrap.c:330
+#: ../libsvn_repos/fs-wrap.c:236
+#, c-format
+msgid "Commit rejected because mergeinfo on '%s' contains unexpected string terminator"
+msgstr ""
+
+#: ../libsvn_repos/fs-wrap.c:243
+#, c-format
+msgid "Commit rejected because mergeinfo on '%s' is syntactically invalid"
+msgstr ""
+
+#: ../libsvn_repos/fs-wrap.c:365
#, c-format
msgid "Write denied: not authorized to read all of revision %ld"
msgstr "Schreiben abgelehnt: Keine Berechtigung, alles von Revision %ld einzulesen."
-#: ../libsvn_repos/fs-wrap.c:507
+#: ../libsvn_repos/fs-wrap.c:542
#, c-format
msgid "Cannot unlock path '%s', no authenticated username available"
msgstr "Kann Pfad »%s« nicht freigeben, kein angemeldeter Benutzername verfügbar"
-#: ../libsvn_repos/fs-wrap.c:522
+#: ../libsvn_repos/fs-wrap.c:557
msgid "Unlock succeeded, but post-unlock hook failed"
msgstr "Entsperren erfolgreich, aber die Aktion »post-unlock« schlug fehl"
-#: ../libsvn_repos/hooks.c:87
+#: ../libsvn_repos/hooks.c:90
#, c-format
msgid "'%s' hook succeeded, but error output could not be read"
msgstr "»%s«-Aktion war erfolgreich, aber die Fehlerausgabe konnte nicht gelesen werden"
-#: ../libsvn_repos/hooks.c:102
+#: ../libsvn_repos/hooks.c:105
msgid "[Error output could not be translated from the native locale to UTF-8.]"
msgstr "[Fehlerausgabe konnte nicht mit der aktuellen Locale-Einstellung nicht nach UTF-8 konvertiert werden.]"
-#: ../libsvn_repos/hooks.c:107
+#: ../libsvn_repos/hooks.c:110
msgid "[Error output could not be read.]"
msgstr "[Fehlerausgabe konnte nicht gelesen werden.]"
# FIXME: two spaces at end?
-#: ../libsvn_repos/hooks.c:116
+#: ../libsvn_repos/hooks.c:119
#, c-format
msgid "'%s' hook failed (did not exit cleanly: apr_exit_why_e was %d, exitcode was %d). "
msgstr "Aktion »%s« schlug fehl (wurde nicht sauber beendet: apr_exit_why_e war %d, Exit-Code war %d). "
-#: ../libsvn_repos/hooks.c:125
+#: ../libsvn_repos/hooks.c:128
msgid "Commit"
msgstr "Übertragen"
-#: ../libsvn_repos/hooks.c:127
+#: ../libsvn_repos/hooks.c:130
msgid "Revprop change"
msgstr "Ändern einer Revisionseigenschaft"
-# CHECKME, has to match first %s in "local %s, incoming %s upon %s"
-#: ../libsvn_repos/hooks.c:129
-#, fuzzy
-msgid "Obliteration"
-msgstr "blockiert"
-
-#: ../libsvn_repos/hooks.c:131
+#: ../libsvn_repos/hooks.c:132
msgid "Lock"
msgstr "Sperren"
-#: ../libsvn_repos/hooks.c:133
+#: ../libsvn_repos/hooks.c:134
msgid "Unlock"
msgstr "Entsperren"
-#: ../libsvn_repos/hooks.c:138
+#: ../libsvn_repos/hooks.c:139
#, c-format
msgid "%s hook failed (exit code %d)"
msgstr "Aktion »%s« schlug fehl (Exit-Code %d)"
-#: ../libsvn_repos/hooks.c:142
+#: ../libsvn_repos/hooks.c:143
#, c-format
msgid "%s blocked by %s hook (exit code %d)"
msgstr "%s wird durch Aktion %s behindert (Exit-Code %d)"
-#: ../libsvn_repos/hooks.c:149
+#: ../libsvn_repos/hooks.c:150
msgid " with output:\n"
msgstr " mit Ausgabe:\n"
-#: ../libsvn_repos/hooks.c:155
+#: ../libsvn_repos/hooks.c:156
msgid " with no output."
msgstr " ohne Ausgabe."
-#: ../libsvn_repos/hooks.c:190 ../libsvn_repos/hooks.c:217
-#, c-format
-msgid "Can't create pipe for hook '%s'"
-msgstr "Kann »Pipe« für Aktion »%s« nicht anlegen"
-
-# CHECKME: non-inherited = losgelöst???
-#: ../libsvn_repos/hooks.c:202 ../libsvn_repos/hooks.c:223
-#, c-format
-msgid "Can't make pipe read handle non-inherited for hook '%s'"
-msgstr "Kann Pipe-Lese-Handle für Aktion »%s« nicht nicht-erbbar machen"
-
-#: ../libsvn_repos/hooks.c:208 ../libsvn_repos/hooks.c:229
-#, c-format
-msgid "Can't make pipe write handle non-inherited for hook '%s'"
-msgstr "Kann Pipe-Schreib-Handle für Aktion »%s« nicht nicht-erbbar machen"
-
-#: ../libsvn_repos/hooks.c:238
+#: ../libsvn_repos/hooks.c:231
#, c-format
msgid "Can't create null stdout for hook '%s'"
msgstr "Kann leere Standardausgabe für Aktion »%s« nicht anlegen"
-#: ../libsvn_repos/hooks.c:252 ../libsvn_repos/hooks.c:259
-#, c-format
-msgid "Error closing write end of stderr pipe"
-msgstr "Fehler beim Schließen des Schreib-Endes der Standardfehlerausgabe"
-
-#: ../libsvn_repos/hooks.c:265
+#: ../libsvn_repos/hooks.c:259
#, c-format
msgid "Failed to start '%s' hook"
msgstr "Konnte Aktion »%s« nicht starten"
-#: ../libsvn_repos/hooks.c:278 ../libsvn_repos/hooks.c:287
-#, c-format
-msgid "Error closing read end of stderr pipe"
-msgstr "Fehler beim Schließen des Lese-Endes der Standardfehlerausgabe"
-
-#: ../libsvn_repos/hooks.c:295
+#: ../libsvn_repos/hooks.c:281
#, c-format
msgid "Error closing null file"
msgstr "Fehler beim Schließen der leeren Standardausgabe"
-#: ../libsvn_repos/hooks.c:379
+#: ../libsvn_repos/hooks.c:365
#, c-format
msgid "Failed to run '%s' hook; broken symlink"
msgstr "Ausführen der Aktion »%s« gescheitert; defekter »Symlink«"
-#: ../libsvn_repos/hooks.c:589
+#: ../libsvn_repos/hooks.c:579
msgid ""
"Repository has not been enabled to accept revision propchanges;\n"
"ask the administrator to create a pre-revprop-change hook"
@@ -4808,18 +5197,13 @@
"Bitten Sie den Administrator darum, eine Aktion »pre-revprop-change«\n"
"einzurichten."
-#: ../libsvn_repos/hooks.c:688
-#, fuzzy
-msgid "Repository has not been enabled to accept obliteration"
-msgstr "Für diese Operation wird Zugang zum Projektarchiv benötigt"
-
-#: ../libsvn_repos/load-fs-vtable.c:466
+#: ../libsvn_repos/load-fs-vtable.c:560 ../svnrdump/load_editor.c:770
#, c-format
msgid "Relative source revision %ld is not available in current repository"
msgstr "Relative Quellrevision %ld ist im aktuellen Projektarchiv nicht verfügbar."
# CHECKME: Check quotes, s/rev/revision/
-#: ../libsvn_repos/load-fs-vtable.c:482
+#: ../libsvn_repos/load-fs-vtable.c:574
#, c-format
msgid ""
"Copy source checksum mismatch on copy from '%s'@%ld\n"
@@ -4828,11 +5212,11 @@
"Prüfsummenfehler beim Kopieren von »%s«@%ld\n"
"nach »%s« in der auf r%ld basierten Revision"
-#: ../libsvn_repos/load-fs-vtable.c:539
+#: ../libsvn_repos/load-fs-vtable.c:633
msgid "Malformed dumpstream: Revision 0 must not contain node records"
msgstr "Fehlerhafter Dateiabzug: Revision 0 darf keine Knoteneinträge enthalten"
-#: ../libsvn_repos/load-fs-vtable.c:548
+#: ../libsvn_repos/load-fs-vtable.c:649
#, c-format
msgid "Unrecognized node-action on node '%s'"
msgstr "Unerkannte Knotenaktion auf Knoten »%s«"
@@ -4863,174 +5247,177 @@
msgid "Unexpected EOF writing contents"
msgstr "Unerwartetes EOF beim Schreiben der Daten"
-#: ../libsvn_repos/load.c:388
-msgid "Malformed dumpfile header"
+#: ../libsvn_repos/load.c:389
+#, fuzzy, c-format
+msgid "Malformed dumpfile header '%s'"
msgstr "Dateiabzug enthält ungültigen Kopf"
-#: ../libsvn_repos/load.c:394 ../libsvn_repos/load.c:439
+#: ../libsvn_repos/load.c:396
#, c-format
msgid "Unsupported dumpfile version: %d"
msgstr "Dateiabzug Version %d wird nicht unterstützt"
-#: ../libsvn_repos/load.c:542
+#: ../libsvn_repos/load.c:541
msgid "Unrecognized record type in stream"
msgstr "Unerkannter Datensatz im Datenstrom"
-#: ../libsvn_repos/load.c:655
+#: ../libsvn_repos/load.c:656
msgid "Sum of subblock sizes larger than total block content length"
msgstr "Die Summe der Größen der Unterblöcke überschreitet die gesamte Blocklänge"
-#: ../libsvn_repos/node_tree.c:243
+#: ../libsvn_repos/node_tree.c:244
#, c-format
msgid "'%s' not found in filesystem"
msgstr "»%s« nicht im Dateisystem gefunden"
-#: ../libsvn_repos/replay.c:418
+#: ../libsvn_repos/replay.c:546 ../libsvn_repos/replay.c:1256
#, c-format
msgid "Filesystem path '%s' is neither a file nor a directory"
msgstr "Pfad »%s« ist weder eine Datei noch ein Verzeichnis"
-#: ../libsvn_repos/reporter.c:195
+#: ../libsvn_repos/reporter.c:204
#, c-format
msgid "Invalid length (%%%s) when about to read a string"
msgstr "Ungültige Länge (%%%s) beim Lesen einer Zeichenkette"
-#: ../libsvn_repos/reporter.c:256
+#: ../libsvn_repos/reporter.c:269
#, c-format
msgid "Invalid depth (%c) for path '%s'"
msgstr "Ungültige Tiefe (%c) für Pfad »%s«"
-#: ../libsvn_repos/reporter.c:849
+#: ../libsvn_repos/reporter.c:955
#, c-format
msgid "Working copy path '%s' does not exist in repository"
msgstr "Arbeitskopie Pfad »%s« existiert nicht im Projektarchiv"
-#: ../libsvn_repos/reporter.c:1217
+#: ../libsvn_repos/reporter.c:1352
msgid "Not authorized to open root of edit operation"
msgstr "Keine Berechtigung die Basis der Änderung zu öffnen"
-#: ../libsvn_repos/reporter.c:1234
+#: ../libsvn_repos/reporter.c:1371
#, c-format
msgid "Target path '%s' does not exist"
msgstr "Zielpfad »%s« existiert nicht"
-#: ../libsvn_repos/reporter.c:1242
+#: ../libsvn_repos/reporter.c:1379
msgid "Cannot replace a directory from within"
msgstr "Kann ein Verzeichnis nicht innerhalb sich selbst ersetzen"
-#: ../libsvn_repos/reporter.c:1285
+#: ../libsvn_repos/reporter.c:1419
msgid "Invalid report for top level of working copy"
msgstr "Ungültiger Report für oberste Ebene der Arbeitskopie"
-#: ../libsvn_repos/reporter.c:1300
+#: ../libsvn_repos/reporter.c:1434
msgid "Two top-level reports with no target"
msgstr "Zwei oberste Reports ohne Zielangabe"
-#: ../libsvn_repos/reporter.c:1358
+#: ../libsvn_repos/reporter.c:1495
#, c-format
msgid "Unsupported report depth '%s'"
msgstr "Nicht unterstützte Reporttiefe »%s«"
-#: ../libsvn_repos/reporter.c:1386
+#: ../libsvn_repos/reporter.c:1523
msgid "Depth 'exclude' not supported for link"
msgstr "Tiefe »exclude« wird für Links nicht unterstützt"
-#: ../libsvn_repos/reporter.c:1446
+#: ../libsvn_repos/reporter.c:1578
msgid "Request depth 'exclude' not supported"
msgstr "Angefragte Tiefe »exclude« wird nicht unterstützt"
-#: ../libsvn_repos/repos.c:199
+#: ../libsvn_repos/repos.c:188
#, c-format
msgid "'%s' exists and is non-empty"
msgstr "»%s« existiert und ist nicht leer"
-#: ../libsvn_repos/repos.c:245
+#: ../libsvn_repos/repos.c:234
msgid "Creating db logs lock file"
msgstr "Erzeuge Sperrdatei für Datenbanklogs"
-#: ../libsvn_repos/repos.c:263
+#: ../libsvn_repos/repos.c:252
msgid "Creating db lock file"
msgstr "Erzeuge Datenbank-Sperrdatei"
-#: ../libsvn_repos/repos.c:273
+#: ../libsvn_repos/repos.c:262
msgid "Creating lock dir"
msgstr "Erzeuge Verzeichnis für Datenbanksperren"
-#: ../libsvn_repos/repos.c:302
+#: ../libsvn_repos/repos.c:291
msgid "Creating hook directory"
msgstr "Lege Verzeichnis für Aktionen an"
-#: ../libsvn_repos/repos.c:378
+#: ../libsvn_repos/repos.c:373
msgid "Creating start-commit hook"
msgstr "Erzeuge Aktion »start-commit«"
-#: ../libsvn_repos/repos.c:468
+#: ../libsvn_repos/repos.c:465
msgid "Creating pre-commit hook"
msgstr "Erzeuge Aktion »pre-commit«"
-#: ../libsvn_repos/repos.c:544
+#: ../libsvn_repos/repos.c:543
msgid "Creating pre-revprop-change hook"
msgstr "Erzeuge Aktion »pre-revprop-change«"
-#: ../libsvn_repos/repos.c:618
-msgid "Creating pre-obliterate hook"
-msgstr "Erzeuge Aktion »pre-obliterate«"
-
-#: ../libsvn_repos/repos.c:846
+#: ../libsvn_repos/repos.c:783
msgid "Creating post-commit hook"
msgstr "Erzeuge Aktion »post-commit«"
-#: ../libsvn_repos/repos.c:1032
+#: ../libsvn_repos/repos.c:975
msgid "Creating post-revprop-change hook"
msgstr "Erzeuge Aktion »post-revprop-change«"
-#: ../libsvn_repos/repos.c:1090
-msgid "Creating post-obliterate hook"
-msgstr "Erzeuge Aktion »post-obliterate«"
-
-#: ../libsvn_repos/repos.c:1100
+#: ../libsvn_repos/repos.c:987
msgid "Creating conf directory"
msgstr "Erzeuge Konfigurationsverzeichnis"
-#: ../libsvn_repos/repos.c:1169
+#: ../libsvn_repos/repos.c:1065
msgid "Creating svnserve.conf file"
msgstr "Erzeuge Datei »svnserve.conf«"
-#: ../libsvn_repos/repos.c:1187
+#: ../libsvn_repos/repos.c:1083
msgid "Creating passwd file"
msgstr "Erzeuge Datei »passwd«"
-#: ../libsvn_repos/repos.c:1229
+#: ../libsvn_repos/repos.c:1125
msgid "Creating authz file"
msgstr "Erzeuge Datei »authz«"
-#: ../libsvn_repos/repos.c:1264
+#: ../libsvn_repos/repos.c:1154
+#, fuzzy
+msgid "Creating hooks-env file"
+msgstr "Erzeuge Datenbank-Sperrdatei"
+
+#: ../libsvn_repos/repos.c:1284
msgid "Could not create top-level directory"
msgstr "Konnte oberstes Verzeichnis nicht erzeugen"
-#: ../libsvn_repos/repos.c:1276
+#: ../libsvn_repos/repos.c:1296
msgid "Creating DAV sandbox dir"
msgstr "Erzeuge Verzeichnis für DAV-Sandkasten"
-#: ../libsvn_repos/repos.c:1345
+#: ../libsvn_repos/repos.c:1365
msgid "Error opening db lockfile"
msgstr "Fehler beim Öffnen der Datenbank-Sperrdatei"
-#: ../libsvn_repos/repos.c:1384
+#: ../libsvn_repos/repos.c:1402
+#, fuzzy, c-format
+msgid "'%s' is an existing repository"
+msgstr "»%s« ist im Projektarchiv nicht gesperrt"
+
+#: ../libsvn_repos/repos.c:1406
#, c-format
msgid "'%s' is a subdirectory of an existing repository rooted at '%s'"
msgstr "»%s« ist ein Unterverzeichnis eines existierenden Projektarchivs mit der Wurzel-URL »%s«"
-#: ../libsvn_repos/repos.c:1392
+#: ../libsvn_repos/repos.c:1414
msgid "Repository creation failed"
msgstr "Anlegen des Projektarchivs schlug fehl"
-#: ../libsvn_repos/repos.c:1473
+#: ../libsvn_repos/repos.c:1499
#, c-format
msgid "Expected repository format '%d' or '%d'; found format '%d'"
msgstr "Erwartetes Format des Projektarchivs »%d« oder »%d«; gefunden »%d«"
-#: ../libsvn_repos/repos.c:1701
+#: ../libsvn_repos/repos.c:1747
#, c-format
msgid "unknown capability '%s'"
msgstr "unbekannte Eigenschaft »%s«"
@@ -5040,111 +5427,183 @@
msgid "Failed to find time on revision %ld"
msgstr "Konnte Zeit für Revision %ld nicht ermitteln"
-#: ../libsvn_repos/rev_hunt.c:204 ../libsvn_repos/rev_hunt.c:319
+#: ../libsvn_repos/rev_hunt.c:209 ../libsvn_repos/rev_hunt.c:324
#, c-format
msgid "Invalid start revision %ld"
msgstr "Ungültige Startrevision %ld"
-#: ../libsvn_repos/rev_hunt.c:512
+#: ../libsvn_repos/rev_hunt.c:517
msgid "Unreadable path encountered; access denied"
msgstr "Nichtlesbarer Pfad angetroffen; Zugriff verweigert"
-#: ../libsvn_repos/rev_hunt.c:1106
+#: ../libsvn_repos/rev_hunt.c:1157
#, c-format
msgid "'%s' is not a file in revision %ld"
msgstr "»%s« ist in Revision %ld keine Datei"
-# password store: kwallet, ...
-#: ../libsvn_subr/auth.c:607
+#: ../libsvn_subr/auth.c:211
#, c-format
-msgid "Invalid config: unknown password store '%s'"
-msgstr "Ungültige Konfiguration: Unbekannte Passwortverwaltung »%s«"
+msgid "No provider registered for '%s' credentials"
+msgstr ""
-#: ../libsvn_subr/cache-inprocess.c:184
+#: ../libsvn_subr/cache-membuffer.c:496
#, c-format
msgid "Can't lock cache mutex"
msgstr "Kann Zwischenspeicher-Mutex nicht sperren"
-#: ../libsvn_subr/cache-inprocess.c:202
+#: ../libsvn_subr/cache-membuffer.c:527 ../libsvn_subr/cache-membuffer.c:543
+#, fuzzy, c-format
+msgid "Can't write-lock cache mutex"
+msgstr "Kann Zwischenspeicher-Mutex nicht sperren"
+
+#: ../libsvn_subr/cache-membuffer.c:562
#, c-format
msgid "Can't unlock cache mutex"
msgstr "Kann Zwischenspeicher-Mutex nicht entsperren"
-#: ../libsvn_subr/cache-inprocess.c:454
+#. We are OOM. There is no need to proceed with "half a cache".
+#.
+#: ../libsvn_subr/cache-membuffer.c:1285
+#, c-format
+msgid "OOM"
+msgstr ""
+
+#: ../libsvn_subr/cache-membuffer.c:1299
#, c-format
msgid "Can't create cache mutex"
msgstr "Kann Zwischenspeicher-Mutex nicht anlegen"
+#: ../libsvn_subr/cache-membuffer.c:2037
+#, fuzzy
+msgid "Can't iterate a membuffer-based cache"
+msgstr "Kann keinen »memcached«-Zwischenspeicher durchlaufen"
+
# memcached is an APR library
-#: ../libsvn_subr/cache-memcache.c:157
+#: ../libsvn_subr/cache-memcache.c:170
#, c-format
msgid "Unknown memcached error while reading"
msgstr "Unbekannter »memcached«-Fehler beim Lesen"
-#: ../libsvn_subr/cache-memcache.c:207
+#: ../libsvn_subr/cache-memcache.c:237
#, c-format
msgid "Unknown memcached error while writing"
msgstr "Unbekannter »memcached«-Fehler beim Schreiben"
-#: ../libsvn_subr/cache-memcache.c:222
+#: ../libsvn_subr/cache-memcache.c:343
msgid "Can't iterate a memcached cache"
msgstr "Kann keinen »memcached«-Zwischenspeicher durchlaufen"
-#: ../libsvn_subr/cache-memcache.c:286
+#: ../libsvn_subr/cache-memcache.c:443
#, c-format
msgid "Error parsing memcache server '%s'"
msgstr "Fehler beim Abfragen des »memcache«-Servers »%s«"
-#: ../libsvn_subr/cache-memcache.c:294
+#: ../libsvn_subr/cache-memcache.c:451
#, c-format
msgid "Scope not allowed in memcache server '%s'"
msgstr "Bereich ist im »memcache«-Server »%s« nicht erlaubt"
-#: ../libsvn_subr/cache-memcache.c:302
+#: ../libsvn_subr/cache-memcache.c:459
#, c-format
msgid "Must specify host and port for memcache server '%s'"
msgstr "Der Rechner und Port muss für den »memcache«-Server »%s« festgelegt werden"
-#: ../libsvn_subr/cache-memcache.c:321
+#: ../libsvn_subr/cache-memcache.c:479
#, c-format
msgid "Unknown error creating memcache server"
msgstr "Unbekannter Fehler beim Erzeugen eines »memcache«-Servers"
-#: ../libsvn_subr/cache-memcache.c:329
+#: ../libsvn_subr/cache-memcache.c:487
#, c-format
msgid "Unknown error adding server to memcache"
msgstr "Unbekannter Fehler beim Hinzufügen des Servers zu »memcache«"
-#: ../libsvn_subr/cache-memcache.c:399
+#: ../libsvn_subr/cache-memcache.c:560
#, c-format
msgid "Unknown error creating apr_memcache_t"
msgstr "Unbekannter Fehler beim Anlegen von apr_memcache_t"
-#: ../libsvn_subr/cmdline.c:599
+#: ../libsvn_subr/checksum.c:470
+#, fuzzy, c-format
+msgid ""
+"%s:\n"
+" expected: %s\n"
+" actual: %s\n"
+msgstr ""
+"Prüfsummenfehler für Datei »%s«:\n"
+" Erwartet: %s\n"
+" Tatsächlich: %s\n"
+
+#: ../libsvn_subr/cmdline.c:643
#, c-format
msgid "Error initializing command line arguments"
msgstr "Fehler beim Initialisieren der Kommandozeilenparameter"
-#: ../libsvn_subr/cmdline.c:681
+#: ../libsvn_subr/cmdline.c:732
msgid "Invalid syntax of argument of --config-option"
msgstr "Ungültige Syntax im Argument von --config-option"
-#: ../libsvn_subr/cmdline.c:708
+#: ../libsvn_subr/cmdline.c:759
#, c-format
msgid "Unrecognized file in argument of %s"
msgstr "Unbekannte Datei im Parameter von %s"
-#: ../libsvn_subr/config.c:667
+# FIXME: s/whitespace/whitespaceS/?
+#: ../libsvn_subr/cmdline.c:1006
+msgid "The EDITOR, SVN_EDITOR or VISUAL environment variable or 'editor-cmd' run-time configuration option is empty or consists solely of whitespace. Expected a shell command."
+msgstr "Die Umgebungsvariable EDITOR, SVN_EDITOR oder VISUAL oder die Laufzeitkonfigurationsoption »editor-cmd« ist leer oder besteht nur aus Leerzeichen. Erwartete ein Shell-Kommando."
+
+#: ../libsvn_subr/cmdline.c:1013
+msgid "None of the environment variables SVN_EDITOR, VISUAL or EDITOR are set, and no 'editor-cmd' run-time configuration option was found"
+msgstr "Keine der Umgebungsvariablen SVN_EDITOR, VISUAL oder EDITOR ist gesetzt und keine Laufzeitkonfigurationsoption »editor-cmd« wurde gefunden"
+
+#: ../libsvn_subr/cmdline.c:1038 ../libsvn_subr/cmdline.c:1122
+#, c-format
+msgid "Can't get working directory"
+msgstr "Kann Arbeitsverzeichnis nicht ermitteln"
+
+#: ../libsvn_subr/cmdline.c:1049 ../libsvn_subr/cmdline.c:1133
+#: ../libsvn_subr/cmdline.c:1158
+#, c-format
+msgid "Can't change working directory to '%s'"
+msgstr "Kann Arbeitsverzeichnis nicht nach »%s« wechseln"
+
+#: ../libsvn_subr/cmdline.c:1057 ../libsvn_subr/cmdline.c:1305
+#, c-format
+msgid "Can't restore working directory"
+msgstr "Kann nicht in das Arbeitsverzeichnis zurückwechseln"
+
+#: ../libsvn_subr/cmdline.c:1064 ../libsvn_subr/cmdline.c:1240
+#, c-format
+msgid "system('%s') returned %d"
+msgstr "Aufruf des Editors »%s« gab Fehler %d zurück"
+
+#: ../libsvn_subr/cmdline.c:1185
+#, c-format
+msgid "Can't write to '%s'"
+msgstr "Kann nicht nach »%s« schreiben"
+
+#: ../libsvn_subr/cmdline.c:1200 ../libsvn_subr/cmdline.c:1215
+#: ../libsvn_subr/cmdline.c:1249 ../libsvn_subr/io.c:3524
+#, c-format
+msgid "Can't stat '%s'"
+msgstr "Kann Status von »%s« nicht ermitteln"
+
+#: ../libsvn_subr/cmdline.c:1274
+msgid "Error normalizing edited contents to internal format"
+msgstr "Fehler beim Normalisieren des bearbeiteten Inhalts ins interne Format"
+
+#: ../libsvn_subr/config.c:709
#, c-format
msgid "Config error: invalid boolean value '%s' for '[%s] %s'"
msgstr "Konfigurationsfehler: Ungültiger logischer Wert »%s« für »[%s] %s«"
-#: ../libsvn_subr/config.c:674
+#: ../libsvn_subr/config.c:714
#, c-format
msgid "Config error: invalid boolean value '%s' for '%s'"
msgstr "Konfigurationsfehler: Ungültiger logischer Wert »%s« für »%s«"
-#: ../libsvn_subr/config.c:957
+#: ../libsvn_subr/config.c:1110
#, c-format
msgid "Config error: invalid integer value '%s'"
msgstr "Konfigurationsfehler: Ungültige Ganzzahl »%s«"
@@ -5172,22 +5631,107 @@
msgid "Error writing hash to '%s'"
msgstr "Fehler beim Schreiben des Hashwerts nach »%s«"
-#: ../libsvn_subr/date.c:209
+#: ../libsvn_subr/crypto.c:93
+#, c-format
+msgid "Failed to initialize cryptography subsystem"
+msgstr ""
+
+#: ../libsvn_subr/crypto.c:108
+#, c-format
+msgid "code (%d), reason (\"%s\"), msg (\"%s\")"
+msgstr ""
+
+#: ../libsvn_subr/crypto.c:134
+#, c-format
+msgid "Fetching error from APR"
+msgstr ""
+
+#: ../libsvn_subr/crypto.c:154
+#, fuzzy, c-format
+msgid "Error obtaining random data"
+msgstr "Fehler beim Abbrechen des Reports"
+
+#: ../libsvn_subr/crypto.c:224
+msgid "OpenSSL crypto driver error"
+msgstr ""
+
+#: ../libsvn_subr/crypto.c:228
+msgid "Bad return value while loading crypto driver"
+msgstr ""
+
+#: ../libsvn_subr/crypto.c:234
+#, fuzzy
+msgid "Error creating OpenSSL crypto context"
+msgstr "Fehler beim Ausführen des Kontextes"
+
+#: ../libsvn_subr/crypto.c:291 ../libsvn_subr/crypto.c:294
+#: ../libsvn_subr/crypto.c:419 ../libsvn_subr/crypto.c:422
+#: ../libsvn_subr/crypto.c:526 ../libsvn_subr/crypto.c:529
+#: ../libsvn_subr/crypto.c:641 ../libsvn_subr/crypto.c:644
+#, fuzzy
+msgid "Error creating derived key"
+msgstr "Fehler beim Lesen der Änderungen für Schlüssel »%s«"
+
+#: ../libsvn_subr/crypto.c:297 ../libsvn_subr/crypto.c:425
+#: ../libsvn_subr/crypto.c:532 ../libsvn_subr/crypto.c:647
+#, fuzzy
+msgid "Unexpected IV length returned"
+msgstr "Unerwartetes Ende des Eintrags"
+
+#: ../libsvn_subr/crypto.c:308 ../libsvn_subr/crypto.c:543
+#, fuzzy
+msgid "Error initializing block encryption"
+msgstr "Fehler beim Initialisieren der Kommandozeilenparameter"
+
+#: ../libsvn_subr/crypto.c:347 ../libsvn_subr/crypto.c:444
+#: ../libsvn_subr/crypto.c:565 ../libsvn_subr/crypto.c:666
+#, fuzzy
+msgid "Error fetching result length"
+msgstr "Fehler beim Schließen der leeren Standardausgabe"
+
+#: ../libsvn_subr/crypto.c:360 ../libsvn_subr/crypto.c:578
+#, fuzzy
+msgid "Error during block encryption"
+msgstr "Fehler beim Zerlegen der Vergleichsoptionen"
+
+#: ../libsvn_subr/crypto.c:372 ../libsvn_subr/crypto.c:590
+msgid "Error finalizing block encryption"
+msgstr ""
+
+#: ../libsvn_subr/crypto.c:428 ../libsvn_subr/crypto.c:650
+msgid "Provided IV has incorrect length"
+msgstr ""
+
+#: ../libsvn_subr/crypto.c:436 ../libsvn_subr/crypto.c:658
+#, fuzzy
+msgid "Error initializing block decryption"
+msgstr "Fehler beim Initialisieren der Kommandozeilenparameter"
+
+#: ../libsvn_subr/crypto.c:455 ../libsvn_subr/crypto.c:677
+#, fuzzy
+msgid "Error during block decryption"
+msgstr "Fehler beim Zerlegen der Vergleichsoptionen"
+
+#: ../libsvn_subr/crypto.c:464 ../libsvn_subr/crypto.c:686
+msgid "Error finalizing block decryption"
+msgstr ""
+
+#: ../libsvn_subr/date.c:307
#, c-format
msgid "Can't manipulate current date"
msgstr "Kann das aktuelle Datum nicht manipulieren"
-#: ../libsvn_subr/date.c:283 ../libsvn_subr/date.c:291
+#: ../libsvn_subr/date.c:381 ../libsvn_subr/date.c:389
#, c-format
msgid "Can't calculate requested date"
msgstr "Kann die das angeforderte Datum nicht berechnen"
-#: ../libsvn_subr/date.c:286
+#: ../libsvn_subr/date.c:384
#, c-format
msgid "Can't expand time"
msgstr "Kann Zeitangabe nicht expandieren"
-#: ../libsvn_subr/deprecated.c:355 ../libsvn_subr/opt.c:300
+#: ../libsvn_subr/deprecated.c:369 ../libsvn_subr/opt.c:301
msgid ""
"\n"
"Valid options:\n"
@@ -5195,7 +5739,7 @@
"\n"
"Gültige Optionen:\n"
-#: ../libsvn_subr/deprecated.c:431 ../libsvn_subr/opt.c:407
+#: ../libsvn_subr/deprecated.c:445 ../libsvn_subr/opt.c:416
#, c-format
msgid ""
"\"%s\": unknown command.\n"
@@ -5204,245 +5748,267 @@
"»%s«: unbekannter Befehl.\n"
"\n"
-#: ../libsvn_subr/deprecated.c:578 ../libsvn_subr/opt.c:1109
-#: ../svnrdump/svnrdump.c:340
+#: ../libsvn_subr/deprecated.c:623 ../libsvn_subr/opt.c:1236
+#: ../svnrdump/svnrdump.c:648
#, c-format
msgid "Type '%s help' for usage.\n"
msgstr "Geben Sie »%s help« für weitere Hilfe ein.\n"
-#: ../libsvn_subr/deprecated.c:928
+#: ../libsvn_subr/deprecated.c:1015
#, c-format
msgid "'%s' is neither a file nor a directory name"
msgstr "»%s« ist weder ein Datei- noch ein Verzeichnisname"
-#: ../libsvn_subr/dirent_uri.c:1661
+#: ../libsvn_subr/dirent_uri.c:1588
#, c-format
msgid "Couldn't determine absolute path of '%s'"
msgstr "Konnte den absoluten Pfad von »%s« nicht ermitteln"
-#: ../libsvn_subr/dirent_uri.c:2319
+#: ../libsvn_subr/dirent_uri.c:2279
#, c-format
msgid "Local URL '%s' does not contain 'file://' prefix"
msgstr "Lokale URL »%s« enthält keinen »file://« Präfix"
-#: ../libsvn_subr/dirent_uri.c:2398
+#: ../libsvn_subr/dirent_uri.c:2358
#, c-format
msgid "Local URL '%s' contains only a hostname, no path"
msgstr "Lokale URL »%s« enthält nur einen Rechnernamen aber keinen Pfad"
-#: ../libsvn_subr/dirent_uri.c:2412
+#: ../libsvn_subr/dirent_uri.c:2372
#, c-format
msgid "Local URL '%s' contains unsupported hostname"
msgstr "Lokale URL »%s« enthält einen nicht unterstützten Rechnernamen"
-#: ../libsvn_subr/dso.c:64
-#, c-format
-msgid "Can't create DSO mutex"
-msgstr "Kann DSO-Mutex nicht erzeugen"
+#: ../libsvn_subr/error.c:260
+msgid "Additional errors:"
+msgstr ""
-#: ../libsvn_subr/dso.c:83
-#, c-format
-msgid "Can't grab DSO mutex"
-msgstr "Kann DSO-Mutex nicht greifen"
-
-#: ../libsvn_subr/dso.c:97 ../libsvn_subr/dso.c:123 ../libsvn_subr/dso.c:138
-#, c-format
-msgid "Can't ungrab DSO mutex"
-msgstr "Kann DSO-Mutex nicht loslassen"
-
-#: ../libsvn_subr/error.c:445
+#: ../libsvn_subr/error.c:509
msgid "Can't recode error string from APR"
msgstr "Kann Fehlermeldung von APR nicht umkodieren"
-#: ../libsvn_subr/error.c:544
-#, c-format
-msgid "%swarning: %s\n"
+#: ../libsvn_subr/error.c:609
+#, fuzzy, c-format
+msgid "%swarning: W%06d: %s\n"
msgstr "%swarnung: %s\n"
-#: ../libsvn_subr/error.c:598
+#: ../libsvn_subr/error.c:669
#, c-format
msgid "In file '%s' line %d: assertion failed (%s)"
msgstr "In Datei »%s«, Zeile %d: Assert-Anweisung schlug fehl (%s)"
-#: ../libsvn_subr/error.c:602
+#: ../libsvn_subr/error.c:673
#, c-format
msgid "In file '%s' line %d: internal malfunction"
msgstr "In Datei »%s«, Zeile %d: interne Fehlfunktion"
-#: ../libsvn_subr/io.c:169
-#, c-format
-msgid "Error converting entry in directory '%s' to UTF-8"
-msgstr "Fehler beim Konvertieren eines Eintrags im Verzeichnis »%s« nach UTF-8"
+#: ../libsvn_subr/error.c:726
+#, fuzzy
+msgid "stream error"
+msgstr "Schreibfehler"
-#: ../libsvn_subr/io.c:229
+#: ../libsvn_subr/error.c:731
+msgid "out of memory"
+msgstr ""
+
+#: ../libsvn_subr/error.c:736
+#, fuzzy
+msgid "buffer error"
+msgstr "Schreibfehler"
+
+#: ../libsvn_subr/error.c:741
+#, fuzzy
+msgid "version error"
+msgstr "nicht versioniert"
+
+#: ../libsvn_subr/error.c:746
+#, fuzzy
+msgid "corrupt data"
+msgstr "Fehlerhafte Daten für »%s«"
+
+# FIXME: Grammar depends on usage!!!!!!! (prepanded by "bei")
+#: ../libsvn_subr/error.c:751
+#, fuzzy
+msgid "unknown error"
+msgstr "Unbekannter Operation"
+
+#: ../libsvn_subr/gpg_agent.c:342 ../libsvn_subr/prompt.c:211
+#, c-format
+msgid "Password for '%s': "
+msgstr "Passwort für »%s«: "
+
+#: ../libsvn_subr/gpg_agent.c:343
+#, c-format
+msgid "Enter your Subversion password for %s"
+msgstr ""
+
+#: ../libsvn_subr/hash.c:117
+msgid "Serialized hash missing terminator"
+msgstr ""
+
+#: ../libsvn_subr/hash.c:125 ../libsvn_subr/hash.c:137
+#: ../libsvn_subr/hash.c:147 ../libsvn_subr/hash.c:158
+#: ../libsvn_subr/hash.c:166 ../libsvn_subr/hash.c:175
+#: ../libsvn_subr/hash.c:187 ../libsvn_subr/hash.c:195
+msgid "Serialized hash malformed"
+msgstr ""
+
+#: ../libsvn_subr/io.c:308
#, c-format
msgid "Can't check path '%s'"
msgstr "Kann Pfad »%s« nicht prüfen"
-#: ../libsvn_subr/io.c:457 ../libsvn_subr/io.c:3771
+#: ../libsvn_subr/io.c:536 ../libsvn_subr/io.c:4466
#, c-format
msgid "Can't open '%s'"
msgstr "Kann »%s« nicht öffnen"
-#: ../libsvn_subr/io.c:483 ../libsvn_subr/io.c:569
+#: ../libsvn_subr/io.c:562 ../libsvn_subr/io.c:648
#, c-format
msgid "Unable to make name for '%s'"
msgstr "Kann Namen für »%s« nicht erstellen"
-#: ../libsvn_subr/io.c:556
+#: ../libsvn_subr/io.c:635
#, c-format
msgid "Can't create symbolic link '%s'"
msgstr "Kann symbolischen Link »%s« nicht anlegen"
-#: ../libsvn_subr/io.c:573 ../libsvn_subr/io.c:606 ../libsvn_subr/io.c:634
+#: ../libsvn_subr/io.c:652 ../libsvn_subr/io.c:685 ../libsvn_subr/io.c:713
msgid "Symbolic links are not supported on this platform"
msgstr "Symbolische Verweise werden auf dieser Plattform nicht unterstützt"
-#: ../libsvn_subr/io.c:596
+#: ../libsvn_subr/io.c:675
#, c-format
msgid "Can't read contents of link"
msgstr "Kann Inhalt des Verweises nicht lesen"
-#: ../libsvn_subr/io.c:654
+#: ../libsvn_subr/io.c:733
#, c-format
msgid "Can't find a temporary directory"
msgstr "Kann temporäres Verzeichnis nicht finden"
-#: ../libsvn_subr/io.c:773
+#: ../libsvn_subr/io.c:851
#, c-format
msgid "Can't copy '%s' to '%s'"
msgstr "Kann »%s« nicht nach »%s« kopieren"
-#: ../libsvn_subr/io.c:816 ../libsvn_subr/io.c:838 ../libsvn_subr/io.c:884
+#: ../libsvn_subr/io.c:894 ../libsvn_subr/io.c:916 ../libsvn_subr/io.c:962
#, c-format
msgid "Can't set permissions on '%s'"
msgstr "Kann Berechtigungen auf »%s« nicht setzen"
-#: ../libsvn_subr/io.c:834 ../libsvn_subr/io.c:3809
+#: ../libsvn_subr/io.c:912 ../libsvn_subr/io.c:1976 ../libsvn_subr/io.c:2035
+#: ../libsvn_subr/io.c:4504
#, c-format
msgid "Can't get file name"
msgstr "Kann keinen Dateinamen holen"
-#: ../libsvn_subr/io.c:908
+#: ../libsvn_subr/io.c:986
#, c-format
msgid "Can't append '%s' to '%s'"
msgstr "Kann »%s« nicht an »%s« anhängen"
-#: ../libsvn_subr/io.c:942
-#, c-format
-msgid "Source '%s' is not a directory"
-msgstr "Quelle »%s« ist kein Verzeichnis"
-
-#: ../libsvn_subr/io.c:948
-#, c-format
-msgid "Destination '%s' is not a directory"
-msgstr "Ziel »%s« ist kein Verzeichnis"
-
-#: ../libsvn_subr/io.c:954
+#: ../libsvn_subr/io.c:1032
#, c-format
msgid "Destination '%s' already exists"
msgstr "Ziel »%s« existiert bereits"
-#: ../libsvn_subr/io.c:1025 ../libsvn_subr/io.c:2113
-#, c-format
-msgid "Can't read directory '%s'"
-msgstr "Kann Verzeichnis »%s« nicht lesen"
-
-#: ../libsvn_subr/io.c:1030 ../libsvn_subr/io.c:2118 ../libsvn_subr/io.c:3387
-#, c-format
-msgid "Error closing directory '%s'"
-msgstr "Fehler beim Schließen von Verzeichnis »%s«"
-
-#: ../libsvn_subr/io.c:1058
+#: ../libsvn_subr/io.c:1136
#, c-format
msgid "Can't make directory '%s'"
msgstr "Kann Verzeichnis »%s« nicht anlegen"
-#: ../libsvn_subr/io.c:1127
+#: ../libsvn_subr/io.c:1205
#, c-format
msgid "Can't set access time of '%s'"
msgstr "Kann Zugriffszeit von »%s« nicht setzen"
-#: ../libsvn_subr/io.c:1403 ../libsvn_subr/io.c:1510
+#: ../libsvn_subr/io.c:1522 ../libsvn_subr/io.c:1629
#, c-format
msgid "Can't change perms of file '%s'"
msgstr "Kann die Zugriffsrechte der Datei »%s« nicht ändern"
-#: ../libsvn_subr/io.c:1551
+#: ../libsvn_subr/io.c:1795
#, c-format
msgid "Can't set file '%s' read-only"
msgstr "Kann den Schreibschutz der Datei »%s« nicht setzen"
-#: ../libsvn_subr/io.c:1583
+#: ../libsvn_subr/io.c:1827
#, c-format
msgid "Can't set file '%s' read-write"
msgstr "Kann den Schreibschutz der Datei »%s« nicht aufheben"
-#: ../libsvn_subr/io.c:1627
+#: ../libsvn_subr/io.c:1866 ../libsvn_subr/io.c:1900
#, c-format
msgid "Error getting UID of process"
msgstr "Fehler beim Ermitteln der Prozess-UID"
-#: ../libsvn_subr/io.c:1698
+#: ../libsvn_subr/io.c:2002
#, c-format
msgid "Can't get shared lock on file '%s'"
msgstr "Kann keine gemeinsame Sperre für Datei »%s« erhalten"
-#: ../libsvn_subr/io.c:1736
+#: ../libsvn_subr/io.c:2040
+#, fuzzy, c-format
+msgid "Can't unlock file '%s'"
+msgstr "Kann Datei »%s« nicht schließen"
+
+#: ../libsvn_subr/io.c:2095 ../libsvn_subr/io.c:3422
#, c-format
msgid "Can't flush file '%s'"
msgstr "Kann Datei »%s« nicht leeren"
-#: ../libsvn_subr/io.c:1737
+#: ../libsvn_subr/io.c:2096 ../libsvn_subr/io.c:3423
#, c-format
msgid "Can't flush stream"
msgstr "Kann Datenstrom nicht leeren"
-#: ../libsvn_subr/io.c:1749 ../libsvn_subr/io.c:1766
+#: ../libsvn_subr/io.c:2108 ../libsvn_subr/io.c:2125
#, c-format
msgid "Can't flush file to disk"
msgstr "Kann Datei nicht auf Festplatte leeren"
-#: ../libsvn_subr/io.c:1858 ../libsvn_subr/prompt.c:102 ../svnserve/main.c:625
+#: ../libsvn_subr/io.c:2217 ../libsvn_subr/prompt.c:102
+#: ../svnserve/svnserve.c:780
#, c-format
msgid "Can't open stdin"
msgstr "Kann Standardeingabe nicht öffnen"
-#: ../libsvn_subr/io.c:1878
+#: ../libsvn_subr/io.c:2237
msgid "Reading from stdin is disallowed"
msgstr "Lesen von der Standardeingabe ist nicht erlaubt"
-#: ../libsvn_subr/io.c:1935
+#: ../libsvn_subr/io.c:2302
#, c-format
msgid "Can't remove file '%s'"
msgstr "Kann Datei »%s« nicht löschen"
-#: ../libsvn_subr/io.c:2020
+#: ../libsvn_subr/io.c:2389
#, c-format
msgid "Can't remove '%s'"
msgstr "Kann »%s« nicht löschen"
-#: ../libsvn_subr/io.c:2211
+#: ../libsvn_subr/io.c:2588
#, c-format
msgid "Can't create process '%s' attributes"
msgstr "Kann Attribute von Prozess »%s« nicht erzeugen"
-#: ../libsvn_subr/io.c:2217
+#: ../libsvn_subr/io.c:2595
#, c-format
msgid "Can't set process '%s' cmdtype"
msgstr "Kann Kommandotyp von Prozess »%s« nicht setzen "
-#: ../libsvn_subr/io.c:2229
+#: ../libsvn_subr/io.c:2607
#, c-format
msgid "Can't set process '%s' directory"
msgstr "Kann Verzeichnis von Prozess »%s« nicht setzen"
-#: ../libsvn_subr/io.c:2242
+#: ../libsvn_subr/io.c:2621
#, c-format
msgid "Can't set process '%s' child input"
msgstr "Kann Eingabe des Kindprozesses »%s« nicht setzen"
-#: ../libsvn_subr/io.c:2249
+#: ../libsvn_subr/io.c:2629
#, c-format
msgid "Can't set process '%s' child outfile"
msgstr "Kann Ausgabe des Kindprozesses »%s« nicht setzen"
@@ -5450,48 +6016,53 @@
# FIXME: Laut Code ist %s der Kindprozess. Müsste es dann nicht
# "Can't set child process '%s' errfile" (oder ganz ohne child) heißen?
# (Es gibt kein child von %s)
-#: ../libsvn_subr/io.c:2256
+#: ../libsvn_subr/io.c:2637
#, c-format
msgid "Can't set process '%s' child errfile"
msgstr "Kann Fehlerausgabe des Kindprozesses »%s« nicht setzen"
-#: ../libsvn_subr/io.c:2263
+#: ../libsvn_subr/io.c:2651
+#, fuzzy, c-format
+msgid "Can't set process '%s' stdio pipes"
+msgstr "Kann Kommandotyp von Prozess »%s« nicht setzen "
+
+#: ../libsvn_subr/io.c:2659
#, c-format
msgid "Can't set process '%s' child errfile for error handler"
msgstr "Kann Datei für die Fehlerbehandlung des Kindprozesses »%s« nicht setzen"
-#: ../libsvn_subr/io.c:2269
+#: ../libsvn_subr/io.c:2666
#, c-format
msgid "Can't set process '%s' error handler"
msgstr "Kann die Fehlerbehandlung des Prozesses »%s« nicht setzen"
-#: ../libsvn_subr/io.c:2291
+#: ../libsvn_subr/io.c:2689
#, c-format
msgid "Can't start process '%s'"
msgstr "Kann Prozess »%s« nicht starten"
-#: ../libsvn_subr/io.c:2315
+#: ../libsvn_subr/io.c:2713
#, c-format
msgid "Error waiting for process '%s'"
msgstr "Fehler beim Warten auf Prozess »%s«"
# CHECKME: Isn't "exitwhy" an internal detail?
-#: ../libsvn_subr/io.c:2323
+#: ../libsvn_subr/io.c:2721
#, c-format
msgid "Process '%s' failed (exitwhy %d)"
msgstr "Prozess »%s« schlug fehl (Grund %d)"
-#: ../libsvn_subr/io.c:2330
+#: ../libsvn_subr/io.c:2728
#, c-format
msgid "Process '%s' returned error exitcode %d"
msgstr "Prozess »%s« hat Fehlerwert %d zurückgegeben"
-#: ../libsvn_subr/io.c:2436
+#: ../libsvn_subr/io.c:2835
#, c-format
msgid "'%s' returned %d"
msgstr "»%s« hat %d zurückgegeben"
-#: ../libsvn_subr/io.c:2557
+#: ../libsvn_subr/io.c:2956
#, c-format
msgid ""
"Error running '%s': exitcode was %d, args were:\n"
@@ -5506,258 +6077,290 @@
"%s\n"
"%s"
-#: ../libsvn_subr/io.c:2697
+#: ../libsvn_subr/io.c:3098
#, c-format
msgid "Can't detect MIME type of non-file '%s'"
msgstr "Kann MIME Typ der nicht-Datei »%s« nicht ermitteln"
-#: ../libsvn_subr/io.c:2778
+#: ../libsvn_subr/io.c:3193
#, c-format
msgid "Can't open file '%s'"
msgstr "Kann Datei »%s« nicht öffnen"
-#: ../libsvn_subr/io.c:2814
+#: ../libsvn_subr/io.c:3233
#, c-format
msgid "Can't close file '%s'"
msgstr "Kann Datei »%s« nicht schließen"
-#: ../libsvn_subr/io.c:2815
+#: ../libsvn_subr/io.c:3234
#, c-format
msgid "Can't close stream"
msgstr "Kann Datenstrom nicht schließen"
-#: ../libsvn_subr/io.c:2825 ../libsvn_subr/io.c:2849 ../libsvn_subr/io.c:2862
+#: ../libsvn_subr/io.c:3243 ../libsvn_subr/io.c:3279 ../libsvn_subr/io.c:3304
#, c-format
msgid "Can't read file '%s'"
msgstr "Kann Datei »%s« nicht lesen"
-#: ../libsvn_subr/io.c:2826 ../libsvn_subr/io.c:2850 ../libsvn_subr/io.c:2863
+#: ../libsvn_subr/io.c:3244 ../libsvn_subr/io.c:3280 ../libsvn_subr/io.c:3305
#, c-format
msgid "Can't read stream"
msgstr "Kann nicht aus Datenstrom lesen"
-#: ../libsvn_subr/io.c:2837
+#: ../libsvn_subr/io.c:3253
+#, fuzzy, c-format
+msgid "Can't write file '%s'"
+msgstr "Kann nicht in Datei »%s« schreiben"
+
+#: ../libsvn_subr/io.c:3254
+#, fuzzy, c-format
+msgid "Can't write stream"
+msgstr "Kann nicht in Datenstrom schreiben"
+
+#: ../libsvn_subr/io.c:3268
#, c-format
msgid "Can't get attribute information from file '%s'"
msgstr "Kann keine Attributinformationen aus Datei »%s« lesen"
-#: ../libsvn_subr/io.c:2838
+#: ../libsvn_subr/io.c:3269
#, c-format
msgid "Can't get attribute information from stream"
msgstr "Kann keine Attributinformationen aus Datenstrom lesen"
-#: ../libsvn_subr/io.c:2874
+#: ../libsvn_subr/io.c:3316
#, c-format
msgid "Can't set position pointer in file '%s'"
msgstr "Kann Positionszeiger in Datei »%s« nicht setzen"
-#: ../libsvn_subr/io.c:2875
+#: ../libsvn_subr/io.c:3317
#, c-format
msgid "Can't set position pointer in stream"
msgstr "Kann Positionszeiger in Datenstrom nicht setzen"
-#: ../libsvn_subr/io.c:2886 ../libsvn_subr/io.c:2920
+#: ../libsvn_subr/io.c:3328 ../libsvn_subr/io.c:3375
#, c-format
msgid "Can't write to file '%s'"
msgstr "Kann nicht in Datei »%s« schreiben"
-#: ../libsvn_subr/io.c:2887 ../libsvn_subr/io.c:2921
+#: ../libsvn_subr/io.c:3329 ../libsvn_subr/io.c:3376
#, c-format
msgid "Can't write to stream"
msgstr "Kann nicht in Datenstrom schreiben"
-#: ../libsvn_subr/io.c:2956
+#: ../libsvn_subr/io.c:3427
#, c-format
msgid "Can't truncate file '%s'"
msgstr "Kann Datei »%s« nicht abschneiden"
-#: ../libsvn_subr/io.c:2957
+#: ../libsvn_subr/io.c:3428
#, c-format
msgid "Can't truncate stream"
msgstr "Kann Datenstrom nicht abschneiden"
-#: ../libsvn_subr/io.c:2997
+#: ../libsvn_subr/io.c:3498
#, c-format
msgid "Can't read length line in file '%s'"
msgstr "Kann Längenzeile nicht aus Datei »%s« lesen"
-#: ../libsvn_subr/io.c:3001
+#: ../libsvn_subr/io.c:3502
msgid "Can't read length line in stream"
msgstr "Kann Längenzeile nicht aus Datenstrom lesen"
-#: ../libsvn_subr/io.c:3020 ../svn/util.c:421 ../svn/util.c:436
-#: ../svn/util.c:460
-#, c-format
-msgid "Can't stat '%s'"
-msgstr "Kann Status von »%s« nicht ermitteln"
-
-#: ../libsvn_subr/io.c:3055
+#: ../libsvn_subr/io.c:3559
#, c-format
msgid "Can't move '%s' to '%s'"
msgstr "Kann »%s« nicht nach »%s« verschieben"
-#: ../libsvn_subr/io.c:3136
+#: ../libsvn_subr/io.c:3640
#, c-format
msgid "Can't create directory '%s'"
msgstr "Kann Verzeichnis »%s« nicht anlegen"
-#: ../libsvn_subr/io.c:3147
+#: ../libsvn_subr/io.c:3663
#, c-format
msgid "Can't hide directory '%s'"
msgstr "Kann Verzeichnis »%s« nicht verstecken"
-#: ../libsvn_subr/io.c:3207 ../libsvn_subr/io.c:3323
+#: ../libsvn_subr/io.c:3723 ../libsvn_subr/io.c:3846
#, c-format
msgid "Can't open directory '%s'"
msgstr "Kann Verzeichnis »%s« nicht öffnen"
-#: ../libsvn_subr/io.c:3247
+#: ../libsvn_subr/io.c:3758
#, c-format
msgid "Can't remove directory '%s'"
msgstr "Kann Verzeichnis »%s« nicht entfernen"
-#: ../libsvn_subr/io.c:3265
+#: ../libsvn_subr/io.c:3776
#, c-format
msgid "Can't read directory"
msgstr "Kann Verzeichnis nicht lesen"
-#: ../libsvn_subr/io.c:3342
+#: ../libsvn_subr/io.c:3796
+#, fuzzy, c-format
+msgid "Error closing directory"
+msgstr "Fehler beim Schließen von Verzeichnis »%s«"
+
+#: ../libsvn_subr/io.c:3865
#, c-format
msgid "Can't read directory entry in '%s'"
msgstr "Kann Verzeichniseintrag in »%s« nicht lesen"
-#: ../libsvn_subr/io.c:3468
+#: ../libsvn_subr/io.c:3991
#, c-format
msgid "Can't check directory '%s'"
msgstr "Kann Verzeichnis »%s« nicht prüfen"
-#: ../libsvn_subr/io.c:3530
+#: ../libsvn_subr/io.c:4053
#, c-format
msgid "Reading '%s'"
msgstr "Lese »%s«"
-#: ../libsvn_subr/io.c:3549
+#: ../libsvn_subr/io.c:4072
#, c-format
msgid "First line of '%s' contains non-digit"
msgstr "Die erste Zeile von »%s« enthält eine Nicht-Ziffer"
-#: ../libsvn_subr/io.c:3690
+#: ../libsvn_subr/io.c:4387
#, c-format
msgid "Can't create temporary file from template '%s'"
msgstr "Kann temporäre Datei von Vorlage »%s« nicht anlegen"
-#: ../libsvn_subr/io.c:3781
+#: ../libsvn_subr/io.c:4476
#, c-format
msgid "Can't set aside '%s'"
msgstr "Kann »%s« nicht beiseitelegen"
-#: ../libsvn_subr/io.c:3793
+#: ../libsvn_subr/io.c:4488
#, c-format
msgid "Unable to make name in '%s'"
msgstr "Kann Namen in »%s« nicht erstellen"
-#: ../libsvn_subr/kitchensink.c:46
-#, c-format
-msgid "Invalid revision number found parsing '%s'"
-msgstr "Ungültige Revisionsnummer beim Einlesen von »%s« gefunden"
-
-#: ../libsvn_subr/kitchensink.c:58
-#, c-format
-msgid "Negative revision number found parsing '%s'"
-msgstr "Negative Revisionsnummer beim Einlesen von »%s« gefunden"
-
-#: ../libsvn_subr/mergeinfo.c:96 ../libsvn_subr/mergeinfo.c:599
+#: ../libsvn_subr/mergeinfo.c:100 ../libsvn_subr/mergeinfo.c:681
msgid "Pathname not terminated by ':'"
msgstr "Pfadnamen sind nicht durch »:« getrennt"
-#: ../libsvn_subr/mergeinfo.c:99
+#: ../libsvn_subr/mergeinfo.c:103
msgid "No pathname preceding ':'"
msgstr "Vor »:« steht kein Pfadname"
-#: ../libsvn_subr/mergeinfo.c:490
-#, c-format
-msgid "Mergeinfo for '%s' maps to an empty revision range"
-msgstr "Zusammenführungsinformationen für »%s« verweisen auf einen leeren Revisionsbereich"
-
-#: ../libsvn_subr/mergeinfo.c:504
+#: ../libsvn_subr/mergeinfo.c:521
#, c-format
msgid "Invalid character '%c' found in revision list"
msgstr "Ungültiges Zeichen »%c« in Revisionsliste gefunden"
-#: ../libsvn_subr/mergeinfo.c:512
+#: ../libsvn_subr/mergeinfo.c:529
#, c-format
msgid "Invalid revision number '0' found in range list"
msgstr "Ungültige Revisionsnummer '0' in Revisionsbereichsliste gefunden"
-#: ../libsvn_subr/mergeinfo.c:523
+#: ../libsvn_subr/mergeinfo.c:540
#, c-format
msgid "Unable to parse reversed revision range '%ld-%ld'"
msgstr "Rückwärtiger Revisionsbereich »%ld-%ld« kann nicht verarbeitet werden"
-#: ../libsvn_subr/mergeinfo.c:528
+#: ../libsvn_subr/mergeinfo.c:545
#, c-format
msgid "Unable to parse revision range '%ld-%ld' with same start and end revisions"
msgstr "Revisionbereich »%ld-%ld« mit selber Start- und Endrevision kann nicht verarbeitet werden"
-#: ../libsvn_subr/mergeinfo.c:565 ../libsvn_subr/mergeinfo.c:572
+#: ../libsvn_subr/mergeinfo.c:582 ../libsvn_subr/mergeinfo.c:589
#, c-format
msgid "Invalid character '%c' found in range list"
msgstr "Ungültiges Zeichen »%c« in der Bereichsliste gefunden"
-#: ../libsvn_subr/mergeinfo.c:579
+#: ../libsvn_subr/mergeinfo.c:596
msgid "Range list parsing ended before hitting newline"
msgstr "Einlesen der Bereichsliste endete vor dem Zeilenumbruch"
-#: ../libsvn_subr/mergeinfo.c:607
-#, c-format
-msgid "Could not find end of line in range list line in '%s'"
-msgstr "Konnte Zeilenende in Bereichslistenzeile in »%s« nicht finden"
-
-#: ../libsvn_subr/mergeinfo.c:638
+#: ../libsvn_subr/mergeinfo.c:637
#, c-format
msgid "Unable to parse overlapping revision ranges '%s' and '%s' with different inheritance types"
msgstr "Überlappende Revisionsbereiche »%s« und »%s« mit verschiedenen Vererbungstypen können nicht verarbeitet werden"
-#: ../libsvn_subr/mergeinfo.c:702
+#: ../libsvn_subr/mergeinfo.c:689
+#, c-format
+msgid "Mergeinfo for '%s' maps to an empty revision range"
+msgstr "Zusammenführungsinformationen für »%s« verweisen auf einen leeren Revisionsbereich"
+
+#: ../libsvn_subr/mergeinfo.c:693
+#, c-format
+msgid "Could not find end of line in range list line in '%s'"
+msgstr "Konnte Zeilenende in Bereichslistenzeile in »%s« nicht finden"
+
+#: ../libsvn_subr/mergeinfo.c:757
#, c-format
msgid "Could not parse mergeinfo string '%s'"
msgstr "Konnte Zusammenführungsinformationszeichenkette »%s« nicht einlesen"
-#: ../libsvn_subr/mergeinfo.c:1922
+#: ../libsvn_subr/mergeinfo.c:2321
msgid "NULL mergeinfo catalog\n"
msgstr "Zusammenführungsinformationskatalog ist NULL\n"
-#: ../libsvn_subr/mergeinfo.c:1927
+#: ../libsvn_subr/mergeinfo.c:2326
msgid "empty mergeinfo catalog\n"
msgstr "Zusammenführungsinformationskatalog ist leer\n"
-#: ../libsvn_subr/mergeinfo.c:1960
-msgid "NULL mergeinfo\n"
-msgstr "Zusammenführungsinformationen sind NULL\n"
+#: ../libsvn_subr/mutex.c:45
+#, fuzzy, c-format
+msgid "Can't create mutex"
+msgstr "Kann DSO-Mutex nicht erzeugen"
-#: ../libsvn_subr/mergeinfo.c:1965
-msgid "empty mergeinfo\n"
-msgstr "Zusammenführungsinformationen sind leer\n"
+#: ../libsvn_subr/mutex.c:62
+#, fuzzy, c-format
+msgid "Can't lock mutex"
+msgstr "Kann Zwischenspeicher-Mutex nicht sperren"
-#: ../libsvn_subr/nls.c:90
+#: ../libsvn_subr/mutex.c:78
+#, fuzzy, c-format
+msgid "Can't unlock mutex"
+msgstr "Kann Zwischenspeicher-Mutex nicht entsperren"
+
+#: ../libsvn_subr/named_atomic.c:331
+msgid "Not a valid atomic"
+msgstr ""
+
+#: ../libsvn_subr/named_atomic.c:465
+#, fuzzy, c-format
+msgid "MMAP failed for file '%s'"
+msgstr "Ungültiger Wert für Feld »%s«"
+
+#: ../libsvn_subr/named_atomic.c:477
+msgid "Number of atomics in namespace is too large."
+msgstr ""
+
+#: ../libsvn_subr/named_atomic.c:527
+msgid "Atomic's name is too long."
+msgstr ""
+
+#: ../libsvn_subr/named_atomic.c:533
+#, fuzzy
+msgid "Namespace has not been initialized."
+msgstr "Zielprojektarchiv wurde noch nicht initialisiert"
+
+#: ../libsvn_subr/named_atomic.c:581
+msgid "Out of slots for named atomic."
+msgstr ""
+
+#: ../libsvn_subr/nls.c:81
#, c-format
msgid "Can't convert string to UCS-2: '%s'"
msgstr "Kann Zeichenkette nicht in UCS-2 konvertieren: »%s«"
-#: ../libsvn_subr/nls.c:97
+#: ../libsvn_subr/nls.c:88
msgid "Can't get module file name"
msgstr "Kann Namen der Moduldatei nicht ermitteln"
-#: ../libsvn_subr/nls.c:112
+#: ../libsvn_subr/nls.c:103
#, c-format
msgid "Can't convert module path to UTF-8 from UCS-2: '%s'"
msgstr "Kann Modulpfad nicht von UTF-8 in UCS-2 konvertieren: »%s«"
-#: ../libsvn_subr/opt.c:187
+#: ../libsvn_subr/opt.c:188
msgid " ARG"
msgstr " PAR"
-#: ../libsvn_subr/opt.c:322
+#: ../libsvn_subr/opt.c:323
msgid ""
"\n"
"Global options:\n"
@@ -5765,72 +6368,95 @@
"\n"
"Globale Optionen:\n"
-#: ../libsvn_subr/opt.c:770
-#, c-format
-msgid "Syntax error parsing revision '%s'"
+#: ../libsvn_subr/opt.c:815
+#, fuzzy, c-format
+msgid "Syntax error parsing peg revision '%s'; did you mean '%s@'?"
msgstr "Syntaxfehler bei der Analyse der Revision »%s«"
-#: ../libsvn_subr/opt.c:907
+#: ../libsvn_subr/opt.c:821
+#, fuzzy, c-format
+msgid "Syntax error parsing peg revision '%s'"
+msgstr "Syntaxfehler bei der Analyse der Revision »%s«"
+
+#: ../libsvn_subr/opt.c:958
msgid "Revision property pair is empty"
msgstr "Revisionseigenschaftspaar ist leer"
-#: ../libsvn_subr/opt.c:927 ../svn/propedit-cmd.c:87 ../svn/propget-cmd.c:207
+#: ../libsvn_subr/opt.c:978 ../svn/propedit-cmd.c:86 ../svn/propget-cmd.c:335
#: ../svn/propset-cmd.c:68
#, c-format
msgid "'%s' is not a valid Subversion property name"
msgstr "»%s« ist kein gültiger Subversion-Eigenschaftsname"
-#: ../libsvn_subr/opt.c:964
+#: ../libsvn_subr/opt.c:1015
#, c-format
msgid "'%s' is just a peg revision. Maybe try '%s@' instead?"
msgstr "»%s« ist nur eine Fix-Revision. Meinten Sie stattdessen »%s@«?"
-#: ../libsvn_subr/opt.c:996
+#: ../libsvn_subr/opt.c:1061
#, c-format
msgid "URL '%s' contains a '..' element"
msgstr "URL »%s« enthält ein »..« Element"
-#: ../libsvn_subr/opt.c:1029
+#: ../libsvn_subr/opt.c:1094
#, c-format
msgid "Error resolving case of '%s'"
msgstr "Fehler beim Ermitteln der Groß-/Kleinschreibung von »%s«"
# FIXME: Datum ist nicht übersetzbar (Aug 3 2006 statt 3. August 2006)
-#: ../libsvn_subr/opt.c:1048
-#, c-format
+#: ../libsvn_subr/opt.c:1116
+#, fuzzy, c-format
msgid ""
"%s, version %s\n"
-" compiled %s, %s\n"
+" compiled %s, %s on %s\n"
"\n"
msgstr ""
"%s, Version %s\n"
" übersetzt %s, %s\n"
"\n"
-#: ../libsvn_subr/opt.c:1051
+#: ../libsvn_subr/opt.c:1133
+#, fuzzy
msgid ""
-"Copyright (C) 2010 The Apache Software Foundation.\n"
-"This software consists of contributions made by many people;\n"
-"see the NOTICE file for more information.\n"
-"Subversion is open source software, see http://subversion.apache.org/\n"
+"System information:\n"
"\n"
-msgstr ""
-"Copyright (C) 2010 The Apache Software Foundation.\n"
-"Diese Software besteht aus Beiträgen vieler Personen;\n"
-"siehe Datei NOTICE für mehr Informationen.\n"
-"Subversion ist Open Source Software, siehe http://subversion.apache.org/\n"
-"\n"
+msgstr "Aktualisierungsinformation ausgeben"
-#: ../libsvn_subr/path.c:958
+#: ../libsvn_subr/opt.c:1134
+#, fuzzy, c-format
+msgid "* running on %s\n"
+msgstr ""
+"\n"
+"Warnung: %s\n"
+
+#: ../libsvn_subr/opt.c:1138
+#, c-format
+msgid " - %s\n"
+msgstr ""
+
+#: ../libsvn_subr/opt.c:1148
+msgid "* linked dependencies:\n"
+msgstr ""
+
+#: ../libsvn_subr/opt.c:1173
+msgid "* loaded shared libraries:\n"
+msgstr ""
+
+#: ../libsvn_subr/path.c:1114
#, c-format
msgid "Can't determine the native path encoding"
msgstr "Kann die Zeichencodierung des Pfades nicht ermitteln"
-#: ../libsvn_subr/path.c:1068
+#: ../libsvn_subr/path.c:1233
#, c-format
msgid "Invalid control character '0x%02x' in path '%s'"
msgstr "Ungültiges Steuerzeichen »0x%02x« in Pfad »%s«"
+#: ../libsvn_subr/path.c:1302
+#, c-format
+msgid "Improper relative URL '%s'"
+msgstr "Fehlerhafte relative URL »%s«"
+
#: ../libsvn_subr/prompt.c:120 ../libsvn_subr/prompt.c:124
#, c-format
msgid "Can't read stdin"
@@ -5845,11 +6471,6 @@
msgid "Username: "
msgstr "Benutzername: "
-#: ../libsvn_subr/prompt.c:211
-#, c-format
-msgid "Password for '%s': "
-msgstr "Passwort für »%s«: "
-
#: ../libsvn_subr/prompt.c:254
#, c-format
msgid "Error validating server certificate for '%s':\n"
@@ -5915,19 +6536,28 @@
msgid "yes"
msgstr "ja"
-#: ../libsvn_subr/prompt.c:426
+#: ../libsvn_subr/prompt.c:422
+msgid "y"
+msgstr ""
+
+#: ../libsvn_subr/prompt.c:427
msgid "no"
msgstr "nein"
-#: ../libsvn_subr/prompt.c:432
+#: ../libsvn_subr/prompt.c:428
+#, fuzzy
+msgid "n"
+msgstr "nein"
+
+#: ../libsvn_subr/prompt.c:434
msgid "Please type 'yes' or 'no': "
msgstr "Bitte geben Sie »ja« oder »nein« ein: "
-#: ../libsvn_subr/prompt.c:446
+#: ../libsvn_subr/prompt.c:448
msgid "Store password unencrypted (yes/no)? "
msgstr "Passwort unverschlüsselt speichern (ja/nein)? "
-#: ../libsvn_subr/prompt.c:448
+#: ../libsvn_subr/prompt.c:450
#, c-format
msgid ""
"\n"
@@ -5962,11 +6592,11 @@
"entweder auf »yes« oder »no« setzen.\n"
"-----------------------------------------------------------------------\n"
-#: ../libsvn_subr/prompt.c:475
+#: ../libsvn_subr/prompt.c:477
msgid "Store passphrase unencrypted (yes/no)? "
msgstr "Passphrase unverschlüsselt speichern (ja/nein)? "
-#: ../libsvn_subr/prompt.c:477
+#: ../libsvn_subr/prompt.c:479
#, c-format
msgid ""
"\n"
@@ -6001,80 +6631,79 @@
"entweder auf »yes« oder »no« setzen.\n"
"-----------------------------------------------------------------------\n"
-#: ../libsvn_subr/prompt.c:523
+#: ../libsvn_subr/prompt.c:525
#, c-format
msgid "Password for '%s' GNOME keyring: "
msgstr "Passwort für GNOME-Schlüsselring »%s«: "
-#: ../libsvn_subr/simple_providers.c:446
-#: ../libsvn_subr/ssl_client_cert_pw_providers.c:296
+#: ../libsvn_subr/simple_providers.c:455
+#: ../libsvn_subr/ssl_client_cert_pw_providers.c:305
#, c-format
msgid "Config error: invalid value '%s' for option '%s'"
msgstr "Konfigurationsfehler: Ungültiger Wert »%s« für Option »%s«"
-#: ../libsvn_subr/sqlite.c:183
-msgid "Expected database row missing"
+#: ../libsvn_subr/sqlite.c:174
+#, c-format
+msgid "sqlite: %s, executing statement '%s'"
+msgstr ""
+
+#: ../libsvn_subr/sqlite.c:262
+#, fuzzy
+msgid "sqlite: Expected database row missing"
msgstr "Erwartete Zeile der Datenbank fehlt"
-#: ../libsvn_subr/sqlite.c:184
-msgid "Extra database row found"
+#: ../libsvn_subr/sqlite.c:263
+#, fuzzy
+msgid "sqlite: Extra database row found"
msgstr "Zusätzliche Zeile der Datenbank wurde gefunden"
-#: ../libsvn_subr/sqlite.c:693
-#, c-format
-msgid "Schema format %d not recognized"
-msgstr "Schema-Format %d wird nicht erkannt"
-
-#: ../libsvn_subr/sqlite.c:709
+#: ../libsvn_subr/sqlite.c:722
#, c-format
msgid "SQLite compiled for %s, but running with %s"
msgstr "SQLite wurde für %s kompiliert, läuft aber mit %s"
-#: ../libsvn_subr/sqlite.c:721
+#: ../libsvn_subr/sqlite.c:734
msgid "SQLite is required to be compiled and run in thread-safe mode"
msgstr "Es wird erwartet, dass SQLite im Thread-sicheren Modus kompiliert und gestartet wird"
-#: ../libsvn_subr/sqlite.c:731
+#: ../libsvn_subr/sqlite.c:743
msgid "Could not configure SQLite"
msgstr "Konnte SQLite nicht konfigurieren"
-#: ../libsvn_subr/sqlite.c:733
+#: ../libsvn_subr/sqlite.c:745
msgid "Could not initialize SQLite"
msgstr "Konnte SQLite nicht initialisieren"
-#: ../libsvn_subr/sqlite.c:742
-msgid "Could not initialize SQLite shared cache"
-msgstr "Konnte den gemeinsam genutzten SQLite-Zwischenspeicher nicht initialisieren"
-
-#: ../libsvn_subr/sqlite.c:812
-#, c-format
-msgid "Expected SQLite database not found: %s"
-msgstr "Erwartete SQLite-Datenbank wurde nicht gefunden: %s"
-
-#: ../libsvn_subr/sqlite.c:1125
+#: ../libsvn_subr/sqlite.c:1175
#, c-format
msgid "SQLite hotcopy failed for %s"
msgstr "SQLite-Hotcopy fehlgeschlagen für »%s«"
-#: ../libsvn_subr/subst.c:1640 ../libsvn_wc/props.c:1950
-#, c-format
-msgid "File '%s' has inconsistent newlines"
-msgstr "Datei »%s« hat inkonsistente Zeilenenden"
-
-#: ../libsvn_subr/svn_string.c:706 ../libsvn_subr/svn_string.c:750
+#: ../libsvn_subr/string.c:943 ../libsvn_subr/string.c:987
#, c-format
msgid "Could not convert '%s' into a number"
msgstr "Konnte »%s« nicht in Zahl umwandeln"
-#: ../libsvn_subr/svn_string.c:712
+#: ../libsvn_subr/subst.c:1739 ../libsvn_wc/props.c:1636
#, c-format
-msgid "Number '%s' is out of range '[%llu, %llu]'"
-msgstr "Zahl »%s« ist außerhalb des zulässigen Bereichs »[%llu, %llu]«"
+msgid "File '%s' has inconsistent newlines"
+msgstr "Datei »%s« hat inkonsistente Zeilenenden"
-#: ../libsvn_subr/svn_string.c:756
-#, c-format
-msgid "Number '%s' is out of range '[%lld, %lld]'"
-msgstr "Zahl »%s« ist außerhalb des zulässigen Bereichs »[%lld, %lld]«"
+#: ../libsvn_subr/sysinfo.c:1078
+msgid "Intel"
+msgstr ""
+
+#: ../libsvn_subr/sysinfo.c:1079
+msgid "Intel 64-bit"
+msgstr ""
+
+#: ../libsvn_subr/sysinfo.c:1080
+msgid "PowerPC"
+msgstr ""
+
+#: ../libsvn_subr/sysinfo.c:1081
+msgid "PowerPC 64-bit"
+msgstr ""
#. Human explanatory part, generated by apr_strftime as "Sat, 01 Jan 2000"
#: ../libsvn_subr/time.c:85
@@ -6086,55 +6715,57 @@
msgid "Token '%s' is unrecognized"
msgstr "Marke »%s« nicht erkannt"
-#: ../libsvn_subr/utf.c:190
-msgid "Can't lock charset translation mutex"
-msgstr "Kann das Semaphor zur Zeichensatzkonvertierung nicht sperren"
+#: ../libsvn_subr/types.c:47
+#, c-format
+msgid "Invalid revision number found parsing '%s'"
+msgstr "Ungültige Revisionsnummer beim Einlesen von »%s« gefunden"
-#: ../libsvn_subr/utf.c:208 ../libsvn_subr/utf.c:304
-msgid "Can't unlock charset translation mutex"
-msgstr "Kann das Semaphor zur Zeichensatzkonvertierung nicht freigeben"
+#: ../libsvn_subr/types.c:59
+#, c-format
+msgid "Negative revision number found parsing '%s'"
+msgstr "Negative Revisionsnummer beim Einlesen von »%s« gefunden"
-#: ../libsvn_subr/utf.c:262
+#: ../libsvn_subr/utf.c:239
#, c-format
msgid "Can't create a character converter from native encoding to '%s'"
msgstr "Kann keinen Zeichenkonverter von der eigenen Codierung nach »%s« erzeugen"
-#: ../libsvn_subr/utf.c:266
+#: ../libsvn_subr/utf.c:243
#, c-format
msgid "Can't create a character converter from '%s' to native encoding"
msgstr "Kann keinen Zeichenkonverter von »%s« in die eigene Kodierung erzeugen"
-#: ../libsvn_subr/utf.c:270
+#: ../libsvn_subr/utf.c:247
#, c-format
msgid "Can't create a character converter from '%s' to '%s'"
msgstr "Kann keinen Zeichenkonverter von »%s« nach »%s« erzeugen"
-#: ../libsvn_subr/utf.c:499
+#: ../libsvn_subr/utf.c:593
#, c-format
msgid "Can't convert string from native encoding to '%s':"
msgstr "Kann Zeichenkette nicht von der eigenen Codierung nach »%s« konvertieren:"
-#: ../libsvn_subr/utf.c:503
+#: ../libsvn_subr/utf.c:597
#, c-format
msgid "Can't convert string from '%s' to native encoding:"
msgstr "Kann Zeichenkette nicht von »%s« in die eigene Codierung konvertieren:"
-#: ../libsvn_subr/utf.c:507
+#: ../libsvn_subr/utf.c:601
#, c-format
msgid "Can't convert string from '%s' to '%s':"
msgstr "Kann Zeichenkette nicht von »%s« nach »%s« konvertieren:"
-#: ../libsvn_subr/utf.c:552
+#: ../libsvn_subr/utf.c:646
#, c-format
msgid "Safe data '%s' was followed by non-ASCII byte %d: unable to convert to/from UTF-8"
msgstr "Auf sichere Daten »%s« folgte ein nicht-ASCII Byte %d, das nicht von/nach UTF-8 konvertiert werden konnte"
-#: ../libsvn_subr/utf.c:560
+#: ../libsvn_subr/utf.c:654
#, c-format
msgid "Non-ASCII character (code %d) detected, and unable to convert to/from UTF-8"
msgstr "Ein Nicht-ASCII Zeichen (Kode %d) wurde gefunden, das nicht von/nach UTF-8 konvertiert werden konnte"
-#: ../libsvn_subr/utf.c:605
+#: ../libsvn_subr/utf.c:699
#, c-format
msgid ""
"Valid UTF-8 data\n"
@@ -6147,62 +6778,75 @@
"folgte eine ungültige UTF-8-Sequenz\n"
"(hex:%s)"
-#: ../libsvn_subr/validate.c:55
+#: ../libsvn_subr/validate.c:56
#, c-format
msgid "MIME type '%s' has empty media type"
msgstr "MIME-Typ »%s« hat einen leeren Medientyp"
-#: ../libsvn_subr/validate.c:60
+#: ../libsvn_subr/validate.c:61
#, c-format
msgid "MIME type '%s' does not contain '/'"
msgstr "MIME-Typ »%s« enthält keinen »/«"
-#: ../libsvn_subr/validate.c:72
-#, c-format
-msgid "MIME type '%s' contains invalid character '%c'"
+#: ../libsvn_subr/validate.c:73
+#, fuzzy, c-format
+msgid "MIME type '%s' contains invalid character '%c' in media type"
msgstr "MIME-Typ »%s« enthält ein ungültiges Zeichen »%c«"
-#: ../libsvn_subr/version.c:87
+#: ../libsvn_subr/validate.c:84
+#, fuzzy, c-format
+msgid "MIME type '%s' contains invalid character '0x%02x' in postfix"
+msgstr "MIME-Typ »%s« enthält ein ungültiges Zeichen »%c«"
+
+#: ../libsvn_subr/version.c:89
#, c-format
msgid "Version mismatch in '%s': found %d.%d.%d%s, expected %d.%d.%d%s"
msgstr "Version von »%s« ist unerwartet: gefunden %d.%d.%d%s, erwartet %d.%d.%d%s"
+#: ../libsvn_subr/version.c:132
+#, fuzzy
+msgid ""
+"Copyright (C) 2013 The Apache Software Foundation.\n"
+"This software consists of contributions made by many people;\n"
+"see the NOTICE file for more information.\n"
+"Subversion is open source software, see http://subversion.apache.org/\n"
+msgstr ""
+"Copyright (C) 2010 The Apache Software Foundation.\n"
+"Diese Software besteht aus Beiträgen vieler Personen;\n"
+"siehe Datei NOTICE für mehr Informationen.\n"
+"Subversion ist Open Source Software, siehe http://subversion.apache.org/\n"
+"\n"
+
#: ../libsvn_subr/xml.c:415
#, c-format
msgid "Malformed XML: %s at line %ld"
msgstr "Fehlerhaftes XML: %s in Zeile %ld"
-#: ../libsvn_wc/adm_crawler.c:114
+#: ../libsvn_wc/adm_crawler.c:113
#, c-format
msgid "The existing node '%s' can not be restored."
msgstr "Der vorhandene Knoten »%s« kann nicht wiederhergestellt werden."
-#: ../libsvn_wc/adm_crawler.c:141
+#: ../libsvn_wc/adm_crawler.c:132
#, c-format
msgid "The node '%s' can not be restored."
msgstr "Der Knoten »%s« kann nicht wiederhergestellt werden."
-#: ../libsvn_wc/adm_crawler.c:724
-#, c-format
-msgid "Can't retrieve base revision for %s"
-msgstr "Kann Basisrevision für »%s« nicht abfragen"
-
-#: ../libsvn_wc/adm_crawler.c:999
+#: ../libsvn_wc/adm_crawler.c:861
msgid "Error aborting report"
msgstr "Fehler beim Abbrechen des Reports"
-#: ../libsvn_wc/adm_crawler.c:1274
-#, c-format
-msgid ""
-"Checksum mismatch for text base of '%s':\n"
-" expected: %s\n"
-" actual: %s\n"
-msgstr ""
-"Prüfsummenfehler für Textbasis von »%s«:\n"
-" Erwartet: %s\n"
-" Tatsächlich: %s\n"
+#: ../libsvn_wc/adm_crawler.c:973
+#, fuzzy, c-format
+msgid "Pristine checksum for file '%s' is missing"
+msgstr "Administrativer Bereich von »%s« fehlt"
-#: ../libsvn_wc/adm_crawler.c:1288
+#: ../libsvn_wc/adm_crawler.c:1138
+#, fuzzy, c-format
+msgid "Checksum mismatch for text base of '%s'"
+msgstr "Prüfsummenfehler für »%s«"
+
+#: ../libsvn_wc/adm_crawler.c:1149
#, c-format
msgid "While preparing '%s' for commit"
msgstr "Beim Vorbereiten von »%s« für die Übertragung"
@@ -6212,128 +6856,88 @@
msgid "'%s' is not a valid administrative directory name"
msgstr "»%s« ist kein gültiger Verwaltungsverzeichnisname"
-#: ../libsvn_wc/adm_files.c:208
-#, c-format
-msgid "Node '%s' has no pristine text"
-msgstr "Knoten »%s« hat keinen Ursprungstext"
-
-#: ../libsvn_wc/adm_files.c:234
-#, c-format
-msgid "Node '%s' has no pristine base text"
-msgstr "Knoten »%s« hat keine ursprüngliche Textbasis"
-
-#: ../libsvn_wc/adm_files.c:259
-#, c-format
-msgid "File '%s' has no text base"
-msgstr "Datei »%s« hat keine Textbasis"
-
-#: ../libsvn_wc/adm_files.c:286
-#, c-format
-msgid "Base node of '%s' is not a file"
-msgstr "Basisknoten von »%s« ist keine Datei"
-
-#: ../libsvn_wc/adm_files.c:322
+#: ../libsvn_wc/adm_files.c:185 ../libsvn_wc/adm_files.c:241
#, c-format
msgid "Can only get the pristine contents of files; '%s' is not a file"
msgstr "Kann nur ursprünglichen Inhalt von Dateien holen; »%s« ist keine Datei"
-#: ../libsvn_wc/adm_files.c:348
+#: ../libsvn_wc/adm_files.c:194 ../libsvn_wc/adm_files.c:256
#, c-format
msgid "Cannot get the pristine contents of '%s' because its delete is already committed"
msgstr "Kann den ursprünglichen Inhalt von »%s« nicht holen, da sein Löschen schon übertragen wurde"
-#: ../libsvn_wc/adm_files.c:356
+#: ../libsvn_wc/adm_files.c:202 ../libsvn_wc/adm_files.c:264
#, c-format
msgid "Cannot get the pristine contents of '%s' because it has an unexpected status"
msgstr "Kann den ursprünglichen Inhalt von »%s« nicht holen, da es einen unerwarteten Status hat"
-#: ../libsvn_wc/adm_files.c:639
+#: ../libsvn_wc/adm_files.c:209
+#, c-format
+msgid "Node '%s' has no pristine text"
+msgstr "Knoten »%s« hat keinen Ursprungstext"
+
+#: ../libsvn_wc/adm_files.c:452
#, c-format
msgid "Revision %ld doesn't match existing revision %ld in '%s'"
msgstr "Revision %ld passt nicht zur existierenden Revision %ld in »%s«"
-#: ../libsvn_wc/adm_files.c:685
-#, c-format
-msgid "URL '%s' doesn't match existing URL '%s' in '%s'"
+#: ../libsvn_wc/adm_files.c:489
+#, fuzzy, c-format
+msgid "URL '%s' (uuid: '%s') doesn't match existing URL '%s' (uuid: '%s') in '%s'"
msgstr "URL »%s« stimmt nicht mit der existierenden URL »%s« in »%s« überein"
-#: ../libsvn_wc/adm_ops.c:625
+#: ../libsvn_wc/adm_ops.c:717 ../libsvn_wc/adm_ops.c:831
#, c-format
msgid "'%s' cannot be deleted"
msgstr "»%s« kann nicht gelöscht werden"
-#: ../libsvn_wc/adm_ops.c:795 ../libsvn_wc/update_editor.c:5607
+#: ../libsvn_wc/adm_ops.c:735 ../libsvn_wc/adm_ops.c:847
+#, fuzzy, c-format
+msgid "'%s' is the root of a working copy and cannot be deleted"
+msgstr "Das Basisverzeichnis kann nicht gelöscht werden"
+
+#: ../libsvn_wc/adm_ops.c:977 ../libsvn_wc/update_editor.c:5020
#, c-format
msgid "Can't find parent directory's node while trying to add '%s'"
msgstr "Kann Knoten des Elternverzeichnisses während des Hinzufügens von »%s« nicht finden"
-#: ../libsvn_wc/adm_ops.c:804 ../libsvn_wc/update_editor.c:5601
+#: ../libsvn_wc/adm_ops.c:986 ../libsvn_wc/update_editor.c:5014
#, c-format
msgid "Can't add '%s' to a parent directory scheduled for deletion"
msgstr ""
"Kann »%s« nicht zu einem Elternverzeichnis hinzufügen, das selbst zum Löschen\n"
"vorgesehen ist"
-#: ../libsvn_wc/adm_ops.c:813 ../libsvn_wc/update_editor.c:5614
+#: ../libsvn_wc/adm_ops.c:993 ../libsvn_wc/update_editor.c:5027
#, c-format
msgid "Can't schedule an addition of '%s' below a not-directory node"
msgstr "Kann »%s« nicht zum Hinzufügen unter einem Knoten vorsehen, der kein Verzeichnis ist"
-#: ../libsvn_wc/adm_ops.c:872
+#: ../libsvn_wc/adm_ops.c:1052
#, c-format
msgid "Can't create an entry with a reserved name while trying to add '%s'"
msgstr "Kann einen Eintrag mit einem reservierten Namen nicht erzeugen, während versucht wird, »%s« hinzuzufügen"
-#: ../libsvn_wc/adm_ops.c:1050
+#: ../libsvn_wc/adm_ops.c:1256
#, c-format
msgid "The URL '%s' has a different repository root than its parent"
msgstr "Die URL »%s« hat eine andere Projektarchiv-Basis als ihr Vorgänger"
-#: ../libsvn_wc/adm_ops.c:1068
+#: ../libsvn_wc/adm_ops.c:1274
#, c-format
msgid "Can't schedule the working copy at '%s' from repository '%s' with uuid '%s' for addition under a working copy from repository '%s' with uuid '%s'."
msgstr "Kann Arbeitkopie »%s« des Projektarchivs »%s« mit UUID »%s« nicht zum Hinzufügen unter einer Arbeitskopie des Projektarchivs »%s« mit UUID »%s« vorsehen."
-#: ../libsvn_wc/adm_ops.c:1082
+#: ../libsvn_wc/adm_ops.c:1288
#, c-format
msgid "Can't add '%s' with URL '%s', but with the data from '%s'"
msgstr "Kann »%s« mit URL »%s« aber den Daten von »%s« nicht hinzufügen"
-#: ../libsvn_wc/adm_ops.c:1313
-#, c-format
-msgid "Can't revert '%s' with this depth, as that requires reverting '%s'."
-msgstr "Kann »%s« mit dieser Tiefe nicht zurücksetzen, da dies das Zurücksetzen von »%s« erfordert."
-
-#: ../libsvn_wc/adm_ops.c:1414
-#, c-format
-msgid "Cannot revert unversioned item '%s'"
-msgstr "Nicht versioniertes Objekt »%s« kann nicht rückgängig gemacht werden"
-
-#: ../libsvn_wc/adm_ops.c:1445
-#, c-format
-msgid "Cannot revert '%s': unsupported entry node kind"
-msgstr "Kann »%s« nicht zurücksetzen: nicht unterstützter Eintragsknotentyp"
-
-#: ../libsvn_wc/adm_ops.c:1460
-#, c-format
-msgid "Cannot revert '%s': unsupported node kind in working copy"
-msgstr "Kann »%s« nicht zurücksetzen: nicht unterstützter Knotentyp in Arbeitskopie"
-
-#: ../libsvn_wc/adm_ops.c:1785
+#: ../libsvn_wc/adm_ops.c:2442
#, c-format
msgid "File '%s' has local modifications"
msgstr "Die Datei »%s« hat lokale Änderungen"
-#: ../libsvn_wc/adm_ops.c:2087
-#, c-format
-msgid "'%s' is a directory, and thus cannot be a member of a changelist"
-msgstr "»%s« ist ein Verzeichnis and kann deswegen nicht Element einer Änderungsliste sein"
-
-#: ../libsvn_wc/adm_ops.c:2155
-#, c-format
-msgid "Can't add a file external to '%s' as it is not a file in repository '%s'."
-msgstr "Kann externen Dateiverweis auf »%s« nicht hinzufügen, da dies keine Datei im Projektarchiv »%s« ist."
-
#: ../libsvn_wc/cleanup.c:58
#, c-format
msgid "'%s' is not a working copy directory"
@@ -6343,184 +6947,322 @@
msgid "Log format too old, please use Subversion 1.6 or earlier"
msgstr "Log-Format zu alt, bitte verwenden Sie Subversion 1.6 oder älter"
-#: ../libsvn_wc/conflicts.c:299
+# FIXME: http://www.urbandictionary.com/define.php?term=Skel
+#: ../libsvn_wc/conflicts.c:82
+#, fuzzy
+msgid "Not a conflict skel"
+msgstr "Fehler beim Einlesen der Baumkonfliktvorlage"
+
+# FIXME: http://www.urbandictionary.com/define.php?term=Skel
+#: ../libsvn_wc/conflicts.c:589 ../libsvn_wc/conflicts.c:686
+#, fuzzy
+msgid "Not a completed conflict skel"
+msgstr "Fehler beim Einlesen der Baumkonfliktvorlage"
+
+#: ../libsvn_wc/conflicts.c:767 ../libsvn_wc/conflicts.c:840
+#: ../libsvn_wc/conflicts.c:929
+#, fuzzy
+msgid "Conflict not set"
+msgstr "Konflikt bei »%s«"
+
+# FIXME: duplicated message (differs only in ".")
+#: ../libsvn_wc/conflicts.c:1386
+msgid "Conflict callback violated API: returned no results."
+msgstr "Konflikt-Aktion verletzte die API: keine Ergebnisse wurden zurückgeliefert."
+
+#: ../libsvn_wc/conflicts.c:1428
+msgid "Conflict callback violated API: returned no merged file."
+msgstr "Konflikt-Aktion verletzte die API: keine zusammengeführte Datei wurde zurückgeliefert."
+
+# CHECKME: s/callback/hook/ ??
+#: ../libsvn_wc/conflicts.c:1718
+msgid "Conflict callback violated API: returned no results"
+msgstr "Konflikt-Aktion verletzte die API: keine Ergebnisse wurden zurückgeliefert"
+
+#: ../libsvn_wc/conflicts.c:2313 ../libsvn_wc/conflicts.c:2430
msgid "Invalid 'conflict_result' argument"
msgstr "Ungültiger Parameter »conflict_result«"
-#: ../libsvn_wc/conflicts.c:409
-#, c-format
-msgid "Tree conflicts can only be resolved to 'working' state; '%s' not resolved"
+#: ../libsvn_wc/conflicts.c:2575
+msgid "No conflict-callback and no pre-defined conflict-choice provided"
+msgstr ""
+
+#: ../libsvn_wc/conflicts.c:2620
+#, fuzzy, c-format
+msgid "Tree conflict can only be resolved to 'working' state; '%s' not resolved"
msgstr "Baumkonflikte können nur zum Zustand »working« aufgelöst werden; Konflikt in »%s« nicht aufgelöst"
-#: ../libsvn_wc/copy.c:78
+#: ../libsvn_wc/copy.c:85
#, c-format
msgid "Source '%s' is unexpected kind"
msgstr "Quelle »%s« ist unbekannten Typs"
-#: ../libsvn_wc/copy.c:384
+#: ../libsvn_wc/copy.c:409
#, c-format
msgid "cannot handle node kind for '%s'"
msgstr "Kann Knotentyp für »%s« nicht verarbeiten"
-#: ../libsvn_wc/copy.c:648
+#: ../libsvn_wc/copy.c:431 ../libsvn_wc/wc_db.c:4066 ../libsvn_wc/wc_db.c:4423
+#, c-format
+msgid "Cannot handle status of '%s'"
+msgstr "Kann Status von »%s« nicht verarbeiten"
+
+#: ../libsvn_wc/copy.c:440 ../libsvn_wc/wc_db.c:4057 ../libsvn_wc/wc_db.c:4417
+#: ../libsvn_wc/wc_db.c:4648
+#, c-format
+msgid "Cannot copy '%s' excluded by server"
+msgstr "Kann vom Server ausgeschlossenes »%s« nicht kopieren"
+
+#: ../libsvn_wc/copy.c:575
+#, fuzzy, c-format
+msgid "Deleted node '%s' can't be copied."
+msgstr "Erwartete, dass Knoten »%s« hinzugefügt wird."
+
+#: ../libsvn_wc/copy.c:653
#, c-format
msgid "Cannot copy to '%s', as it is not from repository '%s'; it is from '%s'"
msgstr ""
"Kann »%s« nicht kopieren, da es nicht aus dem Projektarchiv »%s« stammt\n"
"sondern aus »%s«"
-#: ../libsvn_wc/copy.c:656
+#: ../libsvn_wc/copy.c:661
#, c-format
msgid "Cannot copy to '%s' as it is scheduled for deletion"
msgstr "Kann nach »%s« kopieren, da es zum Löschen vorgesehen ist"
-#: ../libsvn_wc/copy.c:685
+#: ../libsvn_wc/copy.c:689
#, c-format
msgid "'%s' is already under version control but is excluded."
msgstr "»%s« befindet sich bereits unter Versionskontrolle, ist aber ausgeschlossen."
-#: ../libsvn_wc/copy.c:700
+#: ../libsvn_wc/copy.c:704
#, c-format
msgid "There is already a versioned item '%s'"
msgstr "Es existiert bereits ein versioniertes Objekt »%s«"
-#: ../libsvn_wc/copy.c:716
+#: ../libsvn_wc/copy.c:720
#, c-format
msgid "'%s' already exists and is in the way"
msgstr "»%s« existiert bereits und ist im Weg"
-#: ../libsvn_wc/crop.c:224
+#: ../libsvn_wc/copy.c:768
+#, fuzzy, c-format
+msgid "Cannot move mixed-revision subtree '%s' [%ld:%ld]; try updating it first"
+msgstr "Kann nicht in eine Arbeitskopie mit verschiedenen Revisionen zusammenführen [%lu:%lu], versuchen Sie erst zu aktualisieren"
+
+#: ../libsvn_wc/crop.c:205
#, c-format
msgid "Cannot exclude '%s': it is a working copy root"
msgstr "Kann »%s« nicht ausschließen: Es ist die Basis einer Arbeitskopie"
-#: ../libsvn_wc/crop.c:232
+#: ../libsvn_wc/crop.c:213
#, c-format
msgid "Cannot exclude '%s': it is a switched path"
msgstr "Kann »%s« nicht ausschließen: Es ist ein umgestellter Pfad"
-#: ../libsvn_wc/crop.c:256
+#: ../libsvn_wc/crop.c:240
#, c-format
msgid "Cannot exclude '%s': it is to be added to the repository. Try commit instead"
msgstr "Kann »%s« nicht ausschließen: Es soll dem Projektarchiv hinzugefügt werden. Versuchen Sie stattdessen es zu übertragen"
-#: ../libsvn_wc/crop.c:263
+#: ../libsvn_wc/crop.c:247
#, c-format
msgid "Cannot exclude '%s': it is to be deleted from the repository. Try commit instead"
msgstr "Kann »%s« nicht ausschließen: Es soll aus dem Projektarchiv entfernt werden. Versuchen Sie stattdessen es zu übertragen"
# CHECKME: Check translation of crop (beschneiden?)!!!!
-#: ../libsvn_wc/crop.c:333
+#: ../libsvn_wc/crop.c:306
msgid "Can only crop a working copy with a restrictive depth"
msgstr "Kann nur eine Arbeitskopie mit einer eingeschränkten Tiefe beschneiden"
-#: ../libsvn_wc/crop.c:348
+#: ../libsvn_wc/crop.c:317
msgid "Can only crop directories"
msgstr "Kann nur Verzeichnisse beschneiden"
-#: ../libsvn_wc/crop.c:359
+#: ../libsvn_wc/crop.c:330
#, c-format
msgid "Cannot crop '%s': it is going to be removed from repository. Try commit instead"
msgstr "Kann »%s« nicht beschneiden: Es soll vom Projektarchiv entfernt werden. Versuchen Sie stattdessen es zu übertragen"
-#: ../libsvn_wc/crop.c:366
+#: ../libsvn_wc/crop.c:337
#, c-format
msgid "Cannot crop '%s': it is to be added to the repository. Try commit instead"
msgstr "Kann »%s« nicht beschneiden: Es soll dem Projektarchiv hinzugefügt werden. Versuchen Sie stattdessen es zu übertragen"
-#: ../libsvn_wc/deprecated.c:2052
+#: ../libsvn_wc/deprecated.c:2261
#, c-format
msgid "Unexpectedly found '%s': path is marked 'missing'"
msgstr "Unerwartetes »%s« gefunden: Pfad wird als »fehlend« markiert"
-#: ../libsvn_wc/entries.c:1148
+#: ../libsvn_wc/entries.c:1042
#, c-format
msgid "'%s' is not a versioned working copy"
msgstr "»%s« ist keine versionierte Arbeitskopie"
-#: ../libsvn_wc/entries.c:1394
+#: ../libsvn_wc/entries.c:1288
#, c-format
msgid "Admin area of '%s' is missing"
msgstr "Administrativer Bereich von »%s« fehlt"
-#: ../libsvn_wc/entries.c:1414
+#: ../libsvn_wc/entries.c:1308
#, c-format
msgid "'%s' is not of the right kind"
msgstr "»%s« hat einen falschen Typ"
-#: ../libsvn_wc/entries.c:2143
+#: ../libsvn_wc/entries.c:1505
+#, fuzzy, c-format
+msgid "The file '%s' has no checksum"
+msgstr "Der Knoten »%s« hat einen fehlerhaften Prüfsummenwert."
+
+#: ../libsvn_wc/entries.c:1794
+#, c-format
+msgid "No copyfrom URL for '%s'"
+msgstr ""
+
+#: ../libsvn_wc/entries.c:2010
+#, fuzzy, c-format
+msgid "Bad base MD5 checksum for '%s'; expected: '%s'; found '%s'; "
+msgstr "Prüfsummenfehler für »%s«; erwartet: »%s«, tatsächlich: »%s«"
+
+#: ../libsvn_wc/entries.c:2352
#, c-format
msgid "No default entry in directory '%s'"
msgstr "Verzeichnis »%s« hat keinen Standardeintrag"
-#: ../libsvn_wc/entries.c:2321
+#: ../libsvn_wc/entries.c:2509
#, c-format
msgid "Directory '%s' has no THIS_DIR entry"
msgstr "Verzeichnis »%s« hat keinen »THIS_DIR« Eintrag"
-#: ../libsvn_wc/entries.c:2504 ../libsvn_wc/node.c:769
+#: ../libsvn_wc/entries.c:2690 ../libsvn_wc/node.c:588
#, c-format
msgid "'%s' has an unrecognized node kind"
msgstr "»%s« hat einen nicht erkannten Knotentyp"
-#: ../libsvn_wc/lock.c:504
+#: ../libsvn_wc/externals.c:154 ../libsvn_wc/externals.c:232
+#, c-format
+msgid "Error parsing %s property on '%s': '%s'"
+msgstr "Fehler beim Analysieren der %s Eigenschaft für »%s«: »%s«"
+
+#: ../libsvn_wc/externals.c:202
+#, c-format
+msgid "Can't split line into components: '%s'"
+msgstr "Zeile kann nicht in Komponenten zerlegt werden: »%s«"
+
+#: ../libsvn_wc/externals.c:257
+#, c-format
+msgid "Invalid %s property on '%s': cannot use two absolute URLs ('%s' and '%s') in an external; one must be a path where an absolute or relative URL is checked out to"
+msgstr "Ungültige Eigenschaft %s zu »%s«: Es können nicht zwei absolute URLs (»%s« und »%s«) in einem externen Verweis verwendet werden; eine muss ein Pfad sein, in den eine absolute oder relative URL ausgecheckt wird"
+
+#: ../libsvn_wc/externals.c:266 ../libsvn_wc/externals.c:274
+#, c-format
+msgid "Invalid %s property on '%s': cannot use a URL '%s' as the target directory for an external definition"
+msgstr "Ungültige Eigenschaft %s zu »%s«: Eine URL »%s« kann nicht als Zielverzeichnis für eine externe Definition verwendet werden"
+
+#: ../libsvn_wc/externals.c:316
+#, c-format
+msgid "Invalid %s property on '%s': target '%s' is an absolute path or involves '..'"
+msgstr "Ungültige Eigenschaft %s auf »%s«: Ziel »%s« ist ein absoluter Pfad oder enthält »..«"
+
+#: ../libsvn_wc/externals.c:488 ../libsvn_wc/externals.c:510
+#, c-format
+msgid "This editor can only update '%s'"
+msgstr ""
+
+#: ../libsvn_wc/externals.c:525
+#, fuzzy, c-format
+msgid "Node '%s' is no existing file external"
+msgstr "Knoten »%s« hat keinen Ursprungstext"
+
+#: ../libsvn_wc/externals.c:1503
+#, c-format
+msgid "URL '%s' does not begin with a scheme"
+msgstr "Die URL »%s« beginnt nicht mit einem Schema"
+
+#: ../libsvn_wc/externals.c:1558
+#, c-format
+msgid "Illegal parent directory URL '%s'"
+msgstr "Illegale URL des übergeordneten Verzeichnisses »%s«"
+
+#: ../libsvn_wc/externals.c:1597
+#, c-format
+msgid "Illegal repository root URL '%s'"
+msgstr "Illegale Projektarchivwurzel-URL »%s«"
+
+#: ../libsvn_wc/externals.c:1642
+#, c-format
+msgid "The external relative URL '%s' cannot have backpaths, i.e. '..'"
+msgstr "Die externe relative URL »%s« darf keinen Verweis auf übergeordnete Pfade haben, d.h. »..«"
+
+#: ../libsvn_wc/externals.c:1670
+#, c-format
+msgid "Unrecognized format for the relative external URL '%s'"
+msgstr "Unbekanntes Format für die relative externe URL »%s«"
+
+#: ../libsvn_wc/lock.c:529
#, c-format
msgid "Path '%s' ends in '%s', which is unsupported for this operation"
msgstr "Pfad »%s« endet mit »%s«, was für diese Operation nicht erlaubt ist"
-#: ../libsvn_wc/lock.c:553 ../libsvn_wc/upgrade.c:1266
-#, c-format
-msgid "Working copy format of '%s' is too old (%d); please run 'svn upgrade'"
-msgstr "Format der Arbeitskopie »%s« ist zu alt (%d); Bitte führen Sie »svn upgrade« aus"
-
-#: ../libsvn_wc/lock.c:817 ../libsvn_wc/wc_db.c:8585
+#: ../libsvn_wc/lock.c:773 ../libsvn_wc/wc_db.c:12837
#, c-format
msgid "Working copy '%s' locked"
msgstr "Arbeitskopie »%s« gesperrt"
-#: ../libsvn_wc/lock.c:961
+#: ../libsvn_wc/lock.c:918
#, c-format
msgid "Unable to check path existence for '%s'"
msgstr "Kann die Existenz des Pfades »%s« nicht prüfen"
-#: ../libsvn_wc/lock.c:981
+#: ../libsvn_wc/lock.c:940
#, c-format
msgid "Expected '%s' to be a directory but found a file"
msgstr "Erwartete, dass »%s« ein Verzeichnis ist, es ist aber eine Datei"
-#: ../libsvn_wc/lock.c:991
+#: ../libsvn_wc/lock.c:950
#, c-format
msgid "Can't retrieve an access baton for non-directory '%s'"
msgstr "Kann keine Zugriffsreferenz für nicht-Verzeichnis »%s« erhalten"
-#: ../libsvn_wc/lock.c:1000
+#: ../libsvn_wc/lock.c:959
#, c-format
msgid "Directory '%s' is missing"
msgstr "Verzeichnis »%s« fehlt"
-#: ../libsvn_wc/lock.c:1008
+#: ../libsvn_wc/lock.c:967
#, c-format
msgid "Working copy '%s' is not locked"
msgstr "Arbeitskopie »%s« ist nicht gesperrt"
-#: ../libsvn_wc/lock.c:1469
+#: ../libsvn_wc/lock.c:1379
#, c-format
msgid "No write-lock in '%s'"
msgstr "Keine Schreibsperre in »%s«"
-#: ../libsvn_wc/lock.c:1564 ../libsvn_wc/lock.c:1615
+#: ../libsvn_wc/lock.c:1493
#, c-format
msgid "Can't obtain lock on non-directory '%s'."
msgstr "Kann keine Sperre für nicht-Verzeichnis »%s« erhalten."
-# CHECKME: s/callback/hook/ ??
-#: ../libsvn_wc/merge.c:866 ../libsvn_wc/merge.c:1139
-msgid "Conflict callback violated API: returned no results"
-msgstr "Konflikt-Aktion verletzte die API: keine Ergebnisse wurden zurückgeliefert"
+#: ../libsvn_wc/merge.c:1274 ../libsvn_wc/props.c:259
+#, fuzzy, c-format
+msgid "Can't merge into conflicted node '%s'"
+msgstr "Kann nicht in Datei »%s« schreiben"
-#: ../libsvn_wc/merge.c:1175
-msgid "Conflict callback violated API: returned no merged file"
-msgstr "Konflikt-Aktion verletzte die API: keine zusammengeführte Datei wurde zurückgeliefert"
+#: ../libsvn_wc/merge.c:1315 ../libsvn_wc/props.c:275
+#, c-format
+msgid "The property '%s' may not be merged into '%s'."
+msgstr "Eigenschaft »%s« darf nicht nach »%s« zusammengeführt werden."
+
+#: ../libsvn_wc/node.c:1100
+#, fuzzy, c-format
+msgid "Incomplete copy information on path '%s'."
+msgstr "kein Elternteil mit »copyfrom«-Information wurde oberhalb »%s« gefunden"
+
+#: ../libsvn_wc/node.c:1264
+#, fuzzy, c-format
+msgid "'%s' is not the root of the working copy '%s'"
+msgstr "»%s« ist nicht die Basis des Projektarchivs"
#: ../libsvn_wc/old-and-busted.c:122
msgid "Invalid escape sequence"
@@ -6615,258 +7357,249 @@
msgid "Error at entry %d in entries file for '%s':"
msgstr "Fehler bei Eintrag %d in Eintragsdatei für »%s«:"
-#: ../libsvn_wc/props.c:283
-#, c-format
-msgid "The property '%s' may not be merged into '%s'."
-msgstr "Eigenschaft »%s« darf nicht nach »%s« zusammengeführt werden."
+#: ../libsvn_wc/props.c:238
+#, fuzzy, c-format
+msgid "The node '%s' does not have properties in this state."
+msgstr "Der Knoten »%s« kann nicht wiederhergestellt werden."
-#: ../libsvn_wc/props.c:427
-#, c-format
+#: ../libsvn_wc/props.c:390
+#, fuzzy, c-format
msgid ""
-"Trying to add new property '%s' with value '%s',\n"
-"but property already exists with value '%s'."
+"Trying to add new property '%s'\n"
+"but the property already exists.\n"
msgstr ""
"Versuch, eine neue Eigenschaft »%s« mit dem Wert »%s« anzulegen,\n"
"aber die Eigenschaft existiert bereits mit dem Wert »%s«."
-#: ../libsvn_wc/props.c:437
-#, c-format
+#: ../libsvn_wc/props.c:399
+#, fuzzy, c-format
msgid ""
-"Trying to create property '%s' with value '%s',\n"
-"but it has been locally deleted."
-msgstr ""
-"Versuch, die Eigenschaft »%s« mit dem Wert »%s« anzulegen,\n"
-"aber die Eigenschaft wurde lokal bereits gelöscht."
-
-#: ../libsvn_wc/props.c:451
-#, c-format
-msgid ""
-"Trying to delete property '%s' with value '%s',\n"
-"but property has been locally added with value '%s'."
-msgstr ""
-"Versuch, die Eigenschaft »%s« mit dem Wert »%s« zu löschen,\n"
-"aber die Eigenschaft wurde lokal mit dem Wert »%s« hinzugefügt."
-
-#: ../libsvn_wc/props.c:468
-#, c-format
-msgid ""
-"Trying to delete property '%s' with value '%s',\n"
-"but it has been modified from '%s' to '%s'."
-msgstr ""
-"Versuch, die Eigenschaft »%s« mit dem Wert »%s« zu löschen,\n"
-"aber der Wert wurde von »%s« nach »%s« geändert."
-
-#: ../libsvn_wc/props.c:479
-#, c-format
-msgid ""
-"Trying to delete property '%s' with value '%s',\n"
-"but property with value '%s' is locally deleted."
-msgstr ""
-"Versuch, die Eigenschaft »%s« mit dem Wert »%s« zu löschen,\n"
-"aber die Eigenschaft mit dem Wert »%s« wurde lokal gelöscht."
-
-#: ../libsvn_wc/props.c:491
-#, c-format
-msgid ""
-"Trying to delete property '%s' with value '%s',\n"
-"but the local value is '%s'."
-msgstr ""
-"Versuch, die Eigenschaft »%s« mit dem Wert »%s« zu löschen,\n"
-"aber der lokale Wert ist »%s«."
-
-#: ../libsvn_wc/props.c:510
-#, c-format
-msgid ""
-"Trying to change property '%s' from '%s' to '%s',\n"
-"but property already exists with value '%s'."
-msgstr ""
-"Versuch, die Eigenschaft »%s« von »%s« in »%s« zu ändern,\n"
-"aber die Eigenschaft existiert bereits mit dem Wert »%s«."
-
-#: ../libsvn_wc/props.c:519
-#, c-format
-msgid ""
-"Trying to change property '%s' from '%s' to '%s',\n"
-"but the property has been locally changed from '%s' to '%s'."
-msgstr ""
-"Versuch, die Eigenschaft »%s« von »%s« in »%s« zu ändern,\n"
-"aber die Eigenschaft wurde lokal von »%s« in »%s« geändert."
-
-#: ../libsvn_wc/props.c:527
-#, c-format
-msgid ""
-"Trying to change property '%s' from '%s' to '%s',\n"
-"but it has been locally deleted."
+"Trying to add new property '%s'\n"
+"but the property has been locally deleted.\n"
msgstr ""
"Versuch, die Eigenschaft »%s« von »%s« in »%s« zu ändern,\n"
"aber die Eigenschaft wurde lokal gelöscht."
-#: ../libsvn_wc/props.c:533
-#, c-format
+#: ../libsvn_wc/props.c:413
+#, fuzzy, c-format
msgid ""
-"Trying to change property '%s' from '%s' to '%s',\n"
-"but property has been locally added with value '%s'."
+"Trying to delete property '%s'\n"
+"but the property has been locally added.\n"
+msgstr ""
+"Versuch, die Eigenschaft »%s« mit dem Wert »%s« zu löschen,\n"
+"aber die Eigenschaft wurde lokal mit dem Wert »%s« hinzugefügt."
+
+#: ../libsvn_wc/props.c:429
+#, fuzzy, c-format
+msgid ""
+"Trying to delete property '%s'\n"
+"but the property has been locally modified.\n"
+msgstr ""
+"Versuch, die Eigenschaft »%s« mit dem Wert »%s« zu löschen,\n"
+"aber die Eigenschaft wurde lokal mit dem Wert »%s« hinzugefügt."
+
+#: ../libsvn_wc/props.c:439
+#, fuzzy, c-format
+msgid ""
+"Trying to delete property '%s'\n"
+"but the property has been locally deleted and had a different value.\n"
+msgstr ""
+"Versuch, die Eigenschaft »%s« mit dem Wert »%s« zu löschen,\n"
+"aber die Eigenschaft wurde lokal mit dem Wert »%s« hinzugefügt."
+
+#: ../libsvn_wc/props.c:451
+#, fuzzy, c-format
+msgid ""
+"Trying to delete property '%s'\n"
+"but the local property value is different.\n"
+msgstr ""
+"Versuch, die Eigenschaft »%s« mit dem Wert »%s« zu löschen,\n"
+"aber der lokale Wert ist »%s«."
+
+#: ../libsvn_wc/props.c:470
+#, fuzzy, c-format
+msgid ""
+"Trying to change property '%s'\n"
+"but the local property value conflicts with the incoming change.\n"
+msgstr ""
+"Versuch, die Eigenschaft »%s« von »%s« in »%s« zu ändern,\n"
+"aber die Eigenschaft existiert bereits mit dem Wert »%s«."
+
+#: ../libsvn_wc/props.c:478
+#, fuzzy, c-format
+msgid ""
+"Trying to change property '%s'\n"
+"but the property has already been locally changed to a different value.\n"
+msgstr ""
+"Versuch, die Eigenschaft »%s« von »%s« in »%s« zu ändern,\n"
+"aber die Eigenschaft wurde lokal von »%s« in »%s« geändert."
+
+#: ../libsvn_wc/props.c:485
+#, fuzzy, c-format
+msgid ""
+"Trying to change property '%s'\n"
+"but the property has been locally deleted.\n"
+msgstr ""
+"Versuch, die Eigenschaft »%s« von »%s« in »%s« zu ändern,\n"
+"aber die Eigenschaft wurde lokal gelöscht."
+
+#: ../libsvn_wc/props.c:491
+#, fuzzy, c-format
+msgid ""
+"Trying to change property '%s'\n"
+"but the property has been locally added with a different value.\n"
msgstr ""
"Versuch, die Eigenschaft »%s« von »%s« in »%s« zu ändern,\n"
"aber die Eigenschaft wurde lokal mit dem Wert »%s« hinzugefügt."
-#: ../libsvn_wc/props.c:540
-#, c-format
+#: ../libsvn_wc/props.c:497
+#, fuzzy, c-format
msgid ""
-"Trying to change property '%s' from '%s' to '%s',\n"
-"but the property does not exist."
+"Trying to change property '%s'\n"
+"but the property does not exist locally.\n"
msgstr ""
"Versuch, die Eigenschaft »%s« von »%s« in »%s« zu ändern,\n"
"aber die Eigenschaft existiert nicht."
-# FIXME: duplicated message (differs only in ".")
-#: ../libsvn_wc/props.c:874
-msgid "Conflict callback violated API: returned no results."
-msgstr "Konflikt-Aktion verletzte die API: keine Ergebnisse wurden zurückgeliefert."
+#: ../libsvn_wc/props.c:601
+msgid "<<<<<<< (local property value)"
+msgstr ""
-#: ../libsvn_wc/props.c:914
-msgid "Conflict callback violated API: returned no merged file."
-msgstr "Konflikt-Aktion verletzte die API: keine zusammengeführte Datei wurde zurückgeliefert."
+#: ../libsvn_wc/props.c:602
+msgid ">>>>>>> (incoming property value)"
+msgstr ""
-#: ../libsvn_wc/props.c:1757 ../libsvn_wc/props.c:2008
+#: ../libsvn_wc/props.c:623
+#, fuzzy
+msgid "Local property value:\n"
+msgstr "Fehlerhafter Eigenschaftsname"
+
+#: ../libsvn_wc/props.c:625 ../libsvn_wc/props.c:636
+#, fuzzy
+msgid "Cannot display: property value is binary data\n"
+msgstr "Kann nicht anzeigen: Dateityp ist als binär angegeben.%s"
+
+#: ../libsvn_wc/props.c:634
+#, fuzzy
+msgid "Incoming property value:\n"
+msgstr "Falscher oder unerwarteter Eigenschaftswert"
+
+#: ../libsvn_wc/props.c:1452 ../libsvn_wc/props.c:1862
+#: ../libsvn_wc/props.c:1959
#, c-format
msgid "Property '%s' is an entry property"
msgstr "Eigenschaft »%s« ist eine Eintragseigenschaft"
-#: ../libsvn_wc/props.c:1804 ../libsvn_wc/props.c:1811
+#: ../libsvn_wc/props.c:1489 ../libsvn_wc/props.c:1496
msgid "Failed to load properties"
msgstr "Konnte Eigenschaften nicht laden"
-#: ../libsvn_wc/props.c:1853
+#: ../libsvn_wc/props.c:1532
#, c-format
msgid "Cannot set '%s' on a directory ('%s')"
msgstr "Kann »%s« nicht für ein Verzeichnis setzen (»%s«)"
-#: ../libsvn_wc/props.c:1861
+#: ../libsvn_wc/props.c:1539
#, c-format
msgid "Cannot set '%s' on a file ('%s')"
msgstr "Kann »%s« nicht für eine Datei setzen (»%s«)"
-#: ../libsvn_wc/props.c:1867
-#, c-format
-msgid "'%s' is not a file or directory"
-msgstr "»%s« ist weder eine Datei noch ein Verzeichnis"
-
-#: ../libsvn_wc/props.c:1931
+#: ../libsvn_wc/props.c:1618
#, c-format
msgid "File '%s' has binary mime type property"
msgstr "Datei »%s« hat die MIME-Typ Eigenschaft »binär«"
-#: ../libsvn_wc/props.c:2000
+#: ../libsvn_wc/props.c:1662
+msgid "Failed to load current properties"
+msgstr "Konnte aktuelle Eigenschaften nicht laden"
+
+#: ../libsvn_wc/props.c:1919
#, c-format
msgid "Can't set properties on '%s': invalid status for updating properties."
msgstr "Kann Eigenschaften für »%s« nicht setzen: ungültiger Status beim Aktualisieren von Eigenschaften"
-#: ../libsvn_wc/props.c:2063
-msgid "Failed to load current properties"
-msgstr "Konnte aktuelle Eigenschaften nicht laden"
+#: ../libsvn_wc/props.c:1964
+#, fuzzy, c-format
+msgid "Property '%s' is a WC property, not a regular property"
+msgstr "Eigenschaft »%s« ist keine reguläre Eigenschaft"
-#: ../libsvn_wc/props.c:2208
+#: ../libsvn_wc/props.c:2060
#, c-format
msgid "Unrecognized line ending style '%s' for '%s'"
msgstr "Stil für Zeilenende »%s« nicht erkannt für »%s«"
-#: ../libsvn_wc/props.c:2267
+#. scratch_
+#: ../libsvn_wc/props.c:2111
+#, c-format
+msgid " (%d more duplicate targets found)"
+msgstr ""
+
+#: ../libsvn_wc/props.c:2116
+#, fuzzy, c-format
+msgid "Invalid %s property on '%s': target '%s' appears more than once%s"
+msgstr "Ungültige Eigenschaft %s auf »%s«: Ziel »%s« ist ein absoluter Pfad oder enthält »..«"
+
+#: ../libsvn_wc/props.c:2147
#, c-format
msgid "Cannot set non-inheritable mergeinfo on a non-directory ('%s')"
msgstr "Kann nicht-vererbbare Zusammenführungsinformationen auf ein nicht-Verzeichnis (»%s«) nicht setzen"
-#: ../libsvn_wc/props.c:2488 ../libsvn_wc/props.c:2564
-#, c-format
-msgid "Error parsing %s property on '%s': '%s'"
-msgstr "Fehler beim Analysieren der %s Eigenschaft für »%s«: »%s«"
-
-#: ../libsvn_wc/props.c:2533
-#, c-format
-msgid "Can't split line into components: '%s'"
-msgstr "Zeile kann nicht in Komponenten zerlegt werden: »%s«"
-
-#: ../libsvn_wc/props.c:2589
-#, c-format
-msgid "Invalid %s property on '%s': cannot use two absolute URLs ('%s' and '%s') in an external; one must be a path where an absolute or relative URL is checked out to"
-msgstr "Ungültige Eigenschaft %s zu »%s«: Es können nicht zwei absolute URLs (»%s« und »%s«) in einem externen Verweis verwendet werden; eine muss ein Pfad sein, in den eine absolute oder relative URL ausgecheckt wird"
-
-#: ../libsvn_wc/props.c:2598 ../libsvn_wc/props.c:2606
-#, c-format
-msgid "Invalid %s property on '%s': cannot use a URL '%s' as the target directory for an external definition"
-msgstr "Ungültige Eigenschaft %s zu »%s«: Eine URL »%s« kann nicht als Zielverzeichnis für eine externe Definition verwendet werden"
-
-#: ../libsvn_wc/props.c:2643
-#, c-format
-msgid "Invalid %s property on '%s': target '%s' is an absolute path or involves '..'"
-msgstr "Ungültige Eigenschaft %s auf »%s«: Ziel »%s« ist ein absoluter Pfad oder enthält »..«"
-
-#: ../libsvn_wc/questions.c:203
-#, c-format
-msgid ""
-"Checksum mismatch indicates corrupt text base for file: '%s':\n"
-" expected: %s\n"
-" actual: %s\n"
-msgstr ""
-"Prüfsummenfehler ist Anzeichen für beschädigte Textbasis der Datei: »%s«\n"
-" Erwartet: %s\n"
-" Tatsächlich: %s\n"
-
-#: ../libsvn_wc/relocate.c:105
+#: ../libsvn_wc/relocate.c:111
#, c-format
msgid "Cannot relocate '%s' as it is not the root of a working copy"
msgstr "Kann »%s« nicht umplatzieren da es keine Basis einer Arbeitskopie ist"
-#: ../libsvn_wc/relocate.c:112
+#: ../libsvn_wc/relocate.c:118
#, c-format
msgid "Cannot relocate '%s' as it is not the root of a working copy; try relocating '%s' instead"
msgstr "Kann »%s« nicht umplatzieren da es keine Basis einer Arbeitskopie ist; Versuchen Sie stattdessen »%s« umzuplatzieren"
-#: ../libsvn_wc/relocate.c:129
+#: ../libsvn_wc/relocate.c:136
msgid "Cannot relocate a single file"
msgstr "Kann eine einzelne Datei nicht umplatzieren"
-#: ../libsvn_wc/relocate.c:136
+#: ../libsvn_wc/relocate.c:144
#, c-format
msgid "Invalid source URL prefix: '%s' (does not overlap target's URL '%s')"
msgstr "Ungültiger Prefix der Quell-URL: »%s« (Keine Überlappung mit Ziel-URL »%s«)"
-#: ../libsvn_wc/relocate.c:146 ../libsvn_wc/relocate.c:151
-#, c-format
-msgid "Invalid destination URL: '%s'"
+#: ../libsvn_wc/relocate.c:154
+#, fuzzy, c-format
+msgid "Invalid relocation destination: '%s' (not a URL)"
msgstr "Ungültige Ziel-URL: »%s«"
-#: ../libsvn_wc/tree_conflicts.c:130
+#: ../libsvn_wc/relocate.c:161
+#, c-format
+msgid "Invalid relocation destination: '%s' (does not point to target)"
+msgstr ""
+
+#: ../libsvn_wc/tree_conflicts.c:134
msgid "Unknown enumeration value in tree conflict description"
msgstr "Unbekannter Aufzählungswert in Baumkonfliktbeschreibung"
-#: ../libsvn_wc/tree_conflicts.c:152
+#: ../libsvn_wc/tree_conflicts.c:158
msgid "Invalid version info in tree conflict description"
msgstr "Ungültige Versionsinformation in Baumkonfliktbeschreibung"
-#: ../libsvn_wc/tree_conflicts.c:210
-msgid "Invalid conflict info in tree conflict description"
+#: ../libsvn_wc/tree_conflicts.c:216
+#, fuzzy, c-format
+msgid "Invalid conflict info '%s' in tree conflict description"
msgstr "Ungültige Konfliktinformation in Baumkonfliktbeschreibung«"
-#: ../libsvn_wc/tree_conflicts.c:219
+#: ../libsvn_wc/tree_conflicts.c:227
msgid "Empty 'victim' field in tree conflict description"
msgstr "Leeres Feld »victim« in Baumkonfliktbeschreibung"
-#: ../libsvn_wc/tree_conflicts.c:227
+#: ../libsvn_wc/tree_conflicts.c:235
msgid "Invalid 'node_kind' field in tree conflict description"
msgstr "Ungültiges Feld »node_kind« in Baumkonfliktbeschreibung"
-# FIXME: http://www.urbandictionary.com/define.php?term=Skel
-#: ../libsvn_wc/tree_conflicts.c:291
-msgid "Error parsing tree conflict skel"
-msgstr "Fehler beim Einlesen der Baumkonfliktvorlage"
-
-#: ../libsvn_wc/tree_conflicts.c:468
+#: ../libsvn_wc/tree_conflicts.c:422
#, c-format
msgid "Attempt to add tree conflict that already exists at '%s'"
msgstr "Es wurde versucht, einen Baumkonflikt hinzuzufügen, der in »%s« bereits vorhanden ist"
-#: ../libsvn_wc/update_editor.c:1051
+#: ../libsvn_wc/update_editor.c:1022
#, c-format
msgid ""
"Checksum mismatch while updating '%s':\n"
@@ -6877,53 +7610,28 @@
" Erwartet: %s\n"
" Tatsächlich: %s\n"
-#: ../libsvn_wc/update_editor.c:1169
-#, c-format
-msgid "Path '%s' is not in the working copy"
-msgstr "Pfad »%s« ist nicht in der Arbeitskopie enthalten"
-
-#: ../libsvn_wc/update_editor.c:2187
+#: ../libsvn_wc/update_editor.c:1897
#, c-format
msgid "Failed to add directory '%s': object of the same name as the administrative directory"
msgstr ""
"Konnte Verzeichnis »%s« nicht hinzufügen, da es denselben Namen wie das\n"
"Administrationsverzeichnis trägt"
-#: ../libsvn_wc/update_editor.c:2313
-#, c-format
-msgid "Failed to add directory '%s': a separate working copy with the same name already exists"
-msgstr "Konnte Verzeichnis »%s« nicht hinzufügen: ein andere Arbeitskopie mit gleichem Namen existiert bereits"
-
-#: ../libsvn_wc/update_editor.c:2322
-#, c-format
-msgid "Switched directory '%s' does not match expected URL '%s'"
-msgstr "Umgestelltes Vereichnis »%s« entspricht nicht der erwarteten URL »%s«"
-
-#: ../libsvn_wc/update_editor.c:2348
-#, c-format
-msgid "Failed to add directory '%s': a non-directory object of the same name already exists"
-msgstr "Konnte Verzeichnis »%s« nicht hinzufügen: ein nicht-Verzeichnisobjekt mit demselben Namen existiert bereits"
-
-#: ../libsvn_wc/update_editor.c:2811
+#: ../libsvn_wc/update_editor.c:2535
msgid "Couldn't do property merge"
msgstr "Konnte Eigenschaften nicht zusammenführen"
-#: ../libsvn_wc/update_editor.c:2990
+#: ../libsvn_wc/update_editor.c:2892
#, c-format
msgid "Failed to mark '%s' absent: item of the same name is already scheduled for addition"
msgstr "Konnte »%s« nicht als fehlend markieren: ein Eintrag mit demselben Namen wurde bereits zur Hinzufügung eingeplant"
-#: ../libsvn_wc/update_editor.c:3081
+#: ../libsvn_wc/update_editor.c:2979
#, c-format
msgid "Failed to add file '%s': object of the same name as the administrative directory"
msgstr "Konnte Datei »%s« nicht hinzufügen, da es denselben Namen wie Administrationsverzeichnis trägt"
-#: ../libsvn_wc/update_editor.c:3208
-#, c-format
-msgid "Switched file '%s' does not match expected URL '%s'"
-msgstr "Umgestellte Datei »%s« entspricht nicht der erwarteten URL »%s«"
-
-#: ../libsvn_wc/update_editor.c:3469
+#: ../libsvn_wc/update_editor.c:3434
#, c-format
msgid ""
"Checksum mismatch for '%s':\n"
@@ -6934,173 +7642,320 @@
" erwartet: %s\n"
"verzeichnet: %s\n"
-#: ../libsvn_wc/update_editor.c:4911
-#, c-format
-msgid "Unrecognized node kind: '%s'"
-msgstr "Unbekannter Knotentyp: »%s«"
-
-#: ../libsvn_wc/update_editor.c:5582
+#: ../libsvn_wc/update_editor.c:4995
#, c-format
msgid "Node '%s' exists."
msgstr "Knoten »%s« existiert bereits"
-#: ../libsvn_wc/update_editor.c:5637
+#: ../libsvn_wc/update_editor.c:5055
#, c-format
msgid "Copyfrom-url '%s' has different repository root than '%s'"
msgstr "Die Quell-URL »%s« hat eine andere Projektarchiv-Basis als »%s«"
-#: ../libsvn_wc/upgrade.c:254
+#: ../libsvn_wc/upgrade.c:258
#, c-format
msgid "Missing end of line in wcprops file for '%s'"
msgstr "Fehlendes Zeilenende in Datei »wcprops« für »%s«"
-#: ../libsvn_wc/upgrade.c:601
+#: ../libsvn_wc/upgrade.c:634
#, c-format
msgid "Working copy '%s' can't be upgraded because the repository root is not available and can't be retrieved"
msgstr "Arbeitskopie »%s« kann nicht in ein neueres Format gebracht werden, da die Wurzel des Projektarchivs nicht verfügbar ist und nicht bestimmt werden kann"
-#: ../libsvn_wc/upgrade.c:608
+#: ../libsvn_wc/upgrade.c:641
#, c-format
msgid "Working copy '%s' can't be upgraded because the repository uuid is not available and can't be retrieved"
msgstr "Arbeitskopie »%s« kann nicht in ein neueres Format gebracht werden, da die UUID des Projektarchivs nicht verfügbar ist und nicht bestimmt werden kann"
-#: ../libsvn_wc/upgrade.c:615
+#: ../libsvn_wc/upgrade.c:648
#, c-format
msgid "Working copy '%s' can't be upgraded because it doesn't have a url"
msgstr "Arbeitskopie »%s« kann nicht in ein neueres Format gebracht werden, da sie keine URL hat"
-#: ../libsvn_wc/upgrade.c:1127
-msgid "Cannot upgrade with existing logs; please run 'svn cleanup' with Subversion 1.6"
-msgstr "Kann die Arbeitskopie nicht in ein neues Format bringen; bitte führen Sie »svn cleanup« mit Subversion 1.6 aus"
+# FIXME: http://www.urbandictionary.com/define.php?term=Skel
+#: ../libsvn_wc/upgrade.c:693
+msgid "Error parsing tree conflict skel"
+msgstr "Fehler beim Einlesen der Baumkonfliktvorlage"
-#: ../libsvn_wc/upgrade.c:1355
+#: ../libsvn_wc/upgrade.c:1178
#, c-format
-msgid "The working copy '%s' is at format 18; use 'tools/dev/wc-ng/bump-to-19.py' to upgrade it"
-msgstr "Die Arbeitskopie »%s« hat das Format 18; verwenden Sie »tools/dev/wc-ng/bump-to-19.py« um es in ein neues Format zu bringen"
+msgid "The working copy at '%s' is format 22 with WORKING nodes; use a format 22 client to diff/revert before using this client"
+msgstr ""
-#: ../libsvn_wc/upgrade.c:1545
+#: ../libsvn_wc/upgrade.c:1222
#, c-format
-msgid "Cannot upgrade '%s' as it is not a pre-1.7 working copy root"
+msgid "The working copy at '%s' is format 26 with conflicts; use a format 26 client to resolve before using this client"
+msgstr ""
+
+#: ../libsvn_wc/upgrade.c:1655
+msgid "Cannot upgrade with existing logs; run a cleanup operation on this working copy using a client version which is compatible with this working copy's format (such as the version you are upgrading from), then retry the upgrade with the current version"
+msgstr ""
+
+#: ../libsvn_wc/upgrade.c:1725
+msgid "This working copy is corrupt and cannot be upgraded. Please check out a new working copy."
+msgstr ""
+
+#: ../libsvn_wc/upgrade.c:1770
+msgid "(unreleased development version)"
+msgstr ""
+
+#: ../libsvn_wc/upgrade.c:1786
+#, fuzzy, c-format
+msgid "Working copy '%s' is too old (format %d, created by Subversion %s)"
+msgstr "Format der Arbeitskopie »%s« ist zu alt (%d); Bitte führen Sie »svn upgrade« aus"
+
+#: ../libsvn_wc/upgrade.c:1796
+#, c-format
+msgid "Working copy '%s' is an old development version (format %d); to upgrade it, use a format 18 client, then use 'tools/dev/wc-ng/bump-to-19.py', then use the current client"
+msgstr ""
+
+#: ../libsvn_wc/upgrade.c:2021
+#, fuzzy, c-format
+msgid "Can't upgrade '%s' as it is not a working copy"
msgstr "Kann »%s« nicht in ein neueres Format bringen, da es keine Basis einer Arbeitskopie älter als Version 1.7 ist"
-#: ../libsvn_wc/util.c:58
-#, c-format
-msgid "'%s' is not a directory"
-msgstr "»%s« ist kein Verzeichnis"
+#: ../libsvn_wc/upgrade.c:2070
+#, fuzzy, c-format
+msgid "Can't upgrade '%s' as it is not a working copy root, the root is '%s'"
+msgstr "Kann »%s« nicht in ein neueres Format bringen, da es keine Basis einer Arbeitskopie älter als Version 1.7 ist"
-#: ../libsvn_wc/wc_db.c:511
+#: ../libsvn_wc/wc_db.c:456
#, c-format
msgid "No REPOSITORY table entry for id '%ld'"
msgstr "Kein REPOSITORY-Tabelleneintrag für ID »%ld«"
-#: ../libsvn_wc/wc_db.c:1456 ../libsvn_wc/wc_db.c:1502
-#, c-format
-msgid "The node '%s' is not in a workingcopy."
+#: ../libsvn_wc/wc_db.c:764
+#, fuzzy, c-format
+msgid "The file '%s' has no checksum."
+msgstr "Der Knoten »%s« hat einen fehlerhaften Prüfsummenwert."
+
+#: ../libsvn_wc/wc_db.c:1651
+#, fuzzy, c-format
+msgid "The node '%s' is not in a working copy."
msgstr "Der Knoten »%s« ist nicht in einer Arbeitskopie."
-#: ../libsvn_wc/wc_db.c:2019 ../libsvn_wc/wc_db.c:5288
+#: ../libsvn_wc/wc_db.c:2412 ../libsvn_wc/wc_db.c:2793
+#: ../libsvn_wc/wc_db.c:8259
#, c-format
msgid "The node '%s' has a corrupt checksum value."
msgstr "Der Knoten »%s« hat einen fehlerhaften Prüfsummenwert."
-#: ../libsvn_wc/wc_db.c:2286
+#: ../libsvn_wc/wc_db.c:2597
#, c-format
-msgid "Pristine text not found"
-msgstr "Ursprungstext nicht gefunden"
+msgid "The node '%s' has a BASE status that has no properties."
+msgstr ""
-#: ../libsvn_wc/wc_db.c:2473
-#, c-format
-msgid "The pristine text with checksum '%s' was not found"
-msgstr "Der Ursprungstext mit der Prüfsumme »%s« wurde nicht gefunden."
+#: ../libsvn_wc/wc_db.c:3417
+#, fuzzy, c-format
+msgid "The node '%s' is not an external."
+msgstr "Der Knoten »%s« ist nicht in einer Arbeitskopie."
-#: ../libsvn_wc/wc_db.c:2513
-#, c-format
-msgid "The pristine text with MD5 checksum '%s' was not found"
-msgstr "Der Ursprungstext mit der MD5-Prüfsumme »%s« wurde nicht gefunden."
+#: ../libsvn_wc/wc_db.c:5803 ../libsvn_wc/wc_db.c:5833
+#, fuzzy, c-format
+msgid "Can't revert '%s' without reverting children"
+msgstr "Kann »%s« mit dieser Tiefe nicht zurücksetzen, da dies das Zurücksetzen von »%s« erfordert."
-#: ../libsvn_wc/wc_db.c:2705
-#, c-format
-msgid "The pristine text with checksum '%s' was found in the DB or on disk but not both"
-msgstr "Der Ursprungstext mit der Prüfsumme »%s« wurde in der Datenbank oder der Festplatte gefunden, aber nicht beides."
+#: ../libsvn_wc/wc_db.c:5930
+#, fuzzy, c-format
+msgid "Can't revert '%s' without reverting parent"
+msgstr "Kann »%s« mit dieser Tiefe nicht zurücksetzen, da dies das Zurücksetzen von »%s« erfordert."
-#: ../libsvn_wc/wc_db.c:3036 ../libsvn_wc/wc_db.c:3258
-#, c-format
-msgid "Cannot copy '%s' excluded by server"
+#: ../libsvn_wc/wc_db.c:6025
+#, fuzzy, c-format
+msgid "Unsupported depth for revert of '%s'"
+msgstr "Nicht unterstützte Reporttiefe »%s«"
+
+#: ../libsvn_wc/wc_db.c:6866
+#, fuzzy, c-format
+msgid "Cannot delete '%s' as '%s' is excluded by server"
msgstr "Kann vom Server ausgeschlossenes »%s« nicht kopieren"
-#: ../libsvn_wc/wc_db.c:3042
-#, c-format
-msgid "Cannot handle status of '%s'"
-msgstr "Kann Status von »%s« nicht verarbeiten"
+#: ../libsvn_wc/wc_db.c:6877
+#, fuzzy, c-format
+msgid "Cannot delete '%s' as it is excluded by server"
+msgstr "Kann vom Server ausgeschlossenes »%s« nicht kopieren"
-#: ../libsvn_wc/wc_db.c:3885
-#, c-format
-msgid "Can't store properties for '%s' in '%s'."
-msgstr "Kann Eigenschaftswert für »%s« nicht in »%s« speichern"
+#: ../libsvn_wc/wc_db.c:6884
+#, fuzzy, c-format
+msgid "Cannot delete '%s' as it is excluded"
+msgstr "Pfad »%s« ist keine Datei"
-#: ../libsvn_wc/wc_db.c:5392
+#: ../libsvn_wc/wc_db.c:7665
#, c-format
msgid "Corrupt data for '%s'"
msgstr "Fehlerhafte Daten für »%s«"
-#: ../libsvn_wc/wc_db.c:6603
+#: ../libsvn_wc/wc_db.c:7966
#, c-format
-msgid "Could not find node '%s' for recording file information."
-msgstr "Knoten »%s« für Aufzeichnung von Dateiinformationen nicht gefunden."
+msgid "The node '%s' comes from unexpected repository '%s', expected '%s'; if this node is a file external using the correct URL in the external definition can fix the problem, see issue #4087"
+msgstr ""
-#: ../libsvn_wc/wc_db.c:6863 ../libsvn_wc/wc_db.c:6965
+#: ../libsvn_wc/wc_db.c:8385
+#, fuzzy, c-format
+msgid "The node '%s' is not in working copy '%s'"
+msgstr "Der Knoten »%s« ist nicht in einer Arbeitskopie."
+
+#: ../libsvn_wc/wc_db.c:8422
+#, fuzzy, c-format
+msgid "The node '%s' is not installable"
+msgstr "Der Knoten »%s« wurde nicht gefunden."
+
+#: ../libsvn_wc/wc_db.c:8851
+#, fuzzy, c-format
+msgid "The node '%s' has a status that has no properties."
+msgstr "Der Knoten »%s« hat einen fehlerhaften Prüfsummenwert."
+
+#: ../libsvn_wc/wc_db.c:10769
#, c-format
msgid "Expected node '%s' to be added."
msgstr "Erwartete, dass Knoten »%s« hinzugefügt wird."
-#: ../libsvn_wc/wc_db.c:7280
+#: ../libsvn_wc/wc_db.c:11115
+#, fuzzy, c-format
+msgid "The base node '%s' was not found."
+msgstr "Der Knoten »%s« wurde nicht gefunden."
+
+#: ../libsvn_wc/wc_db.c:11355
#, c-format
msgid "Expected node '%s' to be deleted."
msgstr "Erwartete, dass Knoten »%s« gelöscht wird."
-#: ../libsvn_wc/wc_db.c:7554
+#: ../libsvn_wc/wc_db.c:11690
#, c-format
msgid "The properties of '%s' are in an indeterminate state and cannot be upgraded. See issue #2530."
msgstr "Die Eigenschaften von »%s« sind in einem unbestimmten Zustand und können nicht in ein neues Format gebreacht werden. Siehe Fehlerbericht #2530."
-#: ../libsvn_wc/wc_db.c:7643
+#: ../libsvn_wc/wc_db.c:11702
+#, c-format
+msgid "Insufficient NODES rows for '%s'"
+msgstr ""
+
+#: ../libsvn_wc/wc_db.c:11849
#, c-format
msgid "Repository '%s' not found in the database"
msgstr "Projektverzeichnis »%s« nicht in der Datenbank gefunden"
-#: ../libsvn_wc/wc_db.c:8505 ../libsvn_wc/wc_db.c:8552
+#: ../libsvn_wc/wc_db.c:12758 ../libsvn_wc/wc_db.c:12806
#, c-format
msgid "'%s' is already locked."
msgstr "»%s« ist bereits gesperrt"
-#: ../libsvn_wc/wc_db.c:8509 ../libsvn_wc/wc_db.c:8560
+#: ../libsvn_wc/wc_db.c:12763 ../libsvn_wc/wc_db.c:12814
#, c-format
msgid "Working copy '%s' locked."
msgstr "Arbeitskopie »%s« gesperrt."
-#: ../libsvn_wc/wc_db.c:8639
+#: ../libsvn_wc/wc_db.c:12886
#, c-format
msgid "'%s' is already locked via '%s'."
msgstr "»%s« ist bereits durch »%s« gesperrt."
-#: ../libsvn_wc/wc_db.c:8753
+#: ../libsvn_wc/wc_db.c:13060
#, c-format
msgid "Working copy not locked at '%s'."
msgstr "Arbeitskopie »%s« ist nicht gesperrt."
-#: ../libsvn_wc/wc_db.c:9370
-#, c-format
-msgid "'%s' has no BASE_NODE"
-msgstr "»%s« hat keinen »BASE_NODE«"
+#: ../libsvn_wc/wc_db.c:13443
+#, fuzzy, c-format
+msgid "Modification of '%s' already exists"
+msgstr "Ziel »%s« existiert bereits"
-#: ../libsvn_wc/wc_db_pdh.c:234
+#. If EXPRESSION is false, cause the caller to return an SVN_ERR_WC_CORRUPT
+#. * error, showing EXPRESSION and the caller's LOCAL_RELPATH in the message.
+#: ../libsvn_wc/wc_db.c:14114
+#, c-format
+msgid "database inconsistency at local_relpath='%s' verifying expression '%s'"
+msgstr ""
+
+#: ../libsvn_wc/wc_db.c:14234
+#, fuzzy, c-format
+msgid "Can't upgrade '%s' as it is not a working copy root"
+msgstr "Kann »%s« nicht in ein neueres Format bringen, da es keine Basis einer Arbeitskopie älter als Version 1.7 ist"
+
+#: ../libsvn_wc/wc_db.c:14240
+#, c-format
+msgid "Working copy '%s' is too old and must be upgraded to at least format %d, as created by Subversion %s"
+msgstr ""
+
+#: ../libsvn_wc/wc_db_pristine.c:125
+#, c-format
+msgid "Pristine text not found"
+msgstr "Ursprungstext nicht gefunden"
+
+#: ../libsvn_wc/wc_db_pristine.c:188
+#, fuzzy, c-format
+msgid "Pristine text '%s' not present"
+msgstr "Pfad »%s« existiert nicht"
+
+#: ../libsvn_wc/wc_db_pristine.c:221
+#, c-format
+msgid "Can't read '%s' from pristine store because no checksum supplied"
+msgstr ""
+
+#: ../libsvn_wc/wc_db_pristine.c:325
+#, c-format
+msgid "New pristine text '%s' has different size: %ld versus %ld"
+msgstr ""
+
+#: ../libsvn_wc/wc_db_pristine.c:454
+#, c-format
+msgid "The pristine text with checksum '%s' was not found"
+msgstr "Der Ursprungstext mit der Prüfsumme »%s« wurde nicht gefunden."
+
+#: ../libsvn_wc/wc_db_pristine.c:493
+#, c-format
+msgid "The pristine text with MD5 checksum '%s' was not found"
+msgstr "Der Ursprungstext mit der MD5-Prüfsumme »%s« wurde nicht gefunden."
+
+#: ../libsvn_wc/wc_db_pristine.c:917
+#, fuzzy, c-format
+msgid "The pristine text with checksum '%s' was found in the DB but not on disk"
+msgstr "Der Ursprungstext mit der Prüfsumme »%s« wurde in der Datenbank oder der Festplatte gefunden, aber nicht beides."
+
+#: ../libsvn_wc/wc_db_update_move.c:933
+#, fuzzy, c-format
+msgid "'%s' is not in conflict"
+msgstr "»%s« ist keine Datei"
+
+#: ../libsvn_wc/wc_db_update_move.c:944
+#, fuzzy, c-format
+msgid "'%s' is not a tree-conflict victim"
+msgstr "»%s« ist kein relativer Pfad"
+
+#: ../libsvn_wc/wc_db_update_move.c:1236
+#, fuzzy, c-format
+msgid "Cannot auto-resolve tree-conflict on '%s'"
+msgstr "Fehler beim Aufzeichnen von Baumkonflikten in »%s«"
+
+#: ../libsvn_wc/wc_db_update_move.c:1298
+#, fuzzy, c-format
+msgid "The node '%s' has not been moved away"
+msgstr "Der Knoten »%s« kann nicht wiederhergestellt werden."
+
+#: ../libsvn_wc/wc_db_update_move.c:1324
+#, fuzzy, c-format
+msgid "'%s' is not deleted"
+msgstr "»%s« ist nicht gesperrt"
+
+# CHECKME: What's WCROOT? A variable or short for "working copy root"?
+#: ../libsvn_wc/wc_db_util.c:69
+#, c-format
+msgid "Missing a row in WCROOT."
+msgstr "Fehlende Zeile in WCROOT."
+
+#: ../libsvn_wc/wc_db_util.c:135
+#, fuzzy, c-format
+msgid "Working copy database '%s' not found"
+msgstr "Arbeitskopie »%s« ist nicht gesperrt"
+
+#: ../libsvn_wc/wc_db_wcroot.c:259
#, c-format
msgid "Working copy format of '%s' is too old (%d); please check out your working copy again"
msgstr ""
"Format der Arbeitskopie »%s« ist zu alt (%d); bitte checken Sie die\n"
"Arbeitskopie erneut aus"
-#: ../libsvn_wc/wc_db_pdh.c:244
+#: ../libsvn_wc/wc_db_wcroot.c:269
#, c-format
msgid ""
"This client is too old to work with the working copy at\n"
@@ -7113,91 +7968,144 @@
"Sie benötigen einen neueren Subversion-Client. Für mehr Details, siehe\n"
" http://subversion.apache.org/faq.html#working-copy-format-change\n"
-#: ../libsvn_wc/wc_db_pdh.c:265
+#: ../libsvn_wc/wc_db_wcroot.c:290
msgid "Cleanup with an older 1.7 client before upgrading with this client"
msgstr "Starten Sie »svn cleanup« mit einem älteren 1.7 Client bevor Sie mit diesem Client operieren"
+#: ../libsvn_wc/wc_db_wcroot.c:308
+#, c-format
+msgid ""
+"The working copy at '%s'\n"
+"is too old (format %d) to work with client version '%s' (expects format %d). You need to upgrade the working copy first.\n"
+msgstr ""
+
+#: ../libsvn_wc/wc_db_wcroot.c:386
+#, c-format
+msgid "The symlink at '%s' points nowhere"
+msgstr ""
+
# CHECKME: What's WCROOT? A variable or short for "working copy root"?
-#: ../libsvn_wc/wc_db_pdh.c:526
+#: ../libsvn_wc/wc_db_wcroot.c:658
#, c-format
msgid "Missing a row in WCROOT for '%s'."
msgstr "Fehlende Zeile in WCROOT für »%s«."
-#: ../libsvn_wc/wc_db_pdh.c:668
+#: ../libsvn_wc/wc_db_wcroot.c:706
+#, fuzzy, c-format
+msgid "The working copy at '%s' is corrupt."
+msgstr "Textbasis der Arbeitskopie ist beschädigt"
+
+#: ../libsvn_wc/wc_db_wcroot.c:722
+#, fuzzy, c-format
+msgid "The working copy database at '%s' is missing."
+msgstr "Die Arbeitskopie fehlt"
+
+#: ../libsvn_wc/wc_db_wcroot.c:731
+#, fuzzy, c-format
+msgid "The working copy database at '%s' is corrupt."
+msgstr "Textbasis der Arbeitskopie ist beschädigt"
+
+#: ../libsvn_wc/wc_db_wcroot.c:881
#, c-format
msgid "'%s' is not a working copy root"
msgstr "»%s« ist keine Basis einer Arbeitskopie"
-# CHECKME: What's WCROOT? A variable or short for "working copy root"?
-#: ../libsvn_wc/wc_db_util.c:68
+#: ../libsvn_wc/workqueue.c:524
#, c-format
-msgid "Missing a row in WCROOT."
-msgstr "Fehlende Zeile in WCROOT."
+msgid "Can't install '%s' from pristine store, because no checksum is recorded for this file"
+msgstr ""
-#: ../libsvn_wc/workqueue.c:338
-#, c-format
-msgid "Error restoring text for '%s'"
-msgstr "Fehler beim Wiederherstellen des Textes für »%s«"
-
-#: ../libsvn_wc/workqueue.c:1294
-#, c-format
-msgid "Error processing post-commit work for '%s'"
-msgstr "Fehler beim Verarbeiten der Arbeitsschritte nach Übertragung für »%s«"
-
-#: ../libsvn_wc/workqueue.c:2213
+#: ../libsvn_wc/workqueue.c:1479
#, c-format
msgid "Unrecognized work item in the queue associated with '%s'"
msgstr "Unbekannter Arbeitsschritt in Warteschlange von »%s« "
-#: ../svn/blame-cmd.c:302 ../svn/list-cmd.c:232
+#: ../svn/add-cmd.c:101
+msgid "Could not add all targets because some targets don't exist"
+msgstr ""
+
+#: ../svn/add-cmd.c:105
+msgid "Could not add all targets because some targets are already versioned"
+msgstr ""
+
+#: ../svn/blame-cmd.c:303 ../svn/list-cmd.c:300
msgid "'verbose' option invalid in XML mode"
msgstr "Option »verbose« ist im XML-Modus ungültig"
-#: ../svn/blame-cmd.c:314 ../svn/info-cmd.c:531 ../svn/list-cmd.c:244
-#: ../svn/status-cmd.c:281
+#: ../svn/blame-cmd.c:315 ../svn/info-cmd.c:640 ../svn/list-cmd.c:312
+#: ../svn/status-cmd.c:302
msgid "'incremental' option only valid in XML mode"
msgstr "Option »incremental« ist nur im XML-Modus gültig"
-#: ../svn/blame-cmd.c:377
+#: ../svn/blame-cmd.c:378
#, c-format
msgid "Skipping binary file: '%s'\n"
msgstr "Überspringe Binärdatei: »%s«\n"
-#: ../svn/changelist-cmd.c:60 ../svn/main.c:1706
-msgid "Changelist names must not be empty"
-msgstr "Namen von Änderungslisten dürfen nicht leer sein"
+#: ../svn/blame-cmd.c:412
+msgid "Could not perform blame on all targets because some targets don't exist"
+msgstr ""
-#: ../svn/checkout-cmd.c:135 ../svn/switch-cmd.c:145
+#: ../svn/cat-cmd.c:102
+msgid "Could not cat all targets because some targets don't exist"
+msgstr ""
+
+#: ../svn/cat-cmd.c:106
+msgid "Could not cat all targets because some targets are not versioned"
+msgstr ""
+
+#: ../svn/cat-cmd.c:110
+msgid "Could not cat all targets because some targets are directories"
+msgstr ""
+
+#: ../svn/changelist-cmd.c:135
+msgid "Could not set changelists on all targets because some targets don't exist"
+msgstr ""
+
+#: ../svn/changelist-cmd.c:140
+msgid "Could not set changelists on all targets because some targets are not versioned"
+msgstr ""
+
+#: ../svn/checkout-cmd.c:133 ../svn/switch-cmd.c:138
#, c-format
msgid "'%s' does not appear to be a URL"
msgstr "»%s« scheint keine URL zu sein"
-#: ../svn/commit-cmd.c:107
+#: ../svn/cleanup-cmd.c:92
#, c-format
-msgid "svn: warning: The depth of this commit is '%s', but copied directories will regardless be committed with depth '%s'. You must remove unwanted children of those directories in a separate commit.\n"
-msgstr "svn: Warnung: Die Tiefe dieser Übertragung ist »%s«, jedoch werden kopierte Verzeichnisse dennoch mit Tiefe »%s« übertragen. Sie müssen nicht gewollte Kinder dieser Verzeichnisse in einer gesonderten Übertragung entfernen.\n"
+msgid "Working copy locked; try running 'svn cleanup' on the root of the working copy ('%s') instead."
+msgstr ""
-#: ../svn/conflict-callbacks.c:158
+#: ../svn/commit-cmd.c:79
+#, c-format
+msgid "svn: The depth of this commit is '%s', but copies are always performed recursively in the repository.\n"
+msgstr ""
+
+#: ../svn/commit-cmd.c:115
+msgid "Commit targets must be local paths"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:180
msgid "||||||| ORIGINAL"
msgstr "||||||| ORIGINAL"
-#: ../svn/conflict-callbacks.c:159
+#: ../svn/conflict-callbacks.c:181
msgid "<<<<<<< MINE (select with 'mc')"
msgstr "<<<<<<< EIGENE (Auswahl mit »mc«)"
-#: ../svn/conflict-callbacks.c:160
+#: ../svn/conflict-callbacks.c:182
msgid ">>>>>>> THEIRS (select with 'tc')"
msgstr ">>>>>>> FREMDE (Auswahl mit »tc«)"
-#: ../svn/conflict-callbacks.c:192
+#: ../svn/conflict-callbacks.c:216 ../svn/file-merge.c:503
msgid "No editor found."
msgstr "Kein Editor gefunden."
-#: ../svn/conflict-callbacks.c:199
+#: ../svn/conflict-callbacks.c:225 ../svn/file-merge.c:515
msgid "Error running editor."
msgstr "Fehler beim Ausführen des Editors."
-#: ../svn/conflict-callbacks.c:209
+#: ../svn/conflict-callbacks.c:235
#, c-format
msgid ""
"Invalid option; there's no merged version to edit.\n"
@@ -7206,125 +8114,105 @@
"Ungültige Option; es gibt keine zusammengeführte Version zum Bearbeiten.\n"
"\n"
-#: ../svn/conflict-callbacks.c:239
-msgid "No merge tool found.\n"
+#: ../svn/conflict-callbacks.c:266
+#, fuzzy
+msgid "No merge tool found, try '(m) merge' instead.\n"
msgstr "Kein Programm zum Zusammenführen gefunden.\n"
-#: ../svn/conflict-callbacks.c:246
-msgid "Error running merge tool."
+#: ../svn/conflict-callbacks.c:274
+#, fuzzy
+msgid "Error running merge tool, try '(m) merge' instead."
msgstr "Fehler beim Ausführen des Zusammenführungsprogramms."
+#: ../svn/conflict-callbacks.c:301
+msgid "change merged file in an editor"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:302
+msgid "show all changes made to merged file"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:303
+msgid "accept merged version of file"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:305
+msgid "show all conflicts (ignoring merged version)"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:306
+msgid "accept my version for all conflicts (same)"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:307
+msgid "accept their version for all conflicts (same)"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:309 ../svn/conflict-callbacks.c:324
+msgid "accept my version of entire file (even non-conflicts)"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:311 ../svn/conflict-callbacks.c:326
+msgid "accept their version of entire file (same)"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:313 ../svn/conflict-callbacks.c:323
+msgid "mark the conflict to be resolved later"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:314
+msgid "use internal merge tool to resolve conflict"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:315
+msgid "launch external tool to resolve conflict"
+msgstr ""
+
#: ../svn/conflict-callbacks.c:316
-msgid "No editor found; leaving all conflicts."
-msgstr "Kein Editor gefunden; behalte alle Konflikte bei."
+msgid "show this list"
+msgstr ""
-#: ../svn/conflict-callbacks.c:325
-msgid "Error running editor; leaving all conflicts."
-msgstr "Fehler beim Ausführen des Editors; behalte alle Konflikte bei."
+#: ../svn/conflict-callbacks.c:333 ../svn/conflict-callbacks.c:343
+#, fuzzy
+msgid "resolve the conflict later"
+msgstr "Konflikt von »%s« aufgelöst\n"
-#: ../svn/conflict-callbacks.c:361
-msgid "No merge tool found; leaving all conflicts."
-msgstr "Kein Programm zum Zusammenführen gefunden; behalte alle Konflikte bei."
+#: ../svn/conflict-callbacks.c:334
+msgid "accept pre-existing item (ignore upstream addition)"
+msgstr ""
-#: ../svn/conflict-callbacks.c:370
-msgid "Error running merge tool; leaving all conflicts."
-msgstr "Fehler beim Ausführen des Zusammenführungsprogramms; behalte alle Konflikte bei."
+#: ../svn/conflict-callbacks.c:335
+msgid "accept incoming item (overwrite pre-existing item)"
+msgstr ""
+
+#: ../svn/conflict-callbacks.c:336 ../svn/conflict-callbacks.c:347
+#, fuzzy
+msgid "show this help"
+msgstr "Hilfe anzeigen"
+
+#: ../svn/conflict-callbacks.c:344
+#, fuzzy
+msgid "accept current working copy state"
+msgstr "Kann keinen Pfad einer Arbeitskopie finden"
+
+#: ../svn/conflict-callbacks.c:345
+#, fuzzy
+msgid "prefer local change"
+msgstr "Ändern einer Revisionseigenschaft"
+
+#: ../svn/conflict-callbacks.c:346
+#, fuzzy
+msgid "prefer incoming change"
+msgstr "Hole Änderungen"
# TODO: leicht inkonsistent zu obigen Strings (tritt in svn info-Ausgabe auf)
-#: ../svn/conflict-callbacks.c:414
-#, c-format
-msgid "Conflict discovered in '%s'.\n"
+#: ../svn/conflict-callbacks.c:462
+#, fuzzy, c-format
+msgid "Conflict discovered in file '%s'.\n"
msgstr "Konflikt in »%s« entdeckt.\n"
-#: ../svn/conflict-callbacks.c:419
-#, c-format
-msgid "Conflict for property '%s' discovered on '%s'.\n"
-msgstr "Konflikt für Eigenschaft »%s« für »%s« entdeckt.\n"
-
-#: ../svn/conflict-callbacks.c:436
-#, c-format
-msgid "They want to delete the property, you want to change the value to '%s'.\n"
-msgstr "Versuch, die Eigenschaft zu löschen, aber der Wert soll auf »%s« gesetzt werden.\n"
-
-#: ../svn/conflict-callbacks.c:445
-#, c-format
-msgid "They want to change the property value to '%s', you want to delete the property.\n"
-msgstr "Versuch, den Wert der Eigenschaft auf »%s« zu ändern, aber die Eigenschaft soll gelöscht werden.\n"
-
-# Once you change "Auswahl:" don't forget to adapt indentation of other strings!
-#: ../svn/conflict-callbacks.c:467
-msgid "Select: (p) postpone"
-msgstr "Auswahl: (p) zurückstellen"
-
-#: ../svn/conflict-callbacks.c:472
-msgid ", (df) diff-full, (e) edit"
-msgstr ", (df) voller Diff, (e) editieren"
-
-#: ../svn/conflict-callbacks.c:476 ../svn/conflict-callbacks.c:489
-msgid ", (r) resolved"
-msgstr ", (r) aufgelöst"
-
-#: ../svn/conflict-callbacks.c:482
-msgid ""
-",\n"
-" (mc) mine-conflict, (tc) theirs-conflict"
-msgstr ""
-",\n"
-" (mc) eigene konfliktbehaftete Datei, (tc) fremde konfliktbehaftete Datei"
-
-#: ../svn/conflict-callbacks.c:492
-msgid ""
-",\n"
-" (mf) mine-full, (tf) theirs-full"
-msgstr ""
-",\n"
-" (mf) volle eigene Datei, (tf) volle fremde Datei"
-
-#: ../svn/conflict-callbacks.c:499
-msgid "(s) show all options: "
-msgstr " (s) alle Optionen anzeigen: "
-
-# CHECKME: translate mine-conflict, ... or not (sometimes used as option!)?
-#: ../svn/conflict-callbacks.c:508
-#, c-format
-msgid ""
-"\n"
-" (e) edit - change merged file in an editor\n"
-" (df) diff-full - show all changes made to merged file\n"
-" (r) resolved - accept merged version of file\n"
-"\n"
-" (dc) display-conflict - show all conflicts (ignoring merged version)\n"
-" (mc) mine-conflict - accept my version for all conflicts (same)\n"
-" (tc) theirs-conflict - accept their version for all conflicts (same)\n"
-"\n"
-" (mf) mine-full - accept my version of entire file (even non-conflicts)\n"
-" (tf) theirs-full - accept their version of entire file (same)\n"
-"\n"
-" (p) postpone - mark the conflict to be resolved later\n"
-" (l) launch - launch external tool to resolve conflict\n"
-" (s) show all - show this list\n"
-"\n"
-msgstr ""
-"\n"
-" (e) editieren - zusammengeführte Datei in einem Editor ändern\n"
-" (df) voller Diff - alle Änderungen in der zusammengeführten Datei anzeigen\n"
-" (r) aufgelöst - akzeptieren der zusammengeführten Version der Datei\n"
-" (dc) Konflikte anzeigen - alle Konflikte anzeigen (die zusammengeführte Version\n"
-" ignorieren)\n"
-" (mc) mine-conflict - eigene Version für alle Konflikte akzeptieren (das selbe)\n"
-" (tc) theirs-conflict - fremde Version für alle Konflikte akzeptieren (das selbe)\n"
-"\n"
-" (mf) volle eigene Datei - die eigene Version der kompletten Datei akzeptieren\n"
-" (selbst Nicht-Konflikte)\n"
-" (tf) volle fremde Datei - die fremde Version der kompletten Datei akzeptieren\n"
-" (das selbe)\n"
-" (p) zurückstellen - den Konflikt erst später auflösen\n"
-" (l) starten - Starten eines externen Programms zur Konfliktauflösung\n"
-" (s) alle anzeigen - diese Liste anzeigen\n"
-"\n"
-
# CHECKME: proper English?
-#: ../svn/conflict-callbacks.c:543 ../svn/conflict-callbacks.c:567
+#: ../svn/conflict-callbacks.c:528 ../svn/conflict-callbacks.c:543
#, c-format
msgid ""
"Invalid option; cannot choose based on conflicts in a binary file.\n"
@@ -7333,17 +8221,8 @@
"Ungültige Option; Auswahl anhand von Konflikten ist in einer Binärdatei nicht möglich.\n"
"\n"
-#: ../svn/conflict-callbacks.c:551 ../svn/conflict-callbacks.c:575
-#, c-format
-msgid ""
-"Invalid option; cannot choose based on conflicts for properties.\n"
-"\n"
-msgstr ""
-"Ungültige Option; Auswahl anhand von Konflikten ist für Eigenschaften nicht möglich.\n"
-"\n"
-
# TODO: "for binary files" for consistency with "for properties"
-#: ../svn/conflict-callbacks.c:604
+#: ../svn/conflict-callbacks.c:572
#, c-format
msgid ""
"Invalid option; cannot display conflicts for a binary file.\n"
@@ -7352,16 +8231,7 @@
"Ungültige Option; Anzeige von Konflikten ist für Binärdateien nicht möglich.\n"
"\n"
-#: ../svn/conflict-callbacks.c:612
-#, c-format
-msgid ""
-"Invalid option; cannot display conflicts for properties.\n"
-"\n"
-msgstr ""
-"Ungültige Option; Anzeige von Konflikten ist für Eigenschaften nicht möglich.\n"
-"\n"
-
-#: ../svn/conflict-callbacks.c:620
+#: ../svn/conflict-callbacks.c:581
#, c-format
msgid ""
"Invalid option; original files not available.\n"
@@ -7370,7 +8240,7 @@
"Ungültige Option; Originaldateien nicht verfügbar.\n"
"\n"
-#: ../svn/conflict-callbacks.c:632
+#: ../svn/conflict-callbacks.c:593
#, c-format
msgid ""
"Invalid option; there's no merged version to diff.\n"
@@ -7379,16 +8249,17 @@
"Ungültige Option; es gibt keine zusammengeführte Version zum Vergleichen.\n"
"\n"
-#: ../svn/conflict-callbacks.c:651
-#, c-format
+#: ../svn/conflict-callbacks.c:613
+#, fuzzy, c-format
msgid ""
-"Invalid option; cannot resolve property conflicts with an external merge tool.\n"
+"Invalid option; can only resolve text conflicts with the internal merge tool.\n"
"\n"
msgstr ""
"Ungültige Option; kann Konflikte in Eigenschaften nicht mit externem Werkzeug zum Zusammenführen auflösen\n"
"\n"
-#: ../svn/conflict-callbacks.c:666 ../svn/conflict-callbacks.c:680
+#: ../svn/conflict-callbacks.c:639 ../svn/conflict-callbacks.c:652
+#: ../svn/conflict-callbacks.c:666
#, c-format
msgid ""
"Invalid option.\n"
@@ -7397,7 +8268,28 @@
"Ungültige Option.\n"
"\n"
-#: ../svn/conflict-callbacks.c:710
+#: ../svn/conflict-callbacks.c:691
+#, c-format
+msgid "Conflict for property '%s' discovered on '%s'.\n"
+msgstr "Konflikt für Eigenschaft »%s« für »%s« entdeckt.\n"
+
+#: ../svn/conflict-callbacks.c:816
+msgid "No editor found; leaving all conflicts."
+msgstr "Kein Editor gefunden; behalte alle Konflikte bei."
+
+#: ../svn/conflict-callbacks.c:825
+msgid "Error running editor; leaving all conflicts."
+msgstr "Fehler beim Ausführen des Editors; behalte alle Konflikte bei."
+
+#: ../svn/conflict-callbacks.c:861
+msgid "No merge tool found; leaving all conflicts."
+msgstr "Kein Programm zum Zusammenführen gefunden; behalte alle Konflikte bei."
+
+#: ../svn/conflict-callbacks.c:870
+msgid "Error running merge tool; leaving all conflicts."
+msgstr "Fehler beim Ausführen des Zusammenführungsprogramms; behalte alle Konflikte bei."
+
+#: ../svn/conflict-callbacks.c:931
#, c-format
msgid ""
"Conflict discovered when trying to add '%s'.\n"
@@ -7406,52 +8298,32 @@
"Beim Versuch, »%s« hinzuzufügen, wurde ein Konflikt entdeckt.\n"
"Ein Objekt mit demselben Namen existiert bereits.\n"
-# TODO: merge with other messages
-#: ../svn/conflict-callbacks.c:713
-msgid "Select: (p) postpone, (mf) mine-full, (tf) theirs-full, (h) help:"
-msgstr "Auswahl: (p) zurückstellen, (mf) volle eigene Datei, (tf) volle fremde Datei, (h) Hilfe:"
-
-#: ../svn/conflict-callbacks.c:725
-#, c-format
+#: ../svn/conflict-callbacks.c:978
+#, fuzzy, c-format
msgid ""
-" (p) postpone - resolve the conflict later\n"
-" (mf) mine-full - accept pre-existing item (ignore upstream addition)\n"
-" (tf) theirs-full - accept incoming item (overwrite pre-existing item)\n"
-" (h) help - show this help\n"
-"\n"
-msgstr ""
-" (p) zurückstellen - den Konflikt erst später auflösen\n"
-" (mf) volle eigene Datei - vorher existierende Daten akzeptieren (Hinzufügungen\n"
-" ignorieren)\n"
-" (tf) volle fremde Datei - eingehende Daten akzeptieren (überschreiben vorher\n"
-" existierender Daten)\n"
-" (h) Hilfe - diese Hilfe anzeigen\n"
-"\n"
+"Tree conflict on '%s'\n"
+" > %s\n"
+msgstr " Baumkonflikte: %u\n"
-#: ../svn/copy-cmd.c:132 ../svn/delete-cmd.c:79 ../svn/mkdir-cmd.c:66
-#: ../svn/move-cmd.c:77 ../svn/propedit-cmd.c:251
+#: ../svn/copy-cmd.c:123 ../svn/util.c:957
+#, fuzzy, c-format
+msgid "'%s': a peg revision is not allowed here"
+msgstr "Revisionsbereich nicht erlaubt"
+
+#: ../svn/copy-cmd.c:163 ../svn/delete-cmd.c:69 ../svn/mkdir-cmd.c:68
+#: ../svn/move-cmd.c:77 ../svn/propedit-cmd.c:258
msgid "Local, non-commit operations do not take a log message or revision properties"
msgstr "Lokale Operationen ohne Übertragung benötigen keine Logmeldung oder Revisionseigenschaften"
-#: ../svn/diff-cmd.c:172 ../svn/log-cmd.c:280 ../svnserve/main.c:632
-#, c-format
-msgid "Can't open stdout"
-msgstr "Kann Standardausgabe nicht öffnen"
-
-#: ../svn/diff-cmd.c:174 ../svn/log-cmd.c:282
-#, c-format
-msgid "Can't open stderr"
-msgstr "Kann Standardfehlerausgabe nicht öffnen"
-
-#: ../svn/diff-cmd.c:183
+#: ../svn/diff-cmd.c:208
msgid "'--xml' option only valid with '--summarize' option"
msgstr "Option »--xml« ist nur in Verbindung mit der Option »--summarize« zulässig"
-#: ../svn/diff-cmd.c:258
+#: ../svn/diff-cmd.c:300
msgid "'--new' option only valid with '--old' option"
msgstr "Option »--new« ist nur in Verbindung mit der Option »--old« zulässig"
-#: ../svn/diff-cmd.c:322
+#: ../svn/diff-cmd.c:353
#, c-format
msgid "Path '%s' not relative to base URLs"
msgstr "Pfad »%s« ist nicht relativ zur Basis-URL"
@@ -7460,11 +8332,76 @@
msgid "Destination directory exists; please remove the directory or use --force to overwrite"
msgstr "Zielverzeichnis existiert; bitte löschen Sie das Verzeichnis oder verwenden Sie »--force« zum Überschreiben"
-#: ../svn/export-cmd.c:118 ../svn/switch-cmd.c:179 ../svn/update-cmd.c:107
-msgid "Failure occured processing one or more externals definitions"
+#: ../svn/export-cmd.c:122 ../svn/list-cmd.c:412 ../svn/switch-cmd.c:191
+#: ../svn/update-cmd.c:173
+#, fuzzy
+msgid "Failure occurred processing one or more externals definitions"
msgstr "Kann eine oder mehrere »svn:externals«-Definitionen nicht verarbeiten"
-#: ../svn/help-cmd.c:50
+#: ../svn/file-merge.c:135 ../svn/file-merge.c:785
+#, fuzzy
+msgid "Could not write data to merged file"
+msgstr "Konnte svndiff nicht in Temporärdatei schreiben"
+
+#: ../svn/file-merge.c:491
+#, fuzzy
+msgid "Could not write data to temporary file"
+msgstr "Konnte svndiff nicht in Temporärdatei schreiben"
+
+#: ../svn/file-merge.c:600
+msgid "Conflicting section found during merge:"
+msgstr ""
+
+#: ../svn/file-merge.c:603
+#, c-format
+msgid "(1) their version (at line %lu)"
+msgstr ""
+
+#: ../svn/file-merge.c:608
+#, c-format
+msgid "(2) your version (at line %lu)"
+msgstr ""
+
+#: ../svn/file-merge.c:657
+msgid ""
+"Select: (1) use their version, (2) use your version,\n"
+" (e1) edit their version and use the result,\n"
+" (e2) edit your version and use the result,\n"
+" (eb) edit both versions and use the result,\n"
+" (p) postpone this conflicting section leaving conflict markers,\n"
+" (a) abort file merge and return to main menu: "
+msgstr ""
+
+#: ../svn/file-merge.c:859
+#, fuzzy, c-format
+msgid "Merging '%s'.\n"
+msgstr "Lese »%s«"
+
+#: ../svn/file-merge.c:909
+#, c-format
+msgid "Merge of '%s' aborted.\n"
+msgstr ""
+
+#: ../svn/file-merge.c:921
+#, fuzzy, c-format
+msgid ""
+"Could not write merged result to '%s', saved instead at '%s'.\n"
+"'%s' remains in conflict.\n"
+msgstr "Der externe Dateiverweis von »%s« kann nicht in »%s« geschrieben werden, solange »%s« in Konflikt steht"
+
+#: ../svn/file-merge.c:943
+#, fuzzy, c-format
+msgid "Merge of '%s' completed (remains in conflict).\n"
+msgstr "Übertragung abgebrochen: »%s« bleibt im Konflikt"
+
+#: ../svn/file-merge.c:949
+#, fuzzy, c-format
+msgid "Merge of '%s' completed.\n"
+msgstr ""
+"\n"
+"Aktualisierung abgeschlossen.\n"
+
+#: ../svn/help-cmd.c:52
#, c-format
msgid ""
"usage: svn <subcommand> [options] [args]\n"
@@ -7492,7 +8429,7 @@
"\n"
"Verfügbare Unterbefehle:\n"
-#: ../svn/help-cmd.c:63
+#: ../svn/help-cmd.c:65
msgid ""
"Subversion is a tool for version control.\n"
"For additional information, see http://subversion.apache.org/\n"
@@ -7500,7 +8437,7 @@
"Subversion ist ein Programm zur Versionskontrolle.\n"
"Für weitere Informationen, siehe: http://subversion.apache.org/\n"
-#: ../svn/help-cmd.c:70 ../svnrdump/svnrdump.c:349 ../svnsync/main.c:1762
+#: ../svn/help-cmd.c:72 ../svnrdump/svnrdump.c:661 ../svnsync/svnsync.c:1861
msgid ""
"The following repository access (RA) modules are available:\n"
"\n"
@@ -7508,6 +8445,12 @@
"Die folgenden ZugriffsModule (ZM) für Projektarchive stehen zur Verfügung:\n"
"\n"
+#: ../svn/help-cmd.c:128
+msgid ""
+"WARNING: Plaintext password storage is enabled!\n"
+"\n"
+msgstr ""
+
#: ../svn/import-cmd.c:87
msgid "Repository URL required when importing"
msgstr "Projektarchiv URL ist beim Import erforderlich"
@@ -7516,7 +8459,7 @@
msgid "Too many arguments to import command"
msgstr "Zu viele Parameter für Import Befehl"
-#: ../svn/import-cmd.c:111
+#: ../svn/import-cmd.c:107
#, c-format
msgid "Invalid URL '%s'"
msgstr "Ungültige URL »%s«"
@@ -7526,175 +8469,207 @@
msgid "Resource is not under version control."
msgstr "Ressource ist nicht unter Versionskontrolle."
-#: ../svn/info-cmd.c:255 ../svnadmin/main.c:1394
+#: ../svn/info-cmd.c:306 ../svnadmin/svnadmin.c:1665
#, c-format
msgid "Path: %s\n"
msgstr "Pfad: %s\n"
-#: ../svn/info-cmd.c:261
+#: ../svn/info-cmd.c:313
#, c-format
msgid "Name: %s\n"
msgstr "Name: %s\n"
-#: ../svn/info-cmd.c:265
+#: ../svn/info-cmd.c:317
#, c-format
msgid "Working Copy Root Path: %s\n"
msgstr "Wurzelpfad der Arbeitskopie: %s\n"
-#: ../svn/info-cmd.c:270
+#: ../svn/info-cmd.c:323
#, c-format
msgid "URL: %s\n"
msgstr "URL: %s\n"
-#: ../svn/info-cmd.c:273
+#: ../svn/info-cmd.c:326
+#, fuzzy, c-format
+msgid "Relative URL: ^/%s\n"
+msgstr "Fehlerhafte relative URL »%s«"
+
+#: ../svn/info-cmd.c:333
#, c-format
msgid "Repository Root: %s\n"
msgstr "Basis des Projektarchivs: %s\n"
-#: ../svn/info-cmd.c:277
+#: ../svn/info-cmd.c:337
#, c-format
msgid "Repository UUID: %s\n"
msgstr "UUID des Projektarchivs: %s\n"
-#: ../svn/info-cmd.c:281
+#: ../svn/info-cmd.c:341
#, c-format
msgid "Revision: %ld\n"
msgstr "Revision: %ld\n"
-#: ../svn/info-cmd.c:286
+#: ../svn/info-cmd.c:346
#, c-format
msgid "Node Kind: file\n"
msgstr "Knotentyp: Datei\n"
-#: ../svn/info-cmd.c:290
+#: ../svn/info-cmd.c:350
#, c-format
msgid "Node Kind: directory\n"
msgstr "Knotentyp: Verzeichnis\n"
-#: ../svn/info-cmd.c:294
+#: ../svn/info-cmd.c:354
#, c-format
msgid "Node Kind: none\n"
msgstr "Knotentyp: keiner\n"
-#: ../svn/info-cmd.c:299
+#: ../svn/info-cmd.c:359
#, c-format
msgid "Node Kind: unknown\n"
msgstr "Knotentyp: unbekannt\n"
-#: ../svn/info-cmd.c:308
+#: ../svn/info-cmd.c:368
#, c-format
msgid "Schedule: normal\n"
msgstr "Plan: normal\n"
-#: ../svn/info-cmd.c:312
+#: ../svn/info-cmd.c:372
#, c-format
msgid "Schedule: add\n"
msgstr "Plan: hinzufügen\n"
-#: ../svn/info-cmd.c:316
+#: ../svn/info-cmd.c:376
#, c-format
msgid "Schedule: delete\n"
msgstr "Plan: löschen\n"
-#: ../svn/info-cmd.c:320
+#: ../svn/info-cmd.c:380
#, c-format
msgid "Schedule: replace\n"
msgstr "Plan: ersetzen\n"
-#: ../svn/info-cmd.c:336
+#: ../svn/info-cmd.c:396
#, c-format
msgid "Depth: empty\n"
msgstr "Tiefe: leer\n"
-#: ../svn/info-cmd.c:340
+#: ../svn/info-cmd.c:400
#, c-format
msgid "Depth: files\n"
msgstr "Tiefe: Dateien\n"
-#: ../svn/info-cmd.c:344
+#: ../svn/info-cmd.c:404
#, c-format
msgid "Depth: immediates\n"
msgstr "Tiefe: immediates\n"
+#: ../svn/info-cmd.c:408
+#, fuzzy, c-format
+msgid "Depth: exclude\n"
+msgstr "Tiefe: Dateien\n"
+
#. Other depths should never happen here.
-#: ../svn/info-cmd.c:355
+#: ../svn/info-cmd.c:419
#, c-format
msgid "Depth: INVALID\n"
msgstr "Tiefe: UNGÜLTIG\n"
-#: ../svn/info-cmd.c:359
+#: ../svn/info-cmd.c:423
#, c-format
msgid "Copied From URL: %s\n"
msgstr "Kopiert von URL: %s\n"
-#: ../svn/info-cmd.c:363
+#: ../svn/info-cmd.c:427
#, c-format
msgid "Copied From Rev: %ld\n"
msgstr "Kopiert von Rev: %ld\n"
-#: ../svn/info-cmd.c:368
+#: ../svn/info-cmd.c:436 ../svn/info-cmd.c:438
+#, fuzzy, c-format
+msgid "Moved From: %s\n"
+msgstr "Kopiert von URL: %s\n"
+
+#: ../svn/info-cmd.c:449 ../svn/info-cmd.c:451
+#, fuzzy, c-format
+msgid "Moved To: %s\n"
+msgstr "Modifiziert: %s\n"
+
+#: ../svn/info-cmd.c:457
#, c-format
msgid "Last Changed Author: %s\n"
msgstr "Letzter Autor: %s\n"
-#: ../svn/info-cmd.c:372
+#: ../svn/info-cmd.c:461
#, c-format
msgid "Last Changed Rev: %ld\n"
msgstr "Letzte geänderte Rev: %ld\n"
-#: ../svn/info-cmd.c:377
+#: ../svn/info-cmd.c:466
msgid "Last Changed Date"
msgstr "Letztes Änderungsdatum"
-#: ../svn/info-cmd.c:383
+#: ../svn/info-cmd.c:472
msgid "Text Last Updated"
msgstr "Text zuletzt geändert"
-#: ../svn/info-cmd.c:386
+#: ../svn/info-cmd.c:475
#, c-format
msgid "Checksum: %s\n"
msgstr "Prüfsumme: %s\n"
-#: ../svn/info-cmd.c:391
+#: ../svn/info-cmd.c:497
#, c-format
msgid "Conflict Previous Base File: %s\n"
msgstr "Konflikt: vorherige Ausgangsdatei: %s\n"
-#: ../svn/info-cmd.c:397
+#: ../svn/info-cmd.c:504
#, c-format
msgid "Conflict Previous Working File: %s\n"
msgstr "Konflikt: vorherige Arbeitsdatei: %s\n"
-#: ../svn/info-cmd.c:402
+#: ../svn/info-cmd.c:511
#, c-format
msgid "Conflict Current Base File: %s\n"
msgstr "Konflikt: aktuelle Ausgangsdatei: %s\n"
# TODO: leicht inkonsistent zu obigen Strings (tritt in svn info-Ausgabe auf)
-#: ../svn/info-cmd.c:407
+#: ../svn/info-cmd.c:519
#, c-format
msgid "Conflict Properties File: %s\n"
msgstr "Konfliktdatei mit Eigenschaften: %s\n"
-#: ../svn/info-cmd.c:415
+#: ../svn/info-cmd.c:538
+msgid "Tree conflict"
+msgstr "Baumkonflikt"
+
+#: ../svn/info-cmd.c:542
+msgid "Source left"
+msgstr "Quelle links"
+
+#: ../svn/info-cmd.c:551
+msgid "Source right"
+msgstr "Quelle rechts"
+
+#: ../svn/info-cmd.c:562
#, c-format
msgid "Lock Token: %s\n"
msgstr "Sperrmarke: %s\n"
-#: ../svn/info-cmd.c:419
+#: ../svn/info-cmd.c:566
#, c-format
msgid "Lock Owner: %s\n"
msgstr "Sperreigner: %s\n"
-#: ../svn/info-cmd.c:424
+#: ../svn/info-cmd.c:571
msgid "Lock Created"
msgstr "Sperre erzeugt"
-#: ../svn/info-cmd.c:428
+#: ../svn/info-cmd.c:575
msgid "Lock Expires"
msgstr "Sperre läuft ab"
-#: ../svn/info-cmd.c:436
+#: ../svn/info-cmd.c:583
#, c-format
msgid ""
"Lock Comment (%i line):\n"
@@ -7709,448 +8684,1319 @@
"Sperrkommentar (%i Zeilen):\n"
"%s\n"
-#: ../svn/info-cmd.c:445
+#: ../svn/info-cmd.c:592
#, c-format
msgid "Changelist: %s\n"
msgstr "Änderungsliste: %s\n"
-#: ../svn/info-cmd.c:467
-msgid "Tree conflict"
-msgstr "Baumkonflikt"
-
-#: ../svn/info-cmd.c:473
-msgid "Source left"
-msgstr "Quelle links"
-
-#: ../svn/info-cmd.c:482
-msgid "Source right"
-msgstr "Quelle rechts"
-
-#: ../svn/info-cmd.c:580
-#, c-format
-msgid ""
-"%s: (Not a versioned resource)\n"
-"\n"
+#: ../svn/info-cmd.c:706
+msgid "Could not display info for all targets because some targets don't exist"
msgstr ""
-"%s: (Keine versionierte Ressource)\n"
-"\n"
-#: ../svn/info-cmd.c:589
-#, c-format
-msgid ""
-"%s: (Not a valid URL)\n"
-"\n"
-msgstr ""
-"%s: (Keine gültige URL)\n"
-"\n"
-
-#: ../svn/list-cmd.c:92
+#: ../svn/list-cmd.c:73
msgid "%b %d %H:%M"
msgstr "%d. %b %H:%M"
-#: ../svn/list-cmd.c:97
+#: ../svn/list-cmd.c:75
msgid "%b %d %Y"
msgstr "%d. %b %Y"
+# Currently this is used for checkouts and switches too. If we
+# want different output, we'll have to add new actions.
+#: ../svn/list-cmd.c:101
+#, fuzzy, c-format
+msgid "Listing external '%s' defined on '%s':\n"
+msgstr ""
+"\n"
+"Hole externen Verweis nach »%s«\n"
+
+#: ../svn/list-cmd.c:421
+msgid "Could not list all targets because some targets don't exist"
+msgstr ""
+
#: ../svn/lock-cmd.c:58
msgid "Lock comment contains a zero byte"
msgstr "Sperrkommentar enthält ein Null-Byte"
-#: ../svn/log-cmd.c:184
+#: ../svn/log-cmd.c:143
+msgid "\n"
+msgstr "\n"
+
+#: ../svn/log-cmd.c:353
msgid "(no author)"
msgstr "(kein Autor)"
-#: ../svn/log-cmd.c:190
+#: ../svn/log-cmd.c:359
msgid "(no date)"
msgstr "(kein Datum)"
-#: ../svn/log-cmd.c:205
+#: ../svn/log-cmd.c:384
#, c-format
msgid " | %d line"
msgid_plural " | %d lines"
msgstr[0] " | %d Zeile"
msgstr[1] " | %d Zeilen"
-#: ../svn/log-cmd.c:221
+#: ../svn/log-cmd.c:400
#, c-format
msgid "Changed paths:\n"
msgstr "Geänderte Pfade:\n"
-#: ../svn/log-cmd.c:236
+#: ../svn/log-cmd.c:417
#, c-format
msgid " (from %s:%ld)"
msgstr " (von %s:%ld)"
-#. Print the result of merge line
-#: ../svn/log-cmd.c:251
+#: ../svn/log-cmd.c:433
+#, fuzzy, c-format
+msgid "Reverse merged via:"
+msgstr " Rückgängiges Zusammenführen: %s:r%s%s"
+
+#: ../svn/log-cmd.c:435
#, c-format
msgid "Merged via:"
msgstr "Zusammengeführt mittels:"
-#: ../svn/log-cmd.c:296 ../svn/log-cmd.c:373
-#, c-format
-msgid "\n"
-msgstr "\n"
-
-#: ../svn/log-cmd.c:573
+#: ../svn/log-cmd.c:688
msgid "'with-all-revprops' option only valid in XML mode"
msgstr "Option »with-all-revprops« ist nur im XML-Modus gültig"
-#: ../svn/log-cmd.c:577
+#: ../svn/log-cmd.c:692
msgid "'with-no-revprops' option only valid in XML mode"
msgstr "Option »with-no-revprops« ist nur im XML-Modus gültig"
# TODO: combine
# CHECKME: s/with-revprop/with-revprops/ ???
-#: ../svn/log-cmd.c:581
+#: ../svn/log-cmd.c:696
msgid "'with-revprop' option only valid in XML mode"
msgstr "Option »with-revprop« ist nur im XML-Modus gültig"
-#: ../svn/log-cmd.c:588
+#: ../svn/log-cmd.c:703
msgid "'diff' option is not supported in XML mode"
msgstr "Option »diff« wird im XML-Modus nicht unterstützt"
-#: ../svn/log-cmd.c:594
+#: ../svn/log-cmd.c:709
msgid "'quiet' and 'diff' options are mutually exclusive"
msgstr "»quiet« und »diff« schließen sich gegenseitig aus"
-#: ../svn/log-cmd.c:598
+#: ../svn/log-cmd.c:713
msgid "'diff-cmd' option requires 'diff' option"
msgstr "Option »diff-cmd« erfordert Option »diff«"
-#: ../svn/log-cmd.c:602
+#: ../svn/log-cmd.c:717
msgid "'internal-diff' option requires 'diff' option"
msgstr "Option »internal-diff« erfordert Option »diff«"
-#: ../svn/log-cmd.c:606
+#: ../svn/log-cmd.c:721
msgid "'extensions' option requires 'diff' option"
msgstr "Option »extensions« erfordert Option »diff«"
+#: ../svn/log-cmd.c:726
+#, fuzzy
+msgid "'depth' option requires 'diff' option"
+msgstr "Option »extensions« erfordert Option »diff«"
+
# TODO: Duplicated message!!!!
-#: ../svn/log-cmd.c:625
+#: ../svn/log-cmd.c:742
msgid "-c and -r are mutually exclusive"
msgstr "-c und -r schließen einander aus"
-#: ../svn/log-cmd.c:652
+#: ../svn/log-cmd.c:774
#, c-format
msgid "Only relative paths can be specified after a URL for 'svn log', but '%s' is not a relative path"
msgstr "Mit »svn log« können nach einer URL nur relative Pfade angegeben werden, »%s« ist aber kein relativer Pfad"
-#: ../svn/log-cmd.c:697
+#: ../svn/log-cmd.c:820
#, c-format
msgid "cannot assign with 'with-revprop' option (drop the '=')"
msgstr "Kann nicht mit Option »with-revprop« zuweisen (»=« entfernen)"
-#: ../svn/main.c:136
+#: ../svn/merge-cmd.c:63 ../svn/merge-cmd.c:144 ../svn/merge-cmd.c:519
+#, c-format
+msgid "checking branch relationship...\n"
+msgstr ""
+
+#: ../svn/merge-cmd.c:67 ../svn/merge-cmd.c:148 ../svn/merge-cmd.c:523
+#: ../svn/mergeinfo-cmd.c:313
+msgid "Source and target must be different but related branches"
+msgstr ""
+
+#: ../svn/merge-cmd.c:70
+#, c-format
+msgid "calculating reintegrate merge...\n"
+msgstr ""
+
+#: ../svn/merge-cmd.c:88 ../svn/merge-cmd.c:188 ../svn/merge-cmd.c:527
+#: ../svn/merge-cmd.c:550
+#, c-format
+msgid "merging...\n"
+msgstr ""
+
+#: ../svn/merge-cmd.c:151
+#, c-format
+msgid "calculating automatic merge...\n"
+msgstr ""
+
+#: ../svn/merge-cmd.c:164
+msgid "The required merge is reintegrate-like, and the --record-only option cannot be used with this kind of merge"
+msgstr ""
+
+#: ../svn/merge-cmd.c:170
+msgid "The required merge is reintegrate-like, and the --depth option cannot be used with this kind of merge"
+msgstr ""
+
+#: ../svn/merge-cmd.c:176
+msgid "The required merge is reintegrate-like, and the --force option cannot be used with this kind of merge"
+msgstr ""
+
+#: ../svn/merge-cmd.c:182
+msgid "The required merge is reintegrate-like, and the --allow-mixed-revisions option cannot be used with this kind of merge"
+msgstr ""
+
+#: ../svn/merge-cmd.c:222
+msgid "-r and -c can't be used with --reintegrate"
+msgstr "-r und -c können nicht mit --reintegrate verwendet werden"
+
+#: ../svn/merge-cmd.c:277
+msgid "Merge source required"
+msgstr "Die Zusammenführungsquelle muss angegeben werden"
+
+#: ../svn/merge-cmd.c:323
+msgid "Second revision required"
+msgstr "Eine zweite Revision muss angegeben werden"
+
+#: ../svn/merge-cmd.c:332 ../svn/merge-cmd.c:358 ../svn/mergeinfo-cmd.c:277
+#: ../svnadmin/svnadmin.c:1640 ../svnlook/svnlook.c:2038
+#: ../svnlook/svnlook.c:2231 ../svnlook/svnlook.c:2335
+#: ../svnlook/svnlook.c:2370
+msgid "Too many arguments given"
+msgstr "Zu viele Parameter angegeben"
+
+#: ../svn/merge-cmd.c:348
+msgid "Cannot specify a revision range with two URLs"
+msgstr "Die Angabe eines Revisionsbereichs mit zwei URLs ist nicht möglich"
+
+#: ../svn/merge-cmd.c:447
+msgid "--reintegrate cannot be used with --ignore-ancestry"
+msgstr "--reintegrate kann nicht mit --ignore-ancestry verwendet werden"
+
+#: ../svn/merge-cmd.c:452
+msgid "--reintegrate cannot be used with --record-only"
+msgstr "--reintegrate kann nicht mit --record-only verwendet werden"
+
+#: ../svn/merge-cmd.c:457
+msgid "--depth cannot be used with --reintegrate"
+msgstr "--depth kann nicht mit --reintegrate verwendet werden"
+
+# TODO: merge messages!!!
+#: ../svn/merge-cmd.c:462
+msgid "--force cannot be used with --reintegrate"
+msgstr "--force kann nicht mit --reintegrate verwendet werden"
+
+#: ../svn/merge-cmd.c:467
+msgid "--reintegrate can only be used with a single merge source"
+msgstr "--reintegrate kann nur mit einer einzelnen Zusammenführungsquelle verwendet werden"
+
+# TODO: merge messages!!!
+#: ../svn/merge-cmd.c:471
+msgid "--allow-mixed-revisions cannot be used with --reintegrate"
+msgstr "--allow-mixed-revisions kann nicht mit --reintegrate verwendet werden"
+
+#: ../svn/merge-cmd.c:583
+msgid ""
+"Merge tracking not possible, use --ignore-ancestry or\n"
+"fix invalid mergeinfo in target with 'svn propset'"
+msgstr ""
+
+#: ../svn/mergeinfo-cmd.c:166
+msgid ""
+" youngest last repos.\n"
+" common full tip of path of\n"
+" ancestor merge branch branch\n"
+"\n"
+msgstr ""
+
+#: ../svn/mergeinfo-cmd.c:274
+msgid "Not enough arguments given"
+msgstr "Nicht genügend Parameter angegeben"
+
+#: ../svn/mkdir-cmd.c:92
+msgid "Try 'svn add' or 'svn add --non-recursive' instead?"
+msgstr "Versuchen Sie »svn add« oder »svn add --non-recursive«."
+
+#: ../svn/mkdir-cmd.c:98
+msgid "Try 'svn mkdir --parents' instead?"
+msgstr "Versuchen Sie »svn mkdir --parents« stattdessen?"
+
+#: ../svn/notify.c:83 ../svn/status-cmd.c:89
+msgid "Summary of conflicts:\n"
+msgstr "Konfliktübersicht:\n"
+
+#: ../svn/notify.c:87 ../svn/status-cmd.c:93
+#, c-format
+msgid " Text conflicts: %u\n"
+msgstr " Textkonflikte: %u\n"
+
+#: ../svn/notify.c:91 ../svn/status-cmd.c:97
+#, c-format
+msgid " Property conflicts: %u\n"
+msgstr " Eigenschaftskonflikte: %u\n"
+
+#: ../svn/notify.c:95 ../svn/status-cmd.c:101
+#, c-format
+msgid " Tree conflicts: %u\n"
+msgstr " Baumkonflikte: %u\n"
+
+#: ../svn/notify.c:99
+#, c-format
+msgid " Skipped paths: %u\n"
+msgstr " Übersprungene Pfade: %u\n"
+
+#: ../svn/notify.c:133
+#, c-format
+msgid "Skipped missing target: '%s'\n"
+msgstr "Fehlendes Ziel: »%s« übersprungen\n"
+
+#: ../svn/notify.c:140
+#, c-format
+msgid "Skipped target: '%s' -- copy-source is missing\n"
+msgstr "Ziel: »%s« übersprungen -- copy-source fehlt\n"
+
+#: ../svn/notify.c:147
+#, c-format
+msgid "Skipped '%s'\n"
+msgstr "Überspringe »%s«\n"
+
+#: ../svn/notify.c:154
+#, c-format
+msgid "Skipped '%s' -- An obstructing working copy was found\n"
+msgstr ""
+
+#: ../svn/notify.c:161
+#, fuzzy, c-format
+msgid "Skipped '%s' -- Has no versioned parent\n"
+msgstr "Knoten »%s« hat keinen Ursprungstext"
+
+#: ../svn/notify.c:168
+#, fuzzy, c-format
+msgid "Skipped '%s' -- Access denied\n"
+msgstr "Überspringe »%s«\n"
+
+#: ../svn/notify.c:175
+#, fuzzy, c-format
+msgid "Skipped '%s' -- Node remains in conflict\n"
+msgstr "Übertragung abgebrochen: »%s« bleibt im Konflikt"
+
+#: ../svn/notify.c:256
+#, c-format
+msgid "Restored '%s'\n"
+msgstr "Wieder hergestellt »%s«\n"
+
+#: ../svn/notify.c:262
+#, c-format
+msgid "Reverted '%s'\n"
+msgstr "Rückgängig gemacht: »%s«\n"
+
+#: ../svn/notify.c:268
+#, c-format
+msgid "Failed to revert '%s' -- try updating instead.\n"
+msgstr "Wiederherstellen von »%s« schlug fehl -- Versuchen Sie statt dessen zu aktualisieren.\n"
+
+#: ../svn/notify.c:276
+#, c-format
+msgid "Resolved conflicted state of '%s'\n"
+msgstr "Konflikt von »%s« aufgelöst\n"
+
+#: ../svn/notify.c:365 ../svn/notify.c:405
+#, c-format
+msgid "> applied hunk ## -%lu,%lu +%lu,%lu ## with offset %s"
+msgstr "> Abschnitt ## -%lu,%lu +%lu,%lu ## mit Versatz %s angewandt"
+
+#: ../svn/notify.c:382 ../svn/notify.c:419
+#, c-format
+msgid "> applied hunk @@ -%lu,%lu +%lu,%lu @@ with offset %s"
+msgstr "> Abschnitt @@ -%lu,%lu +%lu,%lu @@ mit Versatz %s angewandt"
+
+#: ../svn/notify.c:440
+#, fuzzy, c-format
+msgid "> applied hunk ## -%lu,%lu +%lu,%lu ## with fuzz %lu (%s)\n"
+msgstr "> Abschnitt ## -%lu,%lu +%lu,%lu ## mit Unschärfe %d (%s) angewandt\n"
+
+#: ../svn/notify.c:450
+#, fuzzy, c-format
+msgid "> applied hunk @@ -%lu,%lu +%lu,%lu @@ with fuzz %lu\n"
+msgstr "> Abschnitt @@ -%lu,%lu +%lu,%lu @@ mit Unschärfe %d angewandt\n"
+
+#: ../svn/notify.c:468
+#, c-format
+msgid "> rejected hunk ## -%lu,%lu +%lu,%lu ## (%s)\n"
+msgstr "> Abschnitt ## -%lu,%lu +%lu,%lu ## (%s) zurückgewiesen\n"
+
+#: ../svn/notify.c:477
+#, c-format
+msgid "> rejected hunk @@ -%lu,%lu +%lu,%lu @@\n"
+msgstr "> Abschnitt @@ -%lu,%lu +%lu,%lu @@ zurückgewiesen\n"
+
+#: ../svn/notify.c:491
+#, c-format
+msgid "> hunk ## -%lu,%lu +%lu,%lu ## already applied (%s)\n"
+msgstr "> Abschnitt ## -%lu,%lu +%lu,%lu ## bereits angewandt (%s)\n"
+
+#: ../svn/notify.c:501
+#, c-format
+msgid "> hunk @@ -%lu,%lu +%lu,%lu @@ already applied\n"
+msgstr "> Abschnitt @@ -%lu,%lu +%lu,%lu @@ bereits angewandt\n"
+
+# Currently this is used for checkouts and switches too. If we
+# want different output, we'll have to add new actions.
+#: ../svn/notify.c:561
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Fetching external item into '%s':\n"
+msgstr ""
+"\n"
+"Hole externen Verweis nach »%s«\n"
+
+#: ../svn/notify.c:587
+#, c-format
+msgid "Error handling externals definition for '%s':"
+msgstr "Fehler beim Umgang mit der Definition des externen Verweises für »%s«:"
+
+#: ../svn/notify.c:600
+#, fuzzy, c-format
+msgid "Updating '%s':\n"
+msgstr "Lese »%s«"
+
+#: ../svn/notify.c:614
+#, c-format
+msgid "Exported external at revision %ld.\n"
+msgstr "Externer Verweis exportiert, Revision %ld.\n"
+
+#: ../svn/notify.c:615
+#, c-format
+msgid "Exported revision %ld.\n"
+msgstr "Exportiert, Revision %ld.\n"
+
+#: ../svn/notify.c:623
+#, c-format
+msgid "Checked out external at revision %ld.\n"
+msgstr "Externer Verweis ausgecheckt, Revision %ld.\n"
+
+#: ../svn/notify.c:624
+#, c-format
+msgid "Checked out revision %ld.\n"
+msgstr "Ausgecheckt, Revision %ld.\n"
+
+#: ../svn/notify.c:635
+#, c-format
+msgid "Updated external to revision %ld.\n"
+msgstr "Externer Verweis aktualisiert zu Revision %ld.\n"
+
+#: ../svn/notify.c:636
+#, c-format
+msgid "Updated to revision %ld.\n"
+msgstr "Aktualisiert zu Revision %ld.\n"
+
+#: ../svn/notify.c:644
+#, c-format
+msgid "External at revision %ld.\n"
+msgstr "Externer Verweis, Revision %ld.\n"
+
+#: ../svn/notify.c:645
+#, c-format
+msgid "At revision %ld.\n"
+msgstr "Revision %ld.\n"
+
+#: ../svn/notify.c:657
+#, c-format
+msgid "External export complete.\n"
+msgstr "Export des externen Verweises abgeschlossen.\n"
+
+#: ../svn/notify.c:658
+#, c-format
+msgid "Export complete.\n"
+msgstr "Export abgeschlossen.\n"
+
+#: ../svn/notify.c:665
+#, c-format
+msgid "External checkout complete.\n"
+msgstr "Auschecken des externen Verweises abgeschlossen.\n"
+
+#: ../svn/notify.c:666
+#, c-format
+msgid "Checkout complete.\n"
+msgstr "Auschecken abgeschlossen.\n"
+
+#: ../svn/notify.c:673
+#, c-format
+msgid "External update complete.\n"
+msgstr "Aktualisierung des externen Verweises abgeschlossen.\n"
+
+#: ../svn/notify.c:674
+#, c-format
+msgid "Update complete.\n"
+msgstr "Aktualisierung abgeschlossen.\n"
+
+#: ../svn/notify.c:690
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Performing status on external item at '%s':\n"
+msgstr ""
+"\n"
+"Hole Status des externen Verweises in »%s«\n"
+
+#: ../svn/notify.c:698
+#, c-format
+msgid "Status against revision: %6ld\n"
+msgstr "Status bezogen auf Revision: %6ld\n"
+
+#: ../svn/notify.c:707
+#, fuzzy, c-format
+msgid "Sending copy of %s\n"
+msgstr "Sende %s\n"
+
+#: ../svn/notify.c:708
+#, c-format
+msgid "Sending %s\n"
+msgstr "Sende %s\n"
+
+# CHECKME: Warum wird "Hinzuf." nicht ausgeschrieben? (Einfach 1. Spalte verbreitern)
+#: ../svn/notify.c:719
+#, fuzzy, c-format
+msgid "Adding copy of (bin) %s\n"
+msgstr "Hinzuf. (bin) %s\n"
+
+# CHECKME: Warum wird "Hinzuf." nicht ausgeschrieben? (Einfach 1. Spalte verbreitern)
+#: ../svn/notify.c:720
+#, c-format
+msgid "Adding (bin) %s\n"
+msgstr "Hinzuf. (bin) %s\n"
+
+#: ../svn/notify.c:728
+#, fuzzy, c-format
+msgid "Adding copy of %s\n"
+msgstr "Hinzufügen %s\n"
+
+#: ../svn/notify.c:729
+#, c-format
+msgid "Adding %s\n"
+msgstr "Hinzufügen %s\n"
+
+#: ../svn/notify.c:738
+#, fuzzy, c-format
+msgid "Deleting copy of %s\n"
+msgstr "Lösche %s\n"
+
+#: ../svn/notify.c:739
+#, c-format
+msgid "Deleting %s\n"
+msgstr "Lösche %s\n"
+
+#: ../svn/notify.c:748
+#, fuzzy, c-format
+msgid "Replacing copy of %s\n"
+msgstr "Ersetze %s\n"
+
+#: ../svn/notify.c:749
+#, c-format
+msgid "Replacing %s\n"
+msgstr "Ersetze %s\n"
+
+#: ../svn/notify.c:759 ../svnsync/sync.c:326
+#, c-format
+msgid "Transmitting file data "
+msgstr "Übertrage Daten "
+
+#: ../svn/notify.c:768 ../svnadmin/svnadmin.c:1619
+#, c-format
+msgid "'%s' locked by user '%s'.\n"
+msgstr "»%s« gesperrt durch »%s«.\n"
+
+#: ../svn/notify.c:774
+#, c-format
+msgid "'%s' unlocked.\n"
+msgstr "»%s« freigegeben.\n"
+
+#: ../svn/notify.c:801
+#, c-format
+msgid "--- Merging differences between repository URLs into '%s':\n"
+msgstr "-- Zusammenführen der Unterschiede zwischen Projektarchiv-URLs in »%s«:\n"
+
+#: ../svn/notify.c:806
+#, c-format
+msgid "--- Merging r%ld into '%s':\n"
+msgstr "-- Zusammenführen von r%ld in »%s«:\n"
+
+#: ../svn/notify.c:810
+#, c-format
+msgid "--- Reverse-merging r%ld into '%s':\n"
+msgstr "-- Rückwärtiges Zusammenführen von r%ld in »%s«:\n"
+
+#: ../svn/notify.c:814
+#, c-format
+msgid "--- Merging r%ld through r%ld into '%s':\n"
+msgstr "-- Zusammenführen von r%ld bis r%ld in »%s«:\n"
+
+#: ../svn/notify.c:820
+#, c-format
+msgid "--- Reverse-merging r%ld through r%ld into '%s':\n"
+msgstr "-- Rückwärtiges Zusammenführen von r%ld bis r%ld in »%s«:\n"
+
+#: ../svn/notify.c:832
+#, c-format
+msgid "--- Recording mergeinfo for merge between repository URLs into '%s':\n"
+msgstr "-- Aufzeichnung der Informationen für Zusammenführung zwischen Projektarchiv-URLs in »%s«:\n"
+
+#: ../svn/notify.c:842
+#, c-format
+msgid "--- Recording mergeinfo for merge of r%ld into '%s':\n"
+msgstr "-- Aufzeichnung der Informationen für Zusammenführung von r%ld in »%s«:\n"
+
+#: ../svn/notify.c:847
+#, c-format
+msgid "--- Recording mergeinfo for reverse merge of r%ld into '%s':\n"
+msgstr "-- Aufzeichnung der Informationen für rückwärtiges Zusammenführen von r%ld in »%s«:\n"
+
+#: ../svn/notify.c:852
+#, c-format
+msgid "--- Recording mergeinfo for merge of r%ld through r%ld into '%s':\n"
+msgstr "-- Aufzeichnung der Informationen für Zusammenführung von r%ld bis r%ld in »%s«:\n"
+
+#: ../svn/notify.c:857
+#, c-format
+msgid "--- Recording mergeinfo for reverse merge of r%ld through r%ld into '%s':\n"
+msgstr "-- Aufzeichnung der Informationen für rückwärtiges Zusammenführen von r%ld bis r%ld in »%s«:\n"
+
+#: ../svn/notify.c:867
+#, fuzzy, c-format
+msgid "--- Eliding mergeinfo from '%s':\n"
+msgstr "-- Zusammenführen von r%ld in »%s«:\n"
+
+#: ../svn/notify.c:875
+#, c-format
+msgid "--- Merging differences between foreign repository URLs into '%s':\n"
+msgstr "-- Zusammenführen der Unterschiede zwischen fremden Projektarchiv-URLs in »%s«:\n"
+
+#: ../svn/notify.c:881
+#, c-format
+msgid "--- Merging (from foreign repository) r%ld into '%s':\n"
+msgstr "-- Zusammenführen (aus fremden Projektarchiv) von r%ld in »%s«:\n"
+
+#: ../svn/notify.c:886
+#, c-format
+msgid "--- Reverse-merging (from foreign repository) r%ld into '%s':\n"
+msgstr "-- Rückwärtiges Zusammenführen (aus fremden Projektarchiv) von r%ld in »%s«:\n"
+
+#: ../svn/notify.c:891
+#, c-format
+msgid "--- Merging (from foreign repository) r%ld through r%ld into '%s':\n"
+msgstr "-- Zusammenführen (aus fremden Projektarchiv) von r%ld bis r%ld in »%s«:\n"
+
+#: ../svn/notify.c:897
+#, c-format
+msgid "--- Reverse-merging (from foreign repository) r%ld through r%ld into '%s':\n"
+msgstr "-- Rückwärtiges Zusammenführen (aus fremden Projektarchiv) von r%ld bis r%ld in »%s«:\n"
+
+#: ../svn/notify.c:933
+#, c-format
+msgid "property '%s' set on '%s'\n"
+msgstr "Eigenschaft »%s« für »%s« gesetzt\n"
+
+#: ../svn/notify.c:941
+#, c-format
+msgid "property '%s' deleted from '%s'.\n"
+msgstr "Eigenschaft »%s« wurde von »%s« gelöscht.\n"
+
+# TODO: Compare msgid "Attempted to open non-existent child node '%s'"
+# (non-, vs. non; Attempted vs. Attempting)
+#: ../svn/notify.c:949
+#, fuzzy, c-format
+msgid "Attempting to delete nonexistent property '%s' on '%s'\n"
+msgstr "Versuchte, nicht existierende Eigenschaft »%s« zu löschen"
+
+#: ../svn/notify.c:958
+#, c-format
+msgid "property '%s' set on repository revision %ld\n"
+msgstr "Eigenschaft »%s« wurde für Revision %ld im Projektarchiv gesetzt\n"
+
+#: ../svn/notify.c:966
+#, c-format
+msgid "property '%s' deleted from repository revision %ld\n"
+msgstr "Eigenschaft »%s« wurde von Revision %ld im Projektarchiv gelöscht\n"
+
+#: ../svn/notify.c:973
+#, fuzzy, c-format
+msgid "Upgraded '%s'\n"
+msgstr "In neues Format gebracht: »%s«.\n"
+
+#: ../svn/notify.c:979
+#, fuzzy, c-format
+msgid "Redirecting to URL '%s':\n"
+msgstr "Umleitung zur URL »%s«\n"
+
+#: ../svn/propdel-cmd.c:88
+#, c-format
+msgid "Cannot specify revision for deleting versioned property '%s'"
+msgstr "Zum Löschen der versionierten Eigenschaft »%s« darf keine Revision angegeben werden"
+
+#: ../svn/propedit-cmd.c:61 ../svn/propedit-cmd.c:335
+#, c-format
+msgid "Set new value for property '%s' on '%s'\n"
+msgstr "Neuer Wert für Eigenschaft »%s« für »%s« gesetzt\n"
+
+#: ../svn/propedit-cmd.c:94 ../svn/propset-cmd.c:97
+msgid "--encoding option applies only to textual Subversion-controlled properties"
+msgstr "Option --encoding ist nur für textbasierte von Subversion kontrollierte Eigenschaften angebbar"
+
+#: ../svn/propedit-cmd.c:160
+#, c-format
+msgid "Set new value for property '%s' on revision %ld\n"
+msgstr "Neuen Wert für Eigenschaft »%s« in Revision %ld gesetzt\n"
+
+#: ../svn/propedit-cmd.c:166
+#, c-format
+msgid "No changes to property '%s' on revision %ld\n"
+msgstr "Eigenschaft »%s« in Revision %ld nicht geändert\n"
+
+#: ../svn/propedit-cmd.c:174
+#, c-format
+msgid "Cannot specify revision for editing versioned property '%s'"
+msgstr "Beim Bearbeiten der versionierten Eigenschaft »%s« darf keine Revision angegeben werden"
+
+#: ../svn/propedit-cmd.c:202 ../svn/propset-cmd.c:172
+msgid "Explicit target argument required"
+msgstr "Expliziter Zielparameter benötigt"
+
+#: ../svn/propedit-cmd.c:269
+#, c-format
+msgid "'%s' does not appear to be a working copy path"
+msgstr "»%s« scheint kein Pfad einer Arbeitskopie zu sein"
+
+#: ../svn/propedit-cmd.c:342
+#, c-format
+msgid "No changes to property '%s' on '%s'\n"
+msgstr "Keine Änderungen der Eigenschaft »%s« für »%s«\n"
+
+#: ../svn/propget-cmd.c:65
+#, fuzzy
+msgid "Error writing to stream"
+msgstr "Fehler beim Schreiben in »%s«"
+
+#: ../svn/propget-cmd.c:185 ../svn/proplist-cmd.c:156
+#: ../svn/proplist-cmd.c:160 ../svnlook/svnlook.c:1731
+#: ../svnlook/svnlook.c:1885
+#, fuzzy, c-format
+msgid ""
+"Inherited properties on '%s',\n"
+"from '%s':\n"
+msgstr "Nicht versionierte Eigenschaft in Revision %ld:\n"
+
+#. Not a --revprop
+#: ../svn/propget-cmd.c:195 ../svn/proplist-cmd.c:175
+#: ../svnlook/svnlook.c:1767 ../svnlook/svnlook.c:1920
+#, c-format
+msgid "Properties on '%s':\n"
+msgstr "Eigenschaften zu »%s«:\n"
+
+#: ../svn/propget-cmd.c:325
+msgid "--verbose cannot be used with --revprop or --strict or --xml"
+msgstr "--verbose kann nicht mit --revprop oder --strict oder --xml verwendet werden"
+
+#: ../svn/propget-cmd.c:357 ../svn/proplist-cmd.c:214
+#, fuzzy
+msgid "--show-inherited-props can't be used with --revprop"
+msgstr "--reintegrate kann nicht mit --record-only verwendet werden"
+
+#: ../svn/propget-cmd.c:424
+msgid "Strict output of property values only available for single-target, non-recursive propget operations"
+msgstr "Strikte Ausgabe von Eigenschaftswerten ist nur für einzelne Ziele und nicht-rekursive propget-Operationen verfügbar"
+
+#: ../svn/proplist-cmd.c:246
+#, c-format
+msgid "Unversioned properties on revision %ld:\n"
+msgstr "Nicht versionierte Eigenschaft in Revision %ld:\n"
+
+#: ../svn/proplist-cmd.c:321
+msgid "Could not display properties of all targets because some targets don't exist"
+msgstr ""
+
+#: ../svn/proplist-cmd.c:326
+msgid "Could not display properties of all targets because some targets are not versioned"
+msgstr ""
+
+#: ../svn/props.c:65
+msgid "Must specify the revision as a number, a date or 'HEAD' when operating on a revision property"
+msgstr "Die Revision muss als Zahl, Datum oder »HEAD« angegeben werden, wenn auf eine Revisionseigenschaft zugegriffen wird"
+
+#: ../svn/props.c:72
+msgid "Wrong number of targets specified"
+msgstr "Falsche Anzahl Ziele angegeben"
+
+#: ../svn/props.c:81
+msgid "Either a URL or versioned item is required"
+msgstr "Eine URL oder ein versioniertes Objekt muss angegeben werden"
+
+#: ../svn/props.c:106
+#, c-format
+msgid ""
+"To turn off the %s property, use 'svn propdel';\n"
+"setting the property to '%s' will not turn it off."
+msgstr ""
+"Um die Eigenschaft %s abzuschalten, ist »svn propdel« zu verwenden;\n"
+"setzen der Eigenschaft auf »%s« wird sie nicht ausschalten."
+
+#: ../svn/props.c:224 ../svn/props.c:276
+#, c-format
+msgid ""
+"'%s' is not a valid %s property name; did you mean '%s'?\n"
+"(To set the '%s' property, re-run with '--force'.)"
+msgstr ""
+
+#: ../svn/props.c:268
+#, fuzzy, c-format
+msgid "'%s' is not a valid %s property name; re-run with '--force' to set it"
+msgstr "»%s« ist kein gültiger Subversion-Eigenschaftsname"
+
+#: ../svn/props.c:284
+#, c-format
+msgid ""
+"'%s' is not a valid %s property name\n"
+"Did you mean '%s' or '%s'?\n"
+"(To set the '%s' property, re-run with '--force'.)"
+msgstr ""
+
+#: ../svn/props.c:294
+#, c-format
+msgid ""
+"'%s' is not a valid %s property name\n"
+"Did you mean '%s', '%s' or '%s'?\n"
+"(To set the '%s' property, re-run with '--force'.)"
+msgstr ""
+
+#: ../svn/propset-cmd.c:132
+#, c-format
+msgid "Cannot specify revision for setting versioned property '%s'"
+msgstr "Beim Setzen der versionierten Eigenschaft »%s« darf keine Revision angegeben werden"
+
+#: ../svn/propset-cmd.c:165
+#, c-format
+msgid "Explicit target required ('%s' interpreted as prop value)"
+msgstr "Explizites Ziel erforderlich (»%s« als Eigenschaftswert interpretiert)"
+
+#: ../svn/resolve-cmd.c:85
+msgid "missing --accept option"
+msgstr "fehlende Option --accept"
+
+#: ../svn/resolve-cmd.c:90
+msgid "invalid 'accept' ARG"
+msgstr "ungültiger Parameter »accept«"
+
+#: ../svn/resolve-cmd.c:152
+#, fuzzy
+msgid "Failure occurred resolving one or more conflicts"
+msgstr "Kann eine oder mehrere »svn:externals«-Definitionen nicht verarbeiten"
+
+#: ../svn/revert-cmd.c:77
+msgid "Try 'svn revert --depth infinity' instead?"
+msgstr "Versuchen Sie »svn revert --depth infinity« stattdessen?"
+
+#: ../svn/status-cmd.c:388
+#, c-format
+msgid ""
+"\n"
+"--- Changelist '%s':\n"
+msgstr ""
+"\n"
+"--- Änderungsliste »%s«:\n"
+
+#: ../svn/status.c:301
+#, fuzzy, c-format
+msgid "moved from %s"
+msgstr "Kopiert von URL: %s\n"
+
+#: ../svn/status.c:312
+#, fuzzy, c-format
+msgid "moved to %s"
+msgstr "Sperre für »%s« entfernt.\n"
+
+#: ../svn/svn.c:145
msgid "force operation to run"
msgstr "Durchführung des Befehls erzwingen"
-#: ../svn/main.c:138
+#: ../svn/svn.c:147
msgid "force validity of log message source"
msgstr "Gültigkeit der Quelle für die Logmeldung erzwingen"
-#: ../svn/main.c:139 ../svn/main.c:140 ../svnadmin/main.c:244
-#: ../svnadmin/main.c:247 ../svndumpfilter/main.c:916
-#: ../svndumpfilter/main.c:919 ../svnlook/main.c:103 ../svnlook/main.c:115
-#: ../svnsync/main.c:212 ../svnsync/main.c:214
+#: ../svn/svn.c:148 ../svn/svn.c:149 ../svnadmin/svnadmin.c:207
+#: ../svnadmin/svnadmin.c:210 ../svndumpfilter/svndumpfilter.c:1013
+#: ../svndumpfilter/svndumpfilter.c:1016 ../svnlook/svnlook.c:110
+#: ../svnlook/svnlook.c:122 ../svnsync/svnsync.c:242 ../svnsync/svnsync.c:244
msgid "show help on a subcommand"
msgstr "zeige Hilfe zu einem Unterbefehl"
-#: ../svn/main.c:141
+#: ../svn/svn.c:150
msgid "specify log message ARG"
msgstr "PAR als Logmeldung verwenden"
-#: ../svn/main.c:142
+#: ../svn/svn.c:151
msgid "print nothing, or only summary information"
msgstr "nichts oder nur Zusammenfassungen ausgeben"
-#: ../svn/main.c:143
+#: ../svn/svn.c:152
msgid "descend recursively, same as --depth=infinity"
msgstr ""
"rekursiv absteigen, das gleiche wie\n"
" --depth=infinity"
-#: ../svn/main.c:144
+#: ../svn/svn.c:153
msgid "obsolete; try --depth=files or --depth=immediates"
msgstr ""
"veraltet; versuchen Sie --depth=files oder\n"
" --depth=immediates"
-#: ../svn/main.c:146
-msgid "the change made by revision ARG (like -r ARG-1:ARG)\n"
-msgstr "die in Revision PAR durchgeführte Änderung (wie -r PAR-1:PAR)\n"
+#: ../svn/svn.c:155
+#, fuzzy
+msgid ""
+"the change made by revision ARG (like -r ARG-1:ARG)\n"
+" If ARG is negative this is like -r ARG:ARG-1\n"
+" If ARG is of the form ARG1-ARG2 then this is like\n"
+" ARG1:ARG2, where ARG1 is inclusive"
+msgstr ""
+"Änderung stammt aus Revision PAR (wie\n"
+" -r PAR-1:PAR). Falls PAR negativ ist,\n"
+" gleichbedeutend zu -r PAR:PAR-1"
-#: ../svn/main.c:150
-msgid "ARG (some commands also take ARG1:ARG2 range)\n"
-msgstr "PAR (einige Kommandos akzeptieren auch Bereiche PAR1:PAR2)\n"
+#: ../svn/svn.c:163
+msgid ""
+"ARG (some commands also take ARG1:ARG2 range)\n"
+" A revision argument can be one of:\n"
+" NUMBER revision number\n"
+" '{' DATE '}' revision at start of the date\n"
+" 'HEAD' latest in repository\n"
+" 'BASE' base rev of item's working copy\n"
+" 'COMMITTED' last commit at or before BASE\n"
+" 'PREV' revision just before COMMITTED"
+msgstr ""
+"PAR (manche Befehle akzeptieren auch einen\n"
+" Wertebereich PAR1:PAR2)\n"
+" Ein Revisionsparameter kann sein:\n"
+" NUMMER Revisionsnummer\n"
+" »{«DATUM»}« Revision zum Startdatum\n"
+" »HEAD« neueste Revision im Projektarchiv\n"
+" »BASE« Basisrevision der Arbeitskopie\n"
+" »COMMITTED« letzte übertragene Revision zu\n"
+" oder vor BASE\n"
+" »PREV« letzte Revision vor COMMITTED"
-#: ../svn/main.c:165
+#: ../svn/svn.c:178
msgid "read log message from file ARG"
msgstr "Logmeldung aus Datei PAR lesen"
-#: ../svn/main.c:167
+#: ../svn/svn.c:180
msgid "give output suitable for concatenation"
msgstr "Ausgabe für Verkettung formatieren"
-#: ../svn/main.c:169
+#: ../svn/svn.c:182
msgid "treat value as being in charset encoding ARG"
msgstr ""
"Wert behandeln, als sei er in der Zeichenkodierung\n"
" PAR"
-#: ../svn/main.c:170 ../svnadmin/main.c:250 ../svndumpfilter/main.c:922
-#: ../svnlook/main.c:145 ../svnrdump/svnrdump.c:89 ../svnserve/main.c:220
-#: ../svnsync/main.c:210 ../svnversion/main.c:135
+#: ../svn/svn.c:183 ../svnadmin/svnadmin.c:213
+#: ../svndumpfilter/svndumpfilter.c:1019 ../svnlook/svnlook.c:164
+#: ../svnrdump/svnrdump.c:144 ../svnserve/svnserve.c:286
+#: ../svnsync/svnsync.c:240 ../svnversion/svnversion.c:139
msgid "show program version information"
msgstr "Zeige Versionsinformationen des Programms"
-#: ../svn/main.c:171
+#: ../svn/svn.c:184
msgid "print extra information"
msgstr "zusätzliche Informationen ausgeben"
-#: ../svn/main.c:172
+#: ../svn/svn.c:185
msgid "display update information"
msgstr "Aktualisierungsinformation ausgeben"
-#: ../svn/main.c:173 ../svnrdump/svnrdump.c:81
+#: ../svn/svn.c:186 ../svnrdump/svnrdump.c:128
msgid "specify a username ARG"
msgstr "Benutzername PAR angeben"
-#: ../svn/main.c:174 ../svnrdump/svnrdump.c:82
+#: ../svn/svn.c:187 ../svnrdump/svnrdump.c:130
msgid "specify a password ARG"
msgstr "Passwort PAR angeben"
-#: ../svn/main.c:176
-msgid "Default: '-u'. When Subversion is invoking an\n"
+#: ../svn/svn.c:189
+#, fuzzy
+msgid ""
+"Specify differencing options for external diff or\n"
+" internal diff or blame. Default: '-u'. Options are\n"
+" separated by spaces. Internal diff and blame take:\n"
+" -u, --unified: Show 3 lines of unified context\n"
+" -b, --ignore-space-change: Ignore changes in\n"
+" amount of white space\n"
+" -w, --ignore-all-space: Ignore all white space\n"
+" --ignore-eol-style: Ignore changes in EOL style\n"
+" -p, --show-c-function: Show C function name"
msgstr ""
+"Vorgabe: »-u«. Wenn Subversion ein\n"
+" externes Vergleichsprogramm aufruft, wird PAR nur\n"
+" an das Programm weitergereicht. Wenn Subversion\n"
+" aber sein internes Vergleichsprogramm benutzt\n"
+" oder Annotierungen anzeigt, kann PAR einen der\n"
+" folgenden Werte annehmen:\n"
+" -u (--unified):\n"
+" Gibt 3 Zeilen Standardkontext aus.\n"
+" -b (--ignore-space-change):\n"
+" Ignoriert Änderungen in der Anzahl von\n"
+" Leerzeichen.\n"
+" -w (--ignore-all-space):\n"
+" Ignoriert sämtliche Leerzeichen.\n"
+" --ignore-eol-style:\n"
+" Ignoriert Änderungen im Zeilenendestil.\n"
+" -p (--show-c-function):\n"
+" Zeigt C-Funktionsname in Diff-Ausgabe."
-#: ../svn/main.c:208
+#: ../svn/svn.c:207
msgid "pass contents of file ARG as additional args"
msgstr ""
"Inhalt der Datei PAR als zusätzliche Parameter\n"
" übergeben"
-#: ../svn/main.c:210
-msgid "limit operation by depth ARG ('empty', 'files',\n"
-msgstr "begrenzt Operation durch Tiefe PAR (»empty«, »files«,\n"
-
-#: ../svn/main.c:214
-msgid "set new working copy depth to ARG ('exclude',\n"
+#: ../svn/svn.c:209
+#, fuzzy
+msgid ""
+"limit operation by depth ARG ('empty', 'files',\n"
+" 'immediates', or 'infinity')"
msgstr ""
+"setzt neue Tiefe der Arbeitskopie auf PAR (»exclude«,\n"
+" »empty«, »files«, »immediates« oder »infinity«)"
-#: ../svn/main.c:217 ../svnlook/main.c:148
+#: ../svn/svn.c:213
+#, fuzzy
+msgid ""
+"set new working copy depth to ARG ('exclude',\n"
+" 'empty', 'files', 'immediates', or 'infinity')"
+msgstr ""
+"setzt neue Tiefe der Arbeitskopie auf PAR (»exclude«,\n"
+" »empty«, »files«, »immediates« oder »infinity«)"
+
+#: ../svn/svn.c:216 ../svnlook/svnlook.c:167
msgid "output in XML"
msgstr "Ausgabe in XML"
-#: ../svn/main.c:218
+#: ../svn/svn.c:217
msgid "use strict semantics"
msgstr "Strikte Semantik anwenden"
-#: ../svn/main.c:220
+#: ../svn/svn.c:219
msgid "do not cross copies while traversing history"
msgstr "Log-Ausgabe endet bei Kopieroperationen"
-#: ../svn/main.c:222
-msgid "disregard default and svn:ignore property ignores"
+#: ../svn/svn.c:221
+#, fuzzy
+msgid ""
+"disregard default and svn:ignore and\n"
+" svn:global-ignores property ignores"
msgstr ""
"globale »ignore«- und »svn:ignore«-Einstellungen\n"
" nicht beachten"
-#: ../svn/main.c:224 ../svnrdump/svnrdump.c:85 ../svnsync/main.c:172
+#: ../svn/svn.c:225 ../svnrdump/svnrdump.c:140 ../svnsync/svnsync.c:186
msgid "do not cache authentication tokens"
msgstr "Anmeldeinformationen nicht zwischenspeichern"
-#: ../svn/main.c:226
-msgid "accept unknown SSL server certificates without\n"
+#: ../svn/svn.c:227 ../svnrdump/svnrdump.c:154 ../svnsync/svnsync.c:196
+#, fuzzy
+msgid ""
+"accept SSL server certificates from unknown\n"
+" certificate authorities without prompting (but only\n"
+" with '--non-interactive')"
+msgstr ""
+"akzeptiere unbekannte SSL-Server-Zertifikate ohne\n"
+" Nachfrage (aber nur mit »--non-interactive«)"
+
+#: ../svn/svn.c:233 ../svnrdump/svnrdump.c:132 ../svnsync/svnsync.c:178
+msgid ""
+"do no interactive prompting (default is to prompt\n"
+" only if standard input is a terminal device)"
msgstr ""
-#: ../svn/main.c:230 ../svnrdump/svnrdump.c:83 ../svnsync/main.c:170
-msgid "do no interactive prompting"
-msgstr "keine interaktiven Rückfragen ausgeben"
+#: ../svn/svn.c:237 ../svnrdump/svnrdump.c:136 ../svnsync/svnsync.c:182
+#, fuzzy
+msgid ""
+"do interactive prompting even if standard input\n"
+" is not a terminal device"
+msgstr ""
+"warte anstatt abzubrechen, wenn das Projektarchiv\n"
+" durch einen anderen Prozess belegt ist"
-#: ../svn/main.c:232
+#: ../svn/svn.c:241
msgid "try operation but make no changes"
msgstr "Operation testen, aber keine Änderungen durchführen"
-#: ../svn/main.c:234 ../svnlook/main.c:124
-msgid "do not print differences for deleted files"
-msgstr "keine Unterschiede für gelöschte Dateien ausgeben"
-
-#: ../svn/main.c:236
-msgid "notice ancestry when calculating differences"
-msgstr ""
-"beim Berechnen von Differenzen Vorgänger\n"
-" berücksichtigen"
-
-#: ../svn/main.c:238
+#: ../svn/svn.c:243
msgid "ignore ancestry when calculating merges"
msgstr "beim Zusammenführen Vorgänger ignorieren"
-#: ../svn/main.c:240
+#: ../svn/svn.c:245
msgid "ignore externals definitions"
msgstr "»svn:externals«-Definitionen ignorieren"
-#: ../svn/main.c:241
-msgid "use ARG as diff command"
-msgstr "PAR als Vergleichsprogramm verwenden"
-
-#: ../svn/main.c:242
+#: ../svn/svn.c:246
msgid "use ARG as merge command"
msgstr "PAR als Konflikteditor verwenden"
-#: ../svn/main.c:243
+#: ../svn/svn.c:247
msgid "use ARG as external editor"
msgstr "PAR als externen Editor verwenden"
-#: ../svn/main.c:245
+#: ../svn/svn.c:249
msgid "merge only mergeinfo differences"
msgstr ""
-#: ../svn/main.c:246
+#: ../svn/svn.c:250
msgid "use ARG as the older target"
msgstr "PAR als älteres Ziel verwenden"
-#: ../svn/main.c:247
+#: ../svn/svn.c:251
msgid "use ARG as the newer target"
msgstr "PAR als neueres Ziel verwenden"
-#: ../svn/main.c:249
+#: ../svn/svn.c:253
msgid "operate on a revision property (use with -r)"
msgstr ""
"auf einer Revisionseigenschaft arbeiten (mit -r\n"
" verwenden)"
-#: ../svn/main.c:250
+#: ../svn/svn.c:254
msgid "relocate via URL-rewriting"
msgstr "durch Umschreiben der URL umplatzieren"
-#: ../svn/main.c:252 ../svnadmin/main.c:286 ../svnrdump/svnrdump.c:79
-#: ../svnsync/main.c:194
+#: ../svn/svn.c:256 ../svnadmin/svnadmin.c:252 ../svnrdump/svnrdump.c:126
+#: ../svnsync/svnsync.c:210
msgid "read user configuration files from directory ARG"
msgstr ""
"Benutzerkonfigurationsdateien aus dem Verzeichnis\n"
" PAR lesen"
-#: ../svn/main.c:254
-msgid "set user configuration option in the format:\n"
-msgstr "Konfigurationsoption in diesem Format setzen:\n"
+#: ../svn/svn.c:258 ../svnrdump/svnrdump.c:146 ../svnsync/svnsync.c:212
+msgid ""
+"set user configuration option in the format:\n"
+" FILE:SECTION:OPTION=[VALUE]\n"
+" For example:\n"
+" servers:global:http-library=serf"
+msgstr ""
+"Setzt Benutzerkonfigurationsoption im Format:\n"
+" DATEI:ABSCHNITT:OPTION=[WERT]\n"
+" Zum Beispiel:\n"
+" servers:global:http-library=serf"
-#: ../svn/main.c:261
+#: ../svn/svn.c:265
msgid "enable automatic properties"
msgstr "automatische Eigenschaften einschalten"
-#: ../svn/main.c:262
+#: ../svn/svn.c:266
msgid "disable automatic properties"
msgstr "automatische Eigenschaften ausschalten"
-#: ../svn/main.c:264
-msgid "use a different EOL marker than the standard\n"
+#: ../svn/svn.c:268
+msgid ""
+"use a different EOL marker than the standard\n"
+" system marker for files with the svn:eol-style\n"
+" property set to 'native'.\n"
+" ARG may be one of 'LF', 'CR', 'CRLF'"
msgstr ""
+"Verwende eine andere Zeilenendemarke als den\n"
+" Standard für Dateien mit der Eigenschaft\n"
+" »svn:eol-style native«.\n"
+" PAR kann »LF«, »CR« oder »CRLF« sein."
-#: ../svn/main.c:271
+#: ../svn/svn.c:275
msgid "maximum number of log entries"
msgstr "maximale Anzahl Logeinträge"
-#: ../svn/main.c:272
+#: ../svn/svn.c:276
msgid "don't unlock the targets"
msgstr "Ziele nicht freigeben"
-#: ../svn/main.c:273
-msgid "show a summary of the results"
-msgstr "Zeige eine Zusammenfassung der Ergebnisse"
-
# CHECKME
-#: ../svn/main.c:274
+#: ../svn/svn.c:277
msgid "remove changelist association"
msgstr "Bezug zur Änderungsliste entfernen"
-#: ../svn/main.c:276
+#: ../svn/svn.c:279
msgid "operate only on members of changelist ARG"
msgstr "nur auf Elementen der Änderungsliste PAR operieren"
-#: ../svn/main.c:278
+#: ../svn/svn.c:281
msgid "don't delete changelists after commit"
msgstr "Änderungslisten nach Übertragung nicht löschen"
-#: ../svn/main.c:279
+#: ../svn/svn.c:282
msgid "keep path in working copy"
msgstr "Pfad in Arbeitskopie beibehalten"
-#: ../svn/main.c:281
+#: ../svn/svn.c:284
msgid "retrieve all revision properties"
msgstr "alle Revisionseigenschaften abfragen"
-#: ../svn/main.c:283
+#: ../svn/svn.c:286
msgid "retrieve no revision properties"
msgstr "keine Revisionseigenschaften abfragen"
-#: ../svn/main.c:285
-msgid "set revision property ARG in new revision\n"
-msgstr "Revisionseigenschaft PAR in neuer Revision setzen\n"
+#: ../svn/svn.c:288
+msgid ""
+"set revision property ARG in new revision\n"
+" using the name[=value] format"
+msgstr ""
+"Revisionseigenschaft PAR in neuer Revision\n"
+" unter Verwendung des Formats name[=Wert] setzen"
-#: ../svn/main.c:288
+#: ../svn/svn.c:291
msgid "make intermediate directories"
msgstr "Zwischenverzeichnisse erzeugen"
-#: ../svn/main.c:290
+#: ../svn/svn.c:293
#, fuzzy
-msgid "use/display additional information from merge\n"
+msgid ""
+"use/display additional information from merge\n"
+" history"
msgstr ""
"verwende/zeige zusätzliche Informationen aus der\n"
" Zusammenführungsgeschichte an"
-#: ../svn/main.c:294
-msgid "specify automatic conflict resolution action\n"
-msgstr ""
-
-#: ../svn/main.c:302
+#: ../svn/svn.c:297
#, fuzzy
-msgid "specify which collection of revisions to display\n"
+msgid ""
+"specify automatic conflict resolution action\n"
+" ('postpone', 'working', 'base', 'mine-conflict',\n"
+" 'theirs-conflict', 'mine-full', 'theirs-full',\n"
+" 'edit', 'launch')\n"
+" (shorthand: 'p', 'mc', 'tc', 'mf', 'tf', 'e', 'l')"
+msgstr ""
+"automatische Konfliktauflösungsaktion angeben\n"
+" (»postpone«, »base«, »mine-conflict«,\n"
+" »theirs-conflict«, »mine-full«, »theirs-full«,\n"
+" »edit«, »launch«)"
+
+#: ../svn/svn.c:308
+#, fuzzy
+msgid ""
+"specify which collection of revisions to display\n"
+" ('merged', 'eligible')"
msgstr ""
"anzuzeigende Revisionen angeben\n"
" (»merged«, »eligible«)"
-#: ../svn/main.c:306
-msgid "merge a branch back into its parent branch"
+#: ../svn/svn.c:312
+msgid "deprecated"
msgstr ""
-#: ../svn/main.c:308
-msgid "number of leading path components to strip from\n"
+#: ../svn/svn.c:314
+msgid ""
+"number of leading path components to strip from\n"
+" paths parsed from the patch file. --strip 0\n"
+" is the default and leaves paths unmodified.\n"
+" --strip 1 would change the path\n"
+" 'doc/fudge/crunchy.html' to 'fudge/crunchy.html'.\n"
+" --strip 2 would leave just 'crunchy.html'\n"
+" The expected component separator is '/' on all\n"
+" platforms. A leading '/' counts as one component."
msgstr ""
-#: ../svn/main.c:324
-msgid "don't diff copied or moved files with their source"
-msgstr ""
-
-#: ../svn/main.c:326
+#: ../svn/svn.c:330
msgid "don't expand keywords"
msgstr "Schlüsselwörter nicht expandieren"
-#: ../svn/main.c:328
+#: ../svn/svn.c:332
msgid "apply the unidiff in reverse"
msgstr ""
-#: ../svn/main.c:330
+#: ../svn/svn.c:334
msgid "ignore whitespace during pattern matching"
msgstr ""
-#: ../svn/main.c:331
+#: ../svn/svn.c:335
msgid "produce diff output"
msgstr ""
-#: ../svn/main.c:333
+#. maps to show_diff
+#. diff options
+#: ../svn/svn.c:337 ../svnlook/svnlook.c:134
+msgid "use ARG as diff command"
+msgstr "PAR als Vergleichsprogramm verwenden"
+
+#: ../svn/svn.c:339
msgid "override diff-cmd specified in config file"
msgstr ""
-#: ../svn/main.c:335
+#: ../svn/svn.c:341 ../svnlook/svnlook.c:131
+msgid "do not print differences for deleted files"
+msgstr "keine Unterschiede für gelöschte Dateien ausgeben"
+
+#: ../svn/svn.c:343
+msgid "don't diff copied or moved files with their source"
+msgstr ""
+
+#: ../svn/svn.c:345
+msgid "notice ancestry when calculating differences"
+msgstr ""
+"beim Berechnen von Differenzen Vorgänger\n"
+" berücksichtigen"
+
+#: ../svn/svn.c:346
+msgid "show a summary of the results"
+msgstr "Zeige eine Zusammenfassung der Ergebnisse"
+
+#: ../svn/svn.c:348
msgid "use git's extended diff format"
msgstr ""
-#: ../svn/main.c:337
-msgid "Allow merge into mixed-revision working copy.\n"
-msgstr "Erlaube Zusammenführung in eine Arbeitskopie mit verschiedenen Revisionen.\n"
+#: ../svn/svn.c:350 ../svnlook/svnlook.c:137
+msgid "ignore properties during the operation"
+msgstr ""
-#: ../svn/main.c:408
+#: ../svn/svn.c:352 ../svnlook/svnlook.c:140
+msgid "show only properties during the operation"
+msgstr ""
+
+#: ../svn/svn.c:354
+msgid ""
+"generate diff suitable for generic third-party\n"
+" patch tools; currently the same as\n"
+" --show-copies-as-adds --ignore-properties"
+msgstr ""
+
+#: ../svn/svn.c:362
+msgid ""
+"Allow operation on mixed-revision working copy.\n"
+" Use of this option is not recommended!\n"
+" Please run 'svn update' instead."
+msgstr ""
+
+#: ../svn/svn.c:368
+msgid ""
+"Also commit file and dir externals reached by\n"
+" recursion. This does not include externals with a\n"
+" fixed revision. (See the svn:externals property)"
+msgstr ""
+
+#: ../svn/svn.c:374
+#, fuzzy
+msgid "retrieve target's inherited properties"
+msgstr "alle Revisionseigenschaften abfragen"
+
+#: ../svn/svn.c:376
+msgid "use ARG as search pattern (glob syntax)"
+msgstr ""
+
+#: ../svn/svn.c:378
+msgid "combine ARG with the previous search pattern"
+msgstr ""
+
+#: ../svn/svn.c:426
msgid ""
"Put files and directories under version control, scheduling\n"
"them for addition to repository. They will be added in next commit.\n"
@@ -8161,11 +10007,11 @@
"Das tatsächliche Hinzufügen findet erst beim nächsten Übertragen statt.\n"
"Aufruf: add PFAD...\n"
-#: ../svn/main.c:413
+#: ../svn/svn.c:431
msgid "add intermediate parents"
msgstr "direkte Eltern hinzufügen"
-#: ../svn/main.c:416
+#: ../svn/svn.c:434
msgid ""
"Output the content of specified files or\n"
"URLs with revision and author information in-line.\n"
@@ -8180,7 +10026,7 @@
"\n"
" Falls angegeben, bestimmt REV, in welcher Revision zuerst nachgeschaut wird.\n"
-#: ../svn/main.c:425
+#: ../svn/svn.c:443
msgid ""
"Output the content of specified files or URLs.\n"
"usage: cat TARGET[@REV]...\n"
@@ -8193,7 +10039,7 @@
"\n"
" Falls angegeben, bestimmt REV, in welcher Revision zuerst nachgeschaut wird.\n"
-#: ../svn/main.c:433
+#: ../svn/svn.c:451
msgid ""
"Associate (or dissociate) changelist CLNAME with the named files.\n"
"usage: 1. changelist CLNAME PATH...\n"
@@ -8204,7 +10050,7 @@
"Aufruf: 1. changelist CLNAME PFAD...\n"
" 2. changelist --remove PFAD...\n"
-#: ../svn/main.c:439
+#: ../svn/svn.c:457
msgid ""
"Check out a working copy from a repository.\n"
"usage: checkout URL[@REV]... [PATH]\n"
@@ -8254,7 +10100,7 @@
" Siehe auch »svn help update« für eine Liste möglicher Buchstaben,\n"
" die die durchgeführte Aktion beschreiben.\n"
-#: ../svn/main.c:466
+#: ../svn/svn.c:484
msgid ""
"Recursively clean up the working copy, removing locks, resuming\n"
"unfinished operations, etc.\n"
@@ -8264,7 +10110,7 @@
"nimmt unvollständige Operationen wieder auf, usw.\n"
"Aufruf: cleanup [AKPFAD...]\n"
-#: ../svn/main.c:472
+#: ../svn/svn.c:490
msgid ""
"Send changes from your working copy to the repository.\n"
"usage: commit [PATH...]\n"
@@ -8283,27 +10129,25 @@
" Falls Objekte gesperrt sind oder gesperrte Objekte enthalten, werden diese\n"
" nach einer erfolgreichen Übertragung entsperrt.\n"
-#: ../svn/main.c:483
+#: ../svn/svn.c:501
+#, fuzzy
msgid ""
-"Duplicate something in working copy or repository, remembering\n"
-"history.\n"
+"Copy files and directories in a working copy or repository.\n"
"usage: copy SRC[@REV]... DST\n"
"\n"
-"When copying multiple sources, they will be added as children of DST,\n"
-"which must be a directory.\n"
-"\n"
" SRC and DST can each be either a working copy (WC) path or URL:\n"
" WC -> WC: copy and schedule for addition (with history)\n"
" WC -> URL: immediately commit a copy of WC to URL\n"
" URL -> WC: check out URL into WC, schedule for addition\n"
" URL -> URL: complete server-side copy; used to branch and tag\n"
-" All the SRCs must be of the same type.\n"
+" All the SRCs must be of the same type. When copying multiple sources,\n"
+" they will be added as children of DST, which must be a directory.\n"
"\n"
-"WARNING: For compatibility with previous versions of Subversion,\n"
-"copies performed using two working copy paths (WC -> WC) will not\n"
-"contact the repository. As such, they may not, by default, be able\n"
-"to propagate merge tracking information from the source of the copy\n"
-"to the destination.\n"
+" WARNING: For compatibility with previous versions of Subversion,\n"
+" copies performed using two working copy paths (WC -> WC) will not\n"
+" contact the repository. As such, they may not, by default, be able\n"
+" to propagate merge tracking information from the source of the copy\n"
+" to the destination.\n"
msgstr ""
"Dupliziert etwas in der Arbeitskopie oder im Projektarchiv unter\n"
"Beibehaltung der Historie.\n"
@@ -8328,7 +10172,7 @@
"standardmäßig nicht in der Lage sein, Zusammenführungsinformationen\n"
"von der Quelle der Kopie in das Ziel weiterzureichen.\n"
-#: ../svn/main.c:505
+#: ../svn/svn.c:520
msgid ""
"Remove files and directories from version control.\n"
"usage: 1. delete PATH...\n"
@@ -8359,7 +10203,7 @@
" 2. Jedes mit einer URL angegebene Element wird mittels sofortiger\n"
" Übertragung aus dem Projektarchiv entfernt.\n"
-#: ../svn/main.c:521
+#: ../svn/svn.c:536
msgid ""
"Display the differences between two revisions or paths.\n"
"usage: 1. diff [-c M | -r N[:M]] [TARGET[@REV]...]\n"
@@ -8412,7 +10256,7 @@
" Verwenden Sie einfach »svn diff«, um lokale Änderungen in einer Arbeitskopie\n"
" anzuzeigen.\n"
-#: ../svn/main.c:549
+#: ../svn/svn.c:565
msgid ""
"Create an unversioned copy of a tree.\n"
"usage: 1. export [-r REV] URL[@PEGREV] [PATH]\n"
@@ -8451,7 +10295,7 @@
"\n"
" PEGREV gibt an, in welcher Revision das Ziel zuerst gesucht wird.\n"
-#: ../svn/main.c:571
+#: ../svn/svn.c:587
msgid ""
"Describe the usage of this program or its subcommands.\n"
"usage: help [SUBCOMMAND...]\n"
@@ -8459,7 +10303,7 @@
"Beschreibt die Anwendung dieses Programms und seiner Unterbefehle.\n"
"Aufruf: help [UNTERBEFEHL...]\n"
-#: ../svn/main.c:577
+#: ../svn/svn.c:593
msgid ""
"Commit an unversioned file or tree into the repository.\n"
"usage: import [PATH] URL\n"
@@ -8484,7 +10328,7 @@
" Nichtversionierbare Elemente wie Gerätedateien und Pipes werden ignoriert,\n"
" falls --force angegeben wird.\n"
-#: ../svn/main.c:591
+#: ../svn/svn.c:607
msgid ""
"Display information about a local or remote item.\n"
"usage: info [TARGET[@REV]...]\n"
@@ -8505,7 +10349,7 @@
# FIXME: "looked up" ist überall leicht unterschiedlich übersetzt
# Ich (Jens) bevorzuge "gesucht" statt "nachgeschlagen" oder "durchsucht", "nachgeschaut"
# FIXME: Standardsätze sollten eigene msgid haben!
-#: ../svn/main.c:601
+#: ../svn/svn.c:617
msgid ""
"List directory entries in the repository.\n"
"usage: list [TARGET[@REV]...]\n"
@@ -8545,7 +10389,12 @@
" Größe (in Bytes)\n"
" Datum und Zeit der letzten Übertragung\n"
-#: ../svn/main.c:622
+#: ../svn/svn.c:637
+#, fuzzy
+msgid "include externals definitions"
+msgstr "»svn:externals«-Definitionen ignorieren"
+
+#: ../svn/svn.c:640
msgid ""
"Lock working copy paths or URLs in the repository, so that\n"
"no other user can commit changes to them.\n"
@@ -8559,24 +10408,21 @@
"\n"
" Benutze --force, um eine bereits vorhandene Sperre zu stehlen.\n"
-#: ../svn/main.c:628
+#: ../svn/svn.c:646
msgid "read lock comment from file ARG"
msgstr "Sperrkommentar aus Datei PAR lesen"
-#: ../svn/main.c:629
+#: ../svn/svn.c:647
msgid "specify lock comment ARG"
msgstr "PAR als Sperrkommentar verwenden"
-#: ../svn/main.c:630
+#: ../svn/svn.c:648
msgid "force validity of lock comment source"
msgstr ""
"Gültigkeit der Quelle für die Sperrmeldung\n"
" erzwingen"
-# FIXME: behaviour oder behavior?
-# www.example.com is a reserved URL, let's not translate it.
-#: ../svn/main.c:633
-#, fuzzy
+#: ../svn/svn.c:651
msgid ""
"Show the log messages for a set of revision(s) and/or path(s).\n"
"usage: 1. log [PATH][@REV]\n"
@@ -8607,88 +10453,338 @@
" follow copy history by default. Use --stop-on-copy to disable this\n"
" behavior, which can be useful for determining branchpoints.\n"
"\n"
+" The --depth option is only valid in combination with the --diff option\n"
+" and limits the scope of the displayed diff to the specified depth.\n"
+"\n"
+" If the --search option is used, log messages are displayed only if the\n"
+" provided search pattern matches any of the author, date, log message\n"
+" text (unless --quiet is used), or, if the --verbose option is also\n"
+" provided, a changed path.\n"
+" The search pattern may include \"glob syntax\" wildcards:\n"
+" ? matches any single character\n"
+" * matches a sequence of arbitrary characters\n"
+" [abc] matches any of the characters listed inside the brackets\n"
+" If multiple --search options are provided, a log message is shown if\n"
+" it matches any of the provided search patterns. If the --search-and\n"
+" option is used, that option's argument is combined with the pattern\n"
+" from the previous --search or --search-and option, and a log message\n"
+" is shown only if it matches the combined search pattern.\n"
+" If --limit is used in combination with --search, --limit restricts the\n"
+" number of log messages searched, rather than restricting the output\n"
+" to a particular number of matching log messages.\n"
+"\n"
" Examples:\n"
-" svn log\n"
-" svn log foo.c\n"
-" svn log bar.c@42\n"
-" svn log http://www.example.com/repo/project/foo.c\n"
-" svn log http://www.example.com/repo/project foo.c bar.c\n"
-" svn log http://www.example.com/repo/project@50 foo.c bar.c\n"
+"\n"
+" Show the latest 5 log messages for the current working copy\n"
+" directory and display paths changed in each commit:\n"
+" svn log -l 5 -v\n"
+"\n"
+" Show the log for bar.c as of revision 42:\n"
+" svn log bar.c@42\n"
+"\n"
+" Show log messages and diffs for each commit to foo.c:\n"
+" svn log --diff http://www.example.com/repo/project/foo.c\n"
+" (Because the above command uses a full URL it does not require\n"
+" a working copy.)\n"
+"\n"
+" Show log messages for the children foo.c and bar.c of the directory\n"
+" '/trunk' as it appeared in revision 50, using the ^/ URL shortcut:\n"
+" svn log ^/trunk@50 foo.c bar.c\n"
+"\n"
+" Show the log messages for any incoming changes to foo.c during the\n"
+" next 'svn update':\n"
+" svn log -r BASE:HEAD foo.c\n"
+"\n"
+" Show the log message for the revision in which /branches/foo\n"
+" was created:\n"
+" svn log --stop-on-copy --limit 1 -r0:HEAD ^/branches/foo\n"
msgstr ""
-"Zeigt die Logmeldungen für eine Menge von Revisionen und/oder Dateien.\n"
-"Aufruf: 1. log [PFAD]\n"
-" 2. log URL[@REV] [PFAD...]\n"
-"\n"
-" 1. Gibt die Logmeldungen für einen lokalen PFAD aus (Vorgabe: ».«).\n"
-" Die Vorgabe für den Revisionsbereich ist BASE:1.\n"
-"\n"
-" 2. Gibt die Logmeldungen für die PFADe (Vorgabe: ».«) unterhalb der URL aus.\n"
-" Falls angegeben, bestimmt REV, in welcher Revision die URL zuerst\n"
-" durchsucht wird und der Standardrevisionsbereich ist REV:1. Andernfalls\n"
-" wird die URL in HEAD gesucht und die Vorgabe für den Revisionsbereich\n"
-" ist HEAD:1.\n"
-"\n"
-" Mehrere »-c«- oder »-r«-Optionen dürfen angegeben werden (aber keine\n"
-" Kombination von »-c« und »-r«) und das Mischen von vor- und\n"
-" rückwärtigen Bereichen ist erlaubt.\n"
-"\n"
-" Mit -v werden auch die betroffenen Pfade mit jeder Logmeldung ausgegeben.\n"
-" Mit -q wird die Logmeldung selbst nicht ausgegeben (Hinweis: Diese Option\n"
-" ist kompatibel mit -v).\n"
-"\n"
-" Jede Logmeldung wird nur einmal ausgegeben, selbst wenn mehr als einer\n"
-" der betroffenen Pfade explizit angefragt wurde. Logs folgen per Vorgabe\n"
-" der Historie von Kopien. Benutzen Sie »--stop-on-copy«, um dieses Verhalten,\n"
-" z.B. zum Auffinden von Verzweigungen, zu deaktivieren.\n"
-"\n"
-" Beispiele:\n"
-" svn log\n"
-" svn log foo.c\n"
-" svn log http://www.example.com/repo/projekt/foo.c\n"
-" svn log http://www.example.com/repo/projekt foo.c bar.c\n"
-#: ../svn/main.c:672
+#: ../svn/svn.c:729
msgid "retrieve revision property ARG"
msgstr "Revisionseigenschaft PAR abfragen"
-#: ../svn/main.c:673
+#: ../svn/svn.c:730
msgid "the change made in revision ARG"
msgstr "die in Revision PAR durchgeführte Änderung"
-# FIXME: WCPATH oder WC_PATH?
-#: ../svn/main.c:676
-#, fuzzy
+#. For this large section, let's keep it unindented for easier
+#. * viewing/editing. It has been vim-treated with a textwidth=75 and 'gw'
+#. * (with quotes and newlines removed).
+#: ../svn/svn.c:736
msgid ""
-"Apply the differences between two sources to a working copy path.\n"
-"usage: 1. merge sourceURL1[@N] sourceURL2[@M] [WCPATH]\n"
-" 2. merge sourceWCPATH1@N sourceWCPATH2@M [WCPATH]\n"
-" 3. merge [-c M[,N...] | -r N:M ...] SOURCE[@REV] [WCPATH]\n"
+"Merge changes into a working copy.\n"
+"usage: 1. merge SOURCE[@REV] [TARGET_WCPATH]\n"
+" (the 'automatic' merge)\n"
+" 2. merge [-c M[,N...] | -r N:M ...] SOURCE[@REV] [TARGET_WCPATH]\n"
+" (the 'cherry-pick' merge)\n"
+" 3. merge SOURCE1[@REV1] SOURCE2[@REV2] [TARGET_WCPATH]\n"
+" (the '2-URL' merge)\n"
"\n"
-" 1. In the first form, the source URLs are specified at revisions\n"
-" N and M. These are the two sources to be compared. The revisions\n"
-" default to HEAD if omitted.\n"
+" 1. This form, with one source path and no revision range, is called\n"
+" an 'automatic' merge:\n"
"\n"
-" 2. In the second form, the URLs corresponding to the source working\n"
-" copy paths define the sources to be compared. The revisions must\n"
-" be specified.\n"
+" svn merge SOURCE[@REV] [TARGET_WCPATH]\n"
"\n"
-" 3. In the third form, SOURCE can be either a URL or a working copy\n"
-" path (in which case its corresponding URL is used). SOURCE (in\n"
-" revision REV) is compared as it existed between revisions N and M\n"
-" for each revision range provided. If REV is not specified, HEAD\n"
-" is assumed. '-c M' is equivalent to '-r <M-1>:M', and '-c -M'\n"
-" does the reverse: '-r M:<M-1>'. If no revision ranges are\n"
-" specified, the default range of 0:REV is used. Multiple '-c'\n"
-" and/or '-r' options may be specified, and mixing of forward\n"
-" and reverse ranges is allowed.\n"
+" The automatic merge is used for the 'sync' and 'reintegrate' merges\n"
+" in the 'feature branch' pattern described below. It finds all the\n"
+" changes on the source branch that have not already been merged to the\n"
+" target branch, and merges them into the working copy. Merge tracking\n"
+" is used to know which changes have already been merged.\n"
"\n"
-" WCPATH is the working copy path that will receive the changes.\n"
-" If WCPATH is omitted, a default value of '.' is assumed, unless\n"
-" the sources have identical basenames that match a file within '.':\n"
-" in which case, the differences will be applied to that file.\n"
+" SOURCE specifies the branch from where the changes will be pulled, and\n"
+" TARGET_WCPATH specifies a working copy of the target branch to which\n"
+" the changes will be applied. Normally SOURCE and TARGET_WCPATH should\n"
+" each correspond to the root of a branch. (If you want to merge only a\n"
+" subtree, then the subtree path must be included in both SOURCE and\n"
+" TARGET_WCPATH; this is discouraged, to avoid subtree mergeinfo.)\n"
"\n"
-" For each merged item a line will be printed with characters reporting\n"
-" the action taken. These characters have the following meaning:\n"
+" SOURCE is usually a URL. The optional '@REV' specifies both the peg\n"
+" revision of the URL and the latest revision that will be considered\n"
+" for merging; if REV is not specified, the HEAD revision is assumed. If\n"
+" SOURCE is a working copy path, the corresponding URL of the path is\n"
+" used, and the default value of 'REV' is the base revision (usually the\n"
+" revision last updated to).\n"
+"\n"
+" TARGET_WCPATH is a working copy path; if omitted, '.' is assumed. In\n"
+" normal usage the working copy should be up to date, at a single\n"
+" revision, with no local modifications and no switched subtrees.\n"
+"\n"
+" - The 'Feature Branch' Merging Pattern -\n"
+"\n"
+" In this commonly used work flow, known also as the 'development\n"
+" branch' pattern, a developer creates a branch and commits a series of\n"
+" changes that implement a new feature. The developer periodically\n"
+" merges all the latest changes from the parent branch so as to keep the\n"
+" development branch up to date with those changes. When the feature is\n"
+" complete, the developer performs a merge from the feature branch to\n"
+" the parent branch to re-integrate the changes.\n"
+"\n"
+" parent --+----------o------o-o-------------o--\n"
+" \\ \\ \\ /\n"
+" \\ merge merge merge\n"
+" \\ \\ \\ /\n"
+" feature +--o-o-------o----o-o----o-------\n"
+"\n"
+" A merge from the parent branch to the feature branch is called a\n"
+" 'sync' or 'catch-up' merge, and a merge from the feature branch to the\n"
+" parent branch is called a 'reintegrate' merge.\n"
+"\n"
+" - Sync Merge Example -\n"
+" ............\n"
+" . .\n"
+" trunk --+------------L--------------R------\n"
+" \\ \\\n"
+" \\ |\n"
+" \\ v\n"
+" feature +------------------------o-----\n"
+" r100 r200\n"
+"\n"
+" Subversion will locate all the changes on 'trunk' that have not yet\n"
+" been merged into the 'feature' branch. In this case that is a single\n"
+" range, r100:200. In the diagram above, L marks the left side (trunk@100)\n"
+" and R marks the right side (trunk@200) of the merge source. The\n"
+" difference between L and R will be applied to the target working copy\n"
+" path. In this case, the working copy is a clean checkout of the entire\n"
+" 'feature' branch.\n"
+"\n"
+" To perform this sync merge, have a clean working copy of the feature\n"
+" branch and run the following command in its top-level directory:\n"
+"\n"
+" svn merge ^/trunk\n"
+"\n"
+" Note that the merge is now only in your local working copy and still\n"
+" needs to be committed to the repository so that it can be seen by\n"
+" others. You can review the changes and you may have to resolve\n"
+" conflicts before you commit the merge.\n"
+"\n"
+" - Reintegrate Merge Example -\n"
+"\n"
+" The feature branch was last synced with trunk up to revision X. So the\n"
+" difference between trunk@X and feature@HEAD contains the complete set\n"
+" of changes that implement the feature, and no other changes. These\n"
+" changes are applied to trunk.\n"
+"\n"
+" rW rX\n"
+" trunk ------+--------------------L------------------o\n"
+" \\ . ^\n"
+" \\ ............. /\n"
+" \\ . /\n"
+" feature +--------------------------------R\n"
+"\n"
+" In the diagram above, L marks the left side (trunk@X) and R marks the\n"
+" right side (feature@HEAD) of the merge. The difference between the\n"
+" left and right side is merged into trunk, the target.\n"
+"\n"
+" To perform the merge, have a clean working copy of trunk and run the\n"
+" following command in its top-level directory:\n"
+"\n"
+" svn merge ^/feature\n"
+"\n"
+" To prevent unnecessary merge conflicts, a reintegrate merge requires\n"
+" that TARGET_WCPATH is not a mixed-revision working copy, has no local\n"
+" modifications, and has no switched subtrees.\n"
+"\n"
+" A reintegrate merge also requires that the source branch is coherently\n"
+" synced with the target -- in the above example, this means that all\n"
+" revisions between the branch point W and the last merged revision X\n"
+" are merged to the feature branch, so that there are no unmerged\n"
+" revisions in-between.\n"
+"\n"
+"\n"
+" 2. This form is called a 'cherry-pick' merge:\n"
+"\n"
+" svn merge [-c M[,N...] | -r N:M ...] SOURCE[@REV] [TARGET_WCPATH]\n"
+"\n"
+" A cherry-pick merge is used to merge specific revisions (or revision\n"
+" ranges) from one branch to another. By default, this uses merge\n"
+" tracking to automatically skip any revisions that have already been\n"
+" merged to the target; you can use the --ignore-ancestry option to\n"
+" disable such skipping.\n"
+"\n"
+" SOURCE is usually a URL. The optional '@REV' specifies only the peg\n"
+" revision of the URL and does not affect the merge range; if REV is not\n"
+" specified, the HEAD revision is assumed. If SOURCE is a working copy\n"
+" path, the corresponding URL of the path is used, and the default value\n"
+" of 'REV' is the base revision (usually the revision last updated to).\n"
+"\n"
+" TARGET_WCPATH is a working copy path; if omitted, '.' is assumed.\n"
+"\n"
+" The revision ranges to be merged are specified by the '-r' and/or '-c'\n"
+" options. '-r N:M' refers to the difference in the history of the\n"
+" source branch between revisions N and M. You can use '-c M' to merge\n"
+" single revisions: '-c M' is equivalent to '-r <M-1>:M'. Each such\n"
+" difference is applied to TARGET_WCPATH.\n"
+"\n"
+" If the mergeinfo in TARGET_WCPATH indicates that revisions within the\n"
+" range were already merged, changes made in those revisions are not\n"
+" merged again. If needed, the range is broken into multiple sub-ranges,\n"
+" and each sub-range is merged separately.\n"
+"\n"
+" A 'reverse range' can be used to undo changes. For example, when\n"
+" source and target refer to the same branch, a previously committed\n"
+" revision can be 'undone'. In a reverse range, N is greater than M in\n"
+" '-r N:M', or the '-c' option is used with a negative number: '-c -M'\n"
+" is equivalent to '-r M:<M-1>'.\n"
+"\n"
+" Multiple '-c' and/or '-r' options may be specified and mixing of\n"
+" forward and reverse ranges is allowed.\n"
+"\n"
+" - Cherry-pick Merge Example -\n"
+"\n"
+" A bug has been fixed on trunk in revision 50. This fix needs to\n"
+" be merged from trunk onto the release branch.\n"
+"\n"
+" 1.x-release +-----------------------o-----\n"
+" / ^\n"
+" / |\n"
+" / |\n"
+" trunk ------+--------------------------LR-----\n"
+" r50\n"
+"\n"
+" In the above diagram, L marks the left side (trunk@49) and R marks the\n"
+" right side (trunk@50) of the merge. The difference between the left\n"
+" and right side is applied to the target working copy path.\n"
+"\n"
+" Note that the difference between revision 49 and 50 is exactly those\n"
+" changes that were committed in revision 50, not including changes\n"
+" committed in revision 49.\n"
+"\n"
+" To perform the merge, have a clean working copy of the release branch\n"
+" and run the following command in its top-level directory; remember\n"
+" that the default target is '.':\n"
+"\n"
+" svn merge -c50 ^/trunk\n"
+"\n"
+" You can also cherry-pick several revisions and/or revision ranges:\n"
+"\n"
+" svn merge -c50,54,60 -r65:68 ^/trunk\n"
+"\n"
+"\n"
+" 3. This form is called a '2-URL merge':\n"
+"\n"
+" svn merge SOURCE1[@REV1] SOURCE2[@REV2] [TARGET_WCPATH]\n"
+"\n"
+" You should use this merge variant only if the other variants do not\n"
+" apply to your situation, as this variant can be quite complex to\n"
+" master.\n"
+"\n"
+" Two source URLs are specified, identifying two trees on the same\n"
+" branch or on different branches. The trees are compared and the\n"
+" difference from SOURCE1@REV1 to SOURCE2@REV2 is applied to the\n"
+" working copy of the target branch at TARGET_WCPATH. The target\n"
+" branch may be the same as one or both sources, or different again.\n"
+" The three branches involved can be completely unrelated.\n"
+"\n"
+" If TARGET_WCPATH is omitted, a default value of '.' is assumed.\n"
+" However, in the special case where both sources refer to a file node\n"
+" with the same name and a file with the same name is also found within\n"
+" '.', the differences will be applied to that local file. The source\n"
+" revisions REV1 and REV2 default to HEAD if omitted.\n"
+"\n"
+" SOURCE1 and/or SOURCE2 can also be specified as a working copy path,\n"
+" in which case the merge source URL is derived from the working copy.\n"
+"\n"
+" - 2-URL Merge Example -\n"
+"\n"
+" Two features have been developed on separate branches called 'foo' and\n"
+" 'bar'. It has since become clear that 'bar' should be combined with\n"
+" the 'foo' branch for further development before reintegration.\n"
+"\n"
+" Although both feature branches originate from trunk, they are not\n"
+" directly related -- one is not a direct copy of the other. A 2-URL\n"
+" merge is necessary.\n"
+"\n"
+" The 'bar' branch has been synced with trunk up to revision 500.\n"
+" (If this revision number is not known, it can be located using the\n"
+" 'svn log' and/or 'svn mergeinfo' commands.)\n"
+" The difference between trunk@500 and bar@HEAD contains the complete\n"
+" set of changes related to feature 'bar', and no other changes. These\n"
+" changes are applied to the 'foo' branch.\n"
+"\n"
+" foo +-----------------------------------o\n"
+" / ^\n"
+" / /\n"
+" / r500 /\n"
+" trunk ------+------+-----------------L---------> /\n"
+" \\ . /\n"
+" \\ ............ /\n"
+" \\ . /\n"
+" bar +-----------------------------------R\n"
+"\n"
+" In the diagram above, L marks the left side (trunk@500) and R marks\n"
+" the right side (bar@HEAD) of the merge. The difference between the\n"
+" left and right side is applied to the target working copy path, in\n"
+" this case a working copy of the 'foo' branch.\n"
+"\n"
+" To perform the merge, have a clean working copy of the 'foo' branch\n"
+" and run the following command in its top-level directory:\n"
+"\n"
+" svn merge ^/trunk@500 ^/bar\n"
+"\n"
+" The exact changes applied by a 2-URL merge can be previewed with svn's\n"
+" diff command, which is a good idea to verify if you do not have the\n"
+" luxury of a clean working copy to merge to. In this case:\n"
+"\n"
+" svn diff ^/trunk@500 ^/bar@HEAD\n"
+"\n"
+"\n"
+" The following applies to all types of merges:\n"
+"\n"
+" To prevent unnecessary merge conflicts, svn merge requires that\n"
+" TARGET_WCPATH is not a mixed-revision working copy. Running 'svn update'\n"
+" before starting a merge ensures that all items in the working copy are\n"
+" based on the same revision.\n"
+"\n"
+" If possible, you should have no local modifications in the merge's target\n"
+" working copy prior to the merge, to keep things simpler. It will be\n"
+" easier to revert the merge and to understand the branch's history.\n"
+"\n"
+" Switched sub-paths should also be avoided during merging, as they may\n"
+" cause incomplete merges and create subtree mergeinfo.\n"
+"\n"
+" For each merged item a line will be printed with characters reporting the\n"
+" action taken. These characters have the following meaning:\n"
"\n"
" A Added\n"
" D Deleted\n"
@@ -8704,71 +10800,64 @@
" the first and second columns indicate textual conflicts in files\n"
" and in property values, respectively.\n"
"\n"
-" NOTE: Subversion will only record metadata to track the merge\n"
-" if the two sources are on the same line of history -- if the\n"
-" first source is an ancestor of the second, or vice-versa. This is\n"
-" guaranteed to be the case when using the third form listed above.\n"
-" The --ignore-ancestry option overrides this, forcing Subversion to\n"
-" regard the sources as unrelated and not to track the merge.\n"
+" - Merge Tracking -\n"
+"\n"
+" Subversion uses the svn:mergeinfo property to track merge history. This\n"
+" property is considered at the start of a merge to determine what to merge\n"
+" and it is updated at the conclusion of the merge to describe the merge\n"
+" that took place. Mergeinfo is used only if the two sources are on the\n"
+" same line of history -- if the first source is an ancestor of the second,\n"
+" or vice-versa (i.e. if one has originally been created by copying the\n"
+" other). This is verified and enforced when using sync merges and\n"
+" reintegrate merges.\n"
+"\n"
+" The --ignore-ancestry option prevents merge tracking and thus ignores\n"
+" mergeinfo, neither considering it nor recording it.\n"
+"\n"
+" - Merging from foreign repositories -\n"
+"\n"
+" Subversion does support merging from foreign repositories.\n"
+" While all merge source URLs must point to the same repository, the merge\n"
+" target working copy may come from a different repository than the source.\n"
+" However, there are some caveats. Most notably, copies made in the\n"
+" merge source will be transformed into plain additions in the merge\n"
+" target. Also, merge-tracking is not supported for merges from foreign\n"
+" repositories.\n"
msgstr ""
-"Wendet die Unterschiede zwischen zwei Quellen auf einen Arbeitskopiepfad\n"
-"an.\n"
-"Aufruf: 1. merge QuellURL1[@N] QuellURL2[@M] [AKPfad]\n"
-" 2. merge QuellAKPfad1@N QuellAKPfad2@M [AKPfad]\n"
-" 3. merge [-c M[,N...] | -r N:M ...] QUELLE[@REV] [AKPfad]\n"
-"\n"
-" 1. In der ersten Form werden die Quell-URLs in den Revisionen\n"
-" N und M angegeben. Dies sind die beiden Quellen, die verglichen werden.\n"
-" Die Revisionen entsprechen HEAD, wenn keine Nummern angegeben wurden.\n"
-"\n"
-" 2. In der zweiten Form werden die den Arbeitskopiepfaden entsprechenden\n"
-" URLs miteinander verglichen. Die Revisionen müssen angegeben werden.\n"
-"\n"
-" 3. In der dritten Form kann QUELLE eine URL oder ein Arbeitskopiepfad\n"
-" (in diesem Fall wird die entsprechende URL verwendet) sein. QUELLE\n"
-" (in Revision REV) wird verglichen, wie es zwischen den Revisionen N\n"
-" und M für jeden angegebenen Revisionsbereich existierte. Ohne Angabe\n"
-" von REV wird HEAD verwendet. Die Option »-c M« ist äquivalent zu\n"
-" »-r <M-1>:M« und »-c -M« kehrt dies um: »-r M:<M-1>«. Falls keine\n"
-" Revisionsbereiche angegeben wurden, wird 0:REV verwendet. Mehrere\n"
-" Angaben von »-c« und/oder »-r« sind möglich und das Mischen von\n"
-" vor- und rückwärtigen Bereichen ist erlaubt.\n"
-"\n"
-" AKPfad ist der Arbeitskopiepfad, in den die Änderungen geschrieben werden.\n"
-" Die Vorgabe für AKPfad ist ».«, es sei denn, die Quellen haben einen\n"
-" identischen Basisnamen, der eine Datei unterhalb von ».« beschreibt.\n"
-" In diesem Fall werden die Änderungen auf die gefundene Datei angewandt.\n"
-"\n"
-" ACHTUNG: Subversion wird nur Metadaten zum Verfolgen der Zusammenführung\n"
-" aufzeichnen, falls die zwei Quellen sich in der selben Historienabfolge\n"
-" befinden - falls die erste Quelle ein Vorgänger der zweiten ist oder\n"
-" umgekehrt. Dies ist garantiert der Fall, falls die dritte Form verwendet\n"
-" wird. Die Option --ignore-ancestry überschreibt dies und zwingt Subversion\n"
-" dazu, die Quellen als nicht zueinander bezogen zu betrachten und die\n"
-" Zusammenführung nicht aufzuzeichnen.\n"
-#: ../svn/main.c:732
+#: ../svn/svn.c:1051
msgid ""
"Display merge-related information.\n"
-"usage: mergeinfo SOURCE[@REV] [TARGET[@REV]]\n"
+"usage: 1. mergeinfo SOURCE[@REV] [TARGET[@REV]]\n"
+" 2. mergeinfo --show-revs=WHICH SOURCE[@REV] [TARGET[@REV]]\n"
"\n"
-" Display information related to merges (or potential merges) between\n"
-" SOURCE and TARGET (default: '.'). If the --show-revs option\n"
-" is not provided, display revisions which have been merged from\n"
-" SOURCE to TARGET; otherwise, display the type of information\n"
-" specified by the --show-revs option.\n"
+" 1. Summarize the history of merging between SOURCE and TARGET. The graph\n"
+" shows, from left to right:\n"
+" the youngest common ancestor of the branches;\n"
+" the latest full merge in either direction, and thus the common base\n"
+" that will be used for the next automatic merge;\n"
+" the repository path and revision number of the tip of each branch.\n"
+"\n"
+" 2. Print the revision numbers on SOURCE that have been merged to TARGET\n"
+" (with --show-revs=merged), or that have not been merged to TARGET\n"
+" (with --show-revs=eligible). Print only revisions in which there was\n"
+" at least one change in SOURCE.\n"
+"\n"
+" If --revision (-r) is provided, filter the displayed information to\n"
+" show only that which is associated with the revisions within the\n"
+" specified range. Revision numbers, dates, and the 'HEAD' keyword are\n"
+" valid range values.\n"
+"\n"
+" SOURCE and TARGET are the source and target branch URLs, respectively.\n"
+" (If a WC path is given, the corresponding base URL is used.) The default\n"
+" TARGET is the current working directory ('.'). REV specifies the revision\n"
+" to be considered the tip of the branch; the default for SOURCE is HEAD,\n"
+" and the default for TARGET is HEAD for a URL or BASE for a WC path.\n"
+"\n"
+" The depth can be 'empty' or 'infinity'; the default is 'empty'.\n"
msgstr ""
-"Anzeige relevanter Informationen zu Zusammenführungen.\n"
-"Aufruf: mergeinfo QUELLE[@REV] [ZIEL[@REV]]\n"
-"\n"
-" Zeigt Informationen zu Zusammenführungen (oder potentiellen\n"
-" Zusammenführungen) zwischen QUELLE und ZIEL (Standard: ».«) an.\n"
-" Falls die Option --show-revs nicht angegeben wurde, werden\n"
-" Revisionen, die von QUELLE nach ZIEL zusammengeführt wurden,\n"
-" angezeigt. Andernfalls wird die Art der Information angezeigt,\n"
-" die durch die Option --show-revs spezifiziert wurde.\n"
-#: ../svn/main.c:743
+#: ../svn/svn.c:1082
msgid ""
"Create a new directory under version control.\n"
"usage: 1. mkdir PATH...\n"
@@ -8800,44 +10889,29 @@
" In beiden Fällen müssen alle Zwischenverzeichnisse bereits existieren,\n"
" es sei denn, die Option --parents wurde angegeben.\n"
-#: ../svn/main.c:760
+#: ../svn/svn.c:1099
msgid ""
-"Move and/or rename something in working copy or repository.\n"
+"Move (rename) an item in a working copy or repository.\n"
"usage: move SRC... DST\n"
"\n"
-"When moving multiple sources, they will be added as children of DST,\n"
-"which must be a directory.\n"
-"\n"
-" Note: this subcommand is equivalent to a 'copy' and 'delete'.\n"
-" Note: the --revision option has no use and is deprecated.\n"
-"\n"
" SRC and DST can both be working copy (WC) paths or URLs:\n"
-" WC -> WC: move and schedule for addition (with history)\n"
-" URL -> URL: complete server-side rename.\n"
-" All the SRCs must be of the same type.\n"
-msgstr ""
-"Verschiebt oder benennt etwas in der Arbeitskopie oder\n"
-"im Projektarchiv um.\n"
-"Aufruf: move QUELLE... ZIEL\n"
+" WC -> WC: move an item in a working copy, as a local change to\n"
+" be committed later (with or without further changes)\n"
+" URL -> URL: move an item in the repository directly, immediately\n"
+" creating a new revision in the repository\n"
+" All the SRCs must be of the same type. When moving multiple sources,\n"
+" they will be added as children of DST, which must be a directory.\n"
"\n"
-"Beim Verschieben mehrerer Quellen, werden sie als Kinder von ZIEL\n"
-"hinzugefügt, was ein Verzeichnis sein muss.\n"
+" SRC and DST of WC -> WC moves must be committed in the same revision.\n"
+" Furthermore, WC -> WC moves will refuse to move a mixed-revision subtree.\n"
+" To avoid unnecessary conflicts, it is recommended to run 'svn update'\n"
+" to update the subtree to a single revision before moving it.\n"
+" The --allow-mixed-revisions option is provided for backward compatibility.\n"
"\n"
-" Hinweis: Dieser Unterbefehl entspricht der Folge »copy« und »delete«.\n"
-" Hinweis: Die Option --revision bewirkt nichts und wird missbilligt.\n"
-"\n"
-" QUELLE und ZIEL können beides Arbeitskopiepfade (AK) oder URLs sein:\n"
-" AK -> AK: Verschieben und zum Hinzufügen (mit Historie) einplanen\n"
-" URL -> URL: Vollständig serverseitiges Verschieben.\n"
-" Alle QUELLEn müssen vom selben Typ sein.\n"
-
-#: ../svn/main.c:777
-msgid ""
-"Permanently delete a specific node-revision from the repository.\n"
-"usage: obliterate URL@REV\n"
+" The --revision option has no use and is deprecated.\n"
msgstr ""
-#: ../svn/main.c:783
+#: ../svn/svn.c:1121
msgid ""
"Apply a patch to a working copy.\n"
"usage: patch PATCHFILE [WCPATH]\n"
@@ -8847,7 +10921,8 @@
"\n"
" A unidiff patch suitable for application to a working copy can be\n"
" produced with the 'svn diff' command or third-party diffing tools.\n"
-" Any non-unidiff content of PATCHFILE is ignored.\n"
+" Any non-unidiff content of PATCHFILE is ignored, except for Subversion\n"
+" property diffs as produced by 'svn diff'.\n"
"\n"
" Changes listed in the patch will either be applied or rejected.\n"
" If a change does not match at its exact line offset, it may be applied\n"
@@ -8874,9 +10949,16 @@
" for deletion. If the patch creates a new file, that file is scheduled\n"
" for addition. Use 'svn revert' to undo deletions and additions you\n"
" do not agree with.\n"
+"\n"
+" Hint: If the patch file was created with Subversion, it will contain\n"
+" the number of a revision N the patch will cleanly apply to\n"
+" (look for lines like '--- foo/bar.txt (revision N)').\n"
+" To avoid rejects, first update to the revision N using\n"
+" 'svn update -r N', apply the patch, and then update back to the\n"
+" HEAD revision. This way, conflicts can be resolved interactively.\n"
msgstr ""
-#: ../svn/main.c:823
+#: ../svn/svn.c:1169
msgid ""
"Remove a property from files, dirs, or revisions.\n"
"usage: 1. propdel PROPNAME [PATH...]\n"
@@ -8896,7 +10978,8 @@
# FIXME: s/prop/properties/
# "on repos revision"?
-#: ../svn/main.c:833
+#: ../svn/svn.c:1179
+#, fuzzy
msgid ""
"Edit a property with an external editor.\n"
"usage: 1. propedit PROPNAME TARGET...\n"
@@ -8906,7 +10989,7 @@
" 2. Edits unversioned remote prop on repos revision.\n"
" TARGET only determines which repository to access.\n"
"\n"
-"See 'svn help propset' for more on setting properties.\n"
+" See 'svn help propset' for more on setting properties.\n"
msgstr ""
"Ändert eine Eigenschaft mit einem externen Editor.\n"
"Aufruf: 1. propedit PROPNAME ZIEL...\n"
@@ -8919,7 +11002,8 @@
"\n"
"Siehe »svn help propset« für Weiteres zum Setzen von Eigenschaften.\n"
-#: ../svn/main.c:845
+#: ../svn/svn.c:1191
+#, fuzzy
msgid ""
"Print the value of a property on files, dirs, or revisions.\n"
"usage: 1. propget PROPNAME [TARGET[@REV]...]\n"
@@ -8930,13 +11014,15 @@
" 2. Prints unversioned remote prop on repos revision.\n"
" TARGET only determines which repository to access.\n"
"\n"
-" By default, this subcommand will add an extra newline to the end\n"
-" of the property values so that the output looks pretty. Also,\n"
-" whenever there are multiple paths involved, each property value\n"
-" is prefixed with the path with which it is associated. Use the\n"
-" --strict option to disable these beautifications (useful when\n"
-" redirecting a binary property value to a file, but available only\n"
-" if you supply a single TARGET to a non-recursive propget operation).\n"
+" With --verbose, the target path and the property name are printed on\n"
+" separate lines before each value, like 'svn proplist --verbose'.\n"
+" Otherwise, if there is more than one TARGET or a depth other than\n"
+" 'empty', the target path is printed on the same line before each value.\n"
+"\n"
+" By default, an extra newline is printed after the property value so that\n"
+" the output looks pretty. With a single TARGET and depth 'empty', you can\n"
+" use the --strict option to disable this (useful when redirecting a binary\n"
+" property value to a file, for example).\n"
msgstr ""
"Gibt den Eigenschaftswert von Dateien, Verzeichnissen oder Revisionen aus.\n"
"Aufruf: 1. propget PROPNAME [ZIEL[@REV]...]\n"
@@ -8956,7 +11042,17 @@
" einzelnes ZIEL für eine nicht-rekursive propget-Operation angegeben\n"
" wurde).\n"
-#: ../svn/main.c:865
+#: ../svn/svn.c:1211 ../svn/svn.c:1228
+msgid "print path, name and value on separate lines"
+msgstr ""
+
+#: ../svn/svn.c:1212
+#, fuzzy
+msgid "don't print an extra newline"
+msgstr "gibt den anhängenden Zeilenumbruch nicht aus"
+
+#: ../svn/svn.c:1215
+#, fuzzy
msgid ""
"List all properties on files, dirs, or revisions.\n"
"usage: 1. proplist [TARGET[@REV]...]\n"
@@ -8966,6 +11062,9 @@
" revision the target is first looked up.\n"
" 2. Lists unversioned remote props on repos revision.\n"
" TARGET only determines which repository to access.\n"
+"\n"
+" With --verbose, the property values are printed as well, like 'svn propget\n"
+" --verbose'. With --quiet, the paths are not printed.\n"
msgstr ""
"Listet alle Eigenschaften von Dateien, Verzeichnissen oder\n"
"Revisionen auf.\n"
@@ -8977,8 +11076,13 @@
" 2. Listet nicht versionierte Eigenschaften im Projektarchiv auf.\n"
" ZIEL legt nur das Projektarchiv fest, auf das zugegriffen wird.\n"
+#: ../svn/svn.c:1229
+#, fuzzy
+msgid "don't print the path"
+msgstr "Ziele nicht freigeben"
+
# FIXME: propchange?
-#: ../svn/main.c:876
+#: ../svn/svn.c:1232
#, fuzzy
msgid ""
"Set the value of a property on files, dirs, or revisions.\n"
@@ -8991,17 +11095,15 @@
"\n"
" The value may be provided with the --file option instead of PROPVAL.\n"
"\n"
-" Note: svn recognizes the following special versioned properties\n"
-" but will store any arbitrary properties set:\n"
-" svn:ignore - A newline separated list of file glob patterns to ignore.\n"
+" Property names starting with 'svn:' are reserved. Subversion recognizes\n"
+" the following special versioned properties on a file:\n"
" svn:keywords - Keywords to be expanded. Valid keywords are:\n"
" URL, HeadURL - The URL for the head version of the object.\n"
" Author, LastChangedBy - The last person to modify the file.\n"
" Date, LastChangedDate - The date/time the object was last modified.\n"
" Rev, Revision, - The last revision the object changed.\n"
-" LastChangedRevision\n"
-" Id - A compressed summary of the previous\n"
-" 4 keywords.\n"
+" LastChangedRevision\n"
+" Id - A compressed summary of the previous four.\n"
" Header - Similar to Id but includes the full URL.\n"
" svn:executable - If present, make the file executable. Use\n"
" 'svn propdel svn:executable PATH...' to clear.\n"
@@ -9010,39 +11112,37 @@
" whether to merge the file, and how to serve it from Apache.\n"
" A mimetype beginning with 'text/' (or an absent mimetype) is\n"
" treated as text. Anything else is treated as binary.\n"
-" svn:externals - A newline separated list of module specifiers,\n"
-" each of which consists of a URL and a relative directory path,\n"
-" similar to the syntax of the 'svn checkout' command:\n"
-" http://example.com/repos/zag foo/bar\n"
-" An optional peg revision may be appended to the URL to pin the\n"
-" external to a known revision:\n"
-" http://example.com/repos/zig@42 foo\n"
-" Relative URLs are indicated by starting the URL with one\n"
-" of the following strings:\n"
-" ../ to the parent directory of the extracted external\n"
-" ^/ to the repository root\n"
-" // to the scheme\n"
-" / to the server root\n"
-" The ambiguous format 'relative_path relative_path' is taken as\n"
-" 'relative_url relative_path' with peg revision support.\n"
-" Lines in externals definitions starting with the '#' character\n"
-" are considered comments and are ignored.\n"
-" Subversion 1.4 and earlier only support the following formats\n"
-" where peg revisions can only be specified using a -r modifier\n"
-" and where URLs cannot be relative:\n"
-" foo http://example.com/repos/zig\n"
-" foo/bar -r 1234 http://example.com/repos/zag\n"
-" Use of these formats is discouraged. They should only be used if\n"
-" interoperability with 1.4 clients is desired.\n"
" svn:needs-lock - If present, indicates that the file should be locked\n"
" before it is modified. Makes the working copy file read-only\n"
" when it is not locked. Use 'svn propdel svn:needs-lock PATH...'\n"
" to clear.\n"
"\n"
-" The svn:keywords, svn:executable, svn:eol-style, svn:mime-type and\n"
-" svn:needs-lock properties cannot be set on a directory. A non-recursive\n"
-" attempt will fail, and a recursive attempt will set the property\n"
-" only on the file children of the directory.\n"
+" Subversion recognizes the following special versioned properties on a\n"
+" directory:\n"
+" svn:ignore - A list of file glob patterns to ignore, one per line.\n"
+" svn:global-ignores - Like svn:ignore, but inheritable.\n"
+" svn:externals - A list of module specifiers, one per line, in the\n"
+" following format similar to the syntax of 'svn checkout':\n"
+" [-r REV] URL[@PEG] LOCALPATH\n"
+" Example:\n"
+" http://example.com/repos/zig foo/bar\n"
+" The LOCALPATH is relative to the directory having this property.\n"
+" To pin the external to a known revision, specify the optional REV:\n"
+" -r25 http://example.com/repos/zig foo/bar\n"
+" To unambiguously identify an element at a path which may have been\n"
+" subsequently deleted or renamed, specify the optional PEG revision:\n"
+" -r25 http://example.com/repos/zig@42 foo/bar\n"
+" The URL may be a full URL or a relative URL starting with one of:\n"
+" ../ to the parent directory of the extracted external\n"
+" ^/ to the repository root\n"
+" / to the server root\n"
+" // to the URL scheme\n"
+" Use of the following format is discouraged but is supported for\n"
+" interoperability with Subversion 1.4 and earlier clients:\n"
+" LOCALPATH [-r PEG] URL\n"
+" The ambiguous format 'relative_path relative_path' is taken as\n"
+" 'relative_url relative_path' with peg revision support.\n"
+" Lines starting with a '#' character are ignored.\n"
msgstr ""
"Setzt den Wert einer Eigenschaft von Dateien, Verzeichnissen\n"
"oder Revisionen\n"
@@ -9110,18 +11210,18 @@
" Ein nicht-rekursiver Versuch wird scheitern und ein rekursiver Versuch wird\n"
" die Eigenschaft nur für die Dateien in dem Verzeichnis setzen.\n"
-#: ../svn/main.c:940
+#: ../svn/svn.c:1292
msgid "read property value from file ARG"
msgstr "Lies Eigenschaftswert aus Datei PAR"
-#: ../svn/main.c:943
+#: ../svn/svn.c:1295
msgid ""
"Relocate the working copy to point to a different repository root URL.\n"
"usage: 1. relocate FROM-PREFIX TO-PREFIX [PATH...]\n"
" 2. relocate TO-URL [PATH]\n"
"\n"
" Rewrite working copy URL metadata to reflect a syntactic change only.\n"
-" This is used when repository's root URL changes (such as a scheme\n"
+" This is used when a repository's root URL changes (such as a scheme\n"
" or hostname change) but your working copy still reflects the same\n"
" directory within the same repository.\n"
"\n"
@@ -9130,7 +11230,7 @@
" complete old and new URLs if you wish.) Use 'svn info' to determine\n"
" the current working copy URL.\n"
"\n"
-" 2. TO-URL is the (complete) new repository URL to use for for PATH.\n"
+" 2. TO-URL is the (complete) new repository URL to use for PATH.\n"
"\n"
" Examples:\n"
" svn relocate http:// svn:// project1 project2\n"
@@ -9138,23 +11238,29 @@
" svn://svn.example.com/repo/project\n"
msgstr ""
-#: ../svn/main.c:966
+#: ../svn/svn.c:1318
msgid ""
"Resolve conflicts on working copy files or directories.\n"
-"usage: resolve --accept=ARG [PATH...]\n"
+"usage: resolve [PATH...]\n"
"\n"
-" Note: the --accept option is currently required.\n"
-msgstr ""
-"Auflösen von Konflikten in Arbeitskopiedateien oder -verzeichnissen.\n"
-"Aufruf: resolve --accept=PAR [PFAD...]\n"
-"\n"
-" Bemerkung: Die Option --accept wird zurzeit benötigt.\n"
-
-#: ../svn/main.c:971
-msgid "specify automatic conflict resolution source\n"
+" If no arguments are given, perform interactive conflict resolution for\n"
+" all conflicted paths in the working copy, with default depth 'infinity'.\n"
+" The --accept=ARG option prevents prompting and forces conflicts on PATH\n"
+" to resolved in the manner specified by ARG, with default depth 'empty'.\n"
msgstr ""
-#: ../svn/main.c:978
+#: ../svn/svn.c:1326
+#, fuzzy
+msgid ""
+"specify automatic conflict resolution source\n"
+" ('base', 'working', 'mine-conflict',\n"
+" 'theirs-conflict', 'mine-full', 'theirs-full')"
+msgstr ""
+"automatische Konfliktauflösungsaktion angeben\n"
+" (»base«, »working«, »mine-conflict«,\n"
+" »theirs-conflict«, »mine-full«, »theirs-full«)"
+
+#: ../svn/svn.c:1333
msgid ""
"Remove 'conflicted' state on working copy files or directories.\n"
"usage: resolved PATH...\n"
@@ -9174,13 +11280,14 @@
" übertragen werden kann. Dies wird zugunsten von »svn resolve --accept\n"
" working« missbilligt.\n"
-#: ../svn/main.c:988
+#: ../svn/svn.c:1343
+#, fuzzy
msgid ""
"Restore pristine working copy file (undo most local edits).\n"
"usage: revert PATH...\n"
"\n"
" Note: this subcommand does not require network access, and resolves\n"
-" any conflicted states. However, it does not restore removed directories.\n"
+" any conflicted states.\n"
msgstr ""
"Stellt eine Datei in der Arbeitskopie wieder her (macht die meisten\n"
"lokalen Änderungen rückgängig).\n"
@@ -9190,7 +11297,7 @@
" Konfliktzustände auf. Er kann jedoch keine gelöschten Verzeichnisse wieder\n"
" herstellen.\n"
-#: ../svn/main.c:996
+#: ../svn/svn.c:1351
#, fuzzy
msgid ""
"Print the status of working copy files and directories.\n"
@@ -9262,20 +11369,20 @@
"\n"
" Example output:\n"
" svn status wc\n"
-" M wc/bar.c\n"
-" A + wc/qax.c\n"
+" M wc/bar.c\n"
+" A + wc/qax.c\n"
"\n"
" svn status -u wc\n"
-" M 965 wc/bar.c\n"
-" * 965 wc/foo.c\n"
-" A + - wc/qax.c\n"
+" M 965 wc/bar.c\n"
+" * 965 wc/foo.c\n"
+" A + - wc/qax.c\n"
" Status against revision: 981\n"
"\n"
" svn status --show-updates --verbose wc\n"
-" M 965 938 kfogel wc/bar.c\n"
-" * 965 922 sussman wc/foo.c\n"
-" A + - 687 joe wc/qax.c\n"
-" 965 687 joe wc/zig.c\n"
+" M 965 938 kfogel wc/bar.c\n"
+" * 965 922 sussman wc/foo.c\n"
+" A + - 687 joe wc/qax.c\n"
+" 965 687 joe wc/zig.c\n"
" Status against revision: 981\n"
"\n"
" svn status\n"
@@ -9375,7 +11482,12 @@
" > lokal fehlend, eingehend editiert bei Aktualisierung\n"
" D wc/qax.c\n"
-#: ../svn/main.c:1090
+#: ../svn/svn.c:1443
+#, fuzzy
+msgid "don't print unversioned items"
+msgstr "Nicht versioniertes Objekt »%s« kann nicht rückgängig gemacht werden"
+
+#: ../svn/svn.c:1446
#, fuzzy
msgid ""
"Update the working copy to a different URL within the same repository.\n"
@@ -9402,6 +11514,10 @@
" Use the --set-depth option to set a new working copy depth on the\n"
" targets of this operation.\n"
"\n"
+" By default, Subversion will refuse to switch a working copy path to\n"
+" a new URL with which it shares no common version control ancestry.\n"
+" Use the '--ignore-ancestry' option to override this sanity check.\n"
+"\n"
" 2. The '--relocate' option is deprecated. This syntax is equivalent to\n"
" 'svn relocate FROM-PREFIX TO-PREFIX [PATH]'.\n"
"\n"
@@ -9450,7 +11566,7 @@
" Siehe auch »svn help update« für eine Liste möglicher Buchstaben,\n"
" die die durchgeführte Aktion beschreiben.\n"
-#: ../svn/main.c:1129
+#: ../svn/svn.c:1489
msgid ""
"Unlock working copy paths or URLs.\n"
"usage: unlock TARGET...\n"
@@ -9464,7 +11580,7 @@
# Parts of the text (--force and --set-depth) are shared with the
# switch help. Keep it consistent.
-#: ../svn/main.c:1136
+#: ../svn/svn.c:1496
#, fuzzy
msgid ""
"Bring changes from the repository into the working copy.\n"
@@ -9486,7 +11602,9 @@
"\n"
" Characters in the first column report about the item itself.\n"
" Characters in the second column report about properties of the item.\n"
-" A 'C' in the third column indicates a tree conflict, while a 'C' in\n"
+" A 'B' in the third column signifies that the lock for the file has\n"
+" been broken or stolen.\n"
+" A 'C' in the fourth column indicates a tree conflict, while a 'C' in\n"
" the first and second columns indicate textual conflicts in files\n"
" and in property values, respectively.\n"
"\n"
@@ -9502,6 +11620,12 @@
" are applied to the obstructing path. Obstructing paths are reported\n"
" in the first column with code 'E'.\n"
"\n"
+" If the specified update target is missing from the working copy but its\n"
+" immediate parent directory is present, checkout the target into its\n"
+" parent directory at the specified depth. If --parents is specified,\n"
+" create any missing parent directories of the target by checking them\n"
+" out, too, at depth=empty.\n"
+"\n"
" Use the --set-depth option to set a new working copy depth on the\n"
" targets of this operation.\n"
msgstr ""
@@ -9546,102 +11670,116 @@
" Arbeitskopieverzeichnisses nur erhöht werden (tiefer ineinander geschachtelt);\n"
" eine Verzeichnistiefe kann nicht reduziert werden.\n"
-#: ../svn/main.c:1177
+#: ../svn/svn.c:1546
+#, fuzzy
msgid ""
"Upgrade the metadata storage format for a working copy.\n"
-"usage: upgrade WCPATH...\n"
+"usage: upgrade [WCPATH...]\n"
+"\n"
+" Local modifications are preserved.\n"
msgstr ""
"Überführt die Metadaten einer Arbeitskopie in ein neues Speicherformat\n"
"Aufruf: upgrade AKPATH...\n"
-#: ../svn/main.c:1221 ../svnadmin/main.c:86 ../svnlook/main.c:354
-#: ../svnsync/main.c:263
+#: ../svn/svn.c:1592 ../svnadmin/svnadmin.c:88 ../svnlook/svnlook.c:376
+#: ../svnrdump/svnrdump.c:65 ../svnsync/svnsync.c:295
msgid "Caught signal"
msgstr "Abbruchsignal empfangen"
-#: ../svn/main.c:1340 ../svnlook/main.c:2321
+#: ../svn/svn.c:1743 ../svnlook/svnlook.c:2542
msgid "Non-numeric limit argument given"
msgstr "Nicht-numerische Bereichsgrenze angegeben"
-#: ../svn/main.c:1346 ../svnlook/main.c:2327
+#: ../svn/svn.c:1749 ../svnlook/svnlook.c:2548
msgid "Argument to --limit must be positive"
msgstr "Parameter für --limit muss positiv sein"
-#: ../svn/main.c:1367 ../svn/main.c:1642
+#: ../svn/svn.c:1770 ../svn/svn.c:2043
msgid "Can't specify -c with --old"
msgstr "-c kann nicht mit --old verwendet werden"
-#: ../svn/main.c:1391
+#: ../svn/svn.c:1801
#, c-format
msgid "Negative number in range (%s) not supported with -c"
msgstr "Negative Zahl im Bereich (%s) ist mit -c nicht unterstützt"
-#: ../svn/main.c:1404
+#: ../svn/svn.c:1814
#, c-format
msgid "Non-numeric change argument (%s) given to -c"
msgstr "Nicht-numerischer Parameter (%s) an -c übergeben"
-#: ../svn/main.c:1412
+#: ../svn/svn.c:1822
msgid "There is no change 0"
msgstr "Es gibt keine Änderung 0"
-#: ../svn/main.c:1457 ../svnadmin/main.c:1651 ../svnsync/main.c:1947
+#: ../svn/svn.c:1865 ../svnadmin/svnadmin.c:1957 ../svnrdump/svnrdump.c:939
+#: ../svnsync/svnsync.c:2056
#, c-format
msgid "Syntax error in revision argument '%s'"
msgstr "Syntaxfehler in Revisionsparameter »%s«"
-#: ../svn/main.c:1530 ../svn/main.c:1549
+#: ../svn/svn.c:1930 ../svn/svn.c:1949
#, c-format
msgid "Error converting depth from locale to UTF-8"
msgstr "Fehler beim Konvertieren der Tiefe aus Locale nach UTF-8"
-#: ../svn/main.c:1538
+#: ../svn/svn.c:1938
#, c-format
msgid "'%s' is not a valid depth; try 'empty', 'files', 'immediates', or 'infinity'"
msgstr "»%s« ist keine gültige Tiefe; versuchen Sie »empty«, »files«, »immediates« oder »infinity«"
-#: ../svn/main.c:1557
+#: ../svn/svn.c:1957
#, c-format
msgid "'%s' is not a valid depth; try 'exclude', 'empty', 'files', 'immediates', or 'infinity'"
msgstr "»%s« ist keine gültige Tiefe; versuchen Sie »exclude«, »empty«, »files«, »immediates« oder »infinity«"
-#: ../svn/main.c:1687
+#: ../svn/svn.c:2083
#, c-format
msgid "Syntax error in native-eol argument '%s'"
msgstr "Syntaxfehler im »native-eol« Parameter »%s«"
-#: ../svn/main.c:1742
+#: ../svn/svn.c:2102
+msgid "Changelist names must not be empty"
+msgstr "Namen von Änderungslisten dürfen nicht leer sein"
+
+#: ../svn/svn.c:2137
#, c-format
msgid "'%s' is not a valid --accept value"
msgstr "»%s« ist kein gültiger Wert für --accept"
-#: ../svn/main.c:1751
+#: ../svn/svn.c:2145
#, c-format
msgid "'%s' is not a valid --show-revs value"
msgstr "»%s« ist kein gültiger Wert für --show-revs"
-#: ../svn/main.c:1764
+#: ../svn/svn.c:2157
#, c-format
msgid "Invalid strip count '%s'"
msgstr "Ungültige Anzahl der zu entfernenden Komponenten »%s«"
-#: ../svn/main.c:1770
+#: ../svn/svn.c:2163
msgid "Argument to --strip must be positive"
msgstr "Parameter für --strip muss positiv sein"
-#: ../svn/main.c:1851 ../svndumpfilter/main.c:1395 ../svnlook/main.c:2399
-#: ../svnrdump/svnrdump.c:522
+#: ../svn/svn.c:2218 ../svnrdump/svnrdump.c:995 ../svnsync/svnsync.c:2100
+#, fuzzy
+msgid "--non-interactive and --force-interactive are mutually exclusive"
+msgstr "--relocate und --non-recursive (-N) schließen sich gegenseitig aus"
+
+#: ../svn/svn.c:2272 ../svndumpfilter/svndumpfilter.c:1479
+#: ../svnlook/svnlook.c:2644
#, c-format
msgid "Subcommand argument required\n"
msgstr "Unterbefehl benötigt einen Parameter\n"
-#: ../svn/main.c:1870 ../svnadmin/main.c:1787 ../svndumpfilter/main.c:1414
-#: ../svnlook/main.c:2418 ../svnrdump/svnrdump.c:541
+#: ../svn/svn.c:2289 ../svnadmin/svnadmin.c:2129
+#: ../svndumpfilter/svndumpfilter.c:1498 ../svnlook/svnlook.c:2663
+#: ../svnrdump/svnrdump.c:1043
#, c-format
msgid "Unknown command: '%s'\n"
msgstr "Unbekannter Befehl: »%s«\n"
-#: ../svn/main.c:1904
+#: ../svn/svn.c:2322
#, c-format
msgid ""
"Subcommand '%s' doesn't accept option '%s'\n"
@@ -9650,634 +11788,97 @@
"Unterbefehl »%s« akzeptiert die Option »%s« nicht\n"
"Geben Sie »svn help %s« für Hilfe ein.\n"
-#: ../svn/main.c:1919
+#: ../svn/svn.c:2336
msgid "Multiple revision arguments encountered; can't specify -c twice, or both -c and -r"
msgstr "Mehrere Revisionsparameter gefunden; bitte nicht zweimal -c oder gleichzeitig -r und -c angeben"
-#: ../svn/main.c:1931
+#: ../svn/svn.c:2348
msgid "--depth and --set-depth are mutually exclusive"
msgstr "--depth und --set-depth schließen sich gegenseitig aus"
-#: ../svn/main.c:1941
+#: ../svn/svn.c:2358
msgid "--with-all-revprops and --with-no-revprops are mutually exclusive"
msgstr "--with-all-revprops und --with-no-revprops schließen sich gegenseitig aus"
-#: ../svn/main.c:1951
+#: ../svn/svn.c:2368
msgid "--with-revprop and --with-no-revprops are mutually exclusive"
msgstr "--with-revprop und --with-no-revprops schließen sich gegenseitig aus"
-#: ../svn/main.c:1960 ../svnsync/main.c:2019
+#: ../svn/svn.c:2381
+#, fuzzy
+msgid "--message (-m) and --file (-F) are mutually exclusive"
+msgstr "--relocate und --non-recursive (-N) schließen sich gegenseitig aus"
+
+#: ../svn/svn.c:2390 ../svnrdump/svnrdump.c:1102 ../svnsync/svnsync.c:2151
msgid "--trust-server-cert requires --non-interactive"
msgstr "--trust-server-cert erfordert --non-interactive"
# TODO: Duplicated message!!!!
-#: ../svn/main.c:1970
+#: ../svn/svn.c:2400
msgid "--diff-cmd and --internal-diff are mutually exclusive"
msgstr "--diff-cmd und --internal-diff schließen sich gegenseitig aus"
-#: ../svn/main.c:2030
-msgid "Log message file is a versioned file; use '--force-log' to override"
-msgstr "Die Datei für die Logmeldung ist versioniert; geben Sie »--force-log« an, um sie zu verwenden"
-
-#: ../svn/main.c:2037
-msgid "Lock comment file is a versioned file; use '--force-log' to override"
-msgstr "Die Datei für den Sperrkommentar ist versioniert; geben Sie »--force-log« an, um sie zu verwenden"
-
-#: ../svn/main.c:2058
-msgid "The log message is a pathname (was -F intended?); use '--force-log' to override"
-msgstr "Die Logmeldung ist ein Pfad (war -F gemeint?); geben Sie »--force-log« an, um sie zu verwenden"
-
-#: ../svn/main.c:2065
-msgid "The lock comment is a pathname (was -F intended?); use '--force-log' to override"
-msgstr "Der Sperrkommentar ist ein Pfad (war -F gemeint?); geben Sie »--force-log« an, um ihn zu verwenden"
-
-#: ../svn/main.c:2079
+#: ../svn/svn.c:2447
msgid "--relocate and --depth are mutually exclusive"
msgstr "--relocate und --depth schließen sich gegenseitig aus"
-#: ../svn/main.c:2087
+#: ../svn/svn.c:2455
msgid "--relocate and --non-recursive (-N) are mutually exclusive"
msgstr "--relocate und --non-recursive (-N) schließen sich gegenseitig aus"
-#: ../svn/main.c:2171
+#: ../svn/svn.c:2556
+msgid "Log message file is a versioned file; use '--force-log' to override"
+msgstr "Die Datei für die Logmeldung ist versioniert; geben Sie »--force-log« an, um sie zu verwenden"
+
+#: ../svn/svn.c:2563
+msgid "Lock comment file is a versioned file; use '--force-log' to override"
+msgstr "Die Datei für den Sperrkommentar ist versioniert; geben Sie »--force-log« an, um sie zu verwenden"
+
+#: ../svn/svn.c:2584
+msgid "The log message is a pathname (was -F intended?); use '--force-log' to override"
+msgstr "Die Logmeldung ist ein Pfad (war -F gemeint?); geben Sie »--force-log« an, um sie zu verwenden"
+
+#: ../svn/svn.c:2591
+msgid "The lock comment is a pathname (was -F intended?); use '--force-log' to override"
+msgstr "Der Sperrkommentar ist ein Pfad (war -F gemeint?); geben Sie »--force-log« an, um ihn zu verwenden"
+
+#: ../svn/svn.c:2615
msgid "--auto-props and --no-auto-props are mutually exclusive"
msgstr "--auto-props und --no-auto-props schließen sich gegenseitig aus"
-#: ../svn/main.c:2185
-msgid "--reintegrate cannot be used with --ignore-ancestry or --record-only"
-msgstr "--reintegrate kann nicht mit --ignore-ancestry oder --record-only verwendet werden"
-
-#: ../svn/main.c:2193
-msgid "--reintegrate cannot be used with --ignore-ancestry"
-msgstr "--reintegrate kann nicht mit --ignore-ancestry verwendet werden"
-
-#: ../svn/main.c:2201
-msgid "--reintegrate cannot be used with --record-only"
-msgstr "--reintegrate kann nicht mit --record-only verwendet werden"
-
-#: ../svn/main.c:2325 ../svn/main.c:2331
+#: ../svn/svn.c:2728 ../svn/svn.c:2735
#, c-format
msgid "--accept=%s incompatible with --non-interactive"
msgstr "--accept=%s ist mit --non-interactive nicht kompatibel"
-#: ../svn/main.c:2358
-msgid "Try 'svn help' for more info"
+#: ../svn/svn.c:2775
+#, fuzzy, c-format
+msgid "Try 'svn help %s' for more information"
msgstr "Versuchen Sie »svn help« für weitere Informationen"
-#: ../svn/main.c:2368
-msgid "svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)\n"
+#: ../svn/svn.c:2781
+msgid "Please see the 'svn upgrade' command"
+msgstr ""
+
+#: ../svn/svn.c:2789
+#, fuzzy
+msgid "Run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)"
msgstr "svn: Starten Sie »svn cleanup«, um die Sperren zu entfernen (Aufruf: »svn help cleanup« für Details)\n"
-#: ../svn/merge-cmd.c:65
-msgid "-r and -c can't be used with --reintegrate"
-msgstr "-r und -c können nicht mit --reintegrate verwendet werden"
-
-#: ../svn/merge-cmd.c:120
-msgid "Merge source required"
-msgstr "Die Zusammenführungsquelle muss angegeben werden"
-
-#: ../svn/merge-cmd.c:166
-msgid "Second revision required"
-msgstr "Eine zweite Revision muss angegeben werden"
-
-#: ../svn/merge-cmd.c:175 ../svn/merge-cmd.c:208 ../svn/mergeinfo-cmd.c:84
-msgid "Too many arguments given"
-msgstr "Zu viele Parameter angegeben"
-
-#: ../svn/merge-cmd.c:197
-msgid "Cannot specify a revision range with two URLs"
-msgstr "Die Angabe eines Revisionsbereichs mit zwei URLs ist nicht möglich"
-
-#: ../svn/merge-cmd.c:224
-msgid "A working copy merge source needs an explicit revision"
-msgstr "Beim Zusammenführen von Arbeitskopien wird eine explizite Revision benötigt"
-
-#: ../svn/merge-cmd.c:284
-msgid "--depth cannot be used with --reintegrate"
-msgstr "--depth kann nicht mit --reintegrate verwendet werden"
-
-# TODO: merge messages!!!
-#: ../svn/merge-cmd.c:289
-msgid "--force cannot be used with --reintegrate"
-msgstr "--force kann nicht mit --reintegrate verwendet werden"
-
-#: ../svn/merge-cmd.c:294
-msgid "--reintegrate can only be used with a single merge source"
-msgstr "--reintegrate kann nur mit einer einzelnen Zusammenführungsquelle verwendet werden"
-
-# TODO: merge messages!!!
-#: ../svn/merge-cmd.c:298
-msgid "--allow-mixed-revisions cannot be used with --reintegrate"
-msgstr "--allow-mixed-revisions kann nicht mit --reintegrate verwendet werden"
-
-#: ../svn/mergeinfo-cmd.c:81
-msgid "Not enough arguments given"
-msgstr "Nicht genügend Parameter angegeben"
-
-#: ../svn/mkdir-cmd.c:89
-msgid "Try 'svn add' or 'svn add --non-recursive' instead?"
-msgstr "Versuchen Sie »svn add« oder »svn add --non-recursive«."
-
-#: ../svn/mkdir-cmd.c:95
-msgid "Try 'svn mkdir --parents' instead?"
-msgstr "Versuchen Sie »svn mkdir --parents« stattdessen?"
-
-#: ../svn/notify.c:82 ../svn/status-cmd.c:87
-msgid "Summary of conflicts:\n"
-msgstr "Konfliktübersicht:\n"
-
-#: ../svn/notify.c:86 ../svn/status-cmd.c:91
-#, c-format
-msgid " Text conflicts: %u\n"
-msgstr " Textkonflikte: %u\n"
-
-#: ../svn/notify.c:90 ../svn/status-cmd.c:95
-#, c-format
-msgid " Property conflicts: %u\n"
-msgstr " Eigenschaftskonflikte: %u\n"
-
-#: ../svn/notify.c:94 ../svn/status-cmd.c:99
-#, c-format
-msgid " Tree conflicts: %u\n"
-msgstr " Baumkonflikte: %u\n"
-
-#: ../svn/notify.c:98
-#, c-format
-msgid " Skipped paths: %u\n"
-msgstr " Übersprungene Pfade: %u\n"
-
-#: ../svn/notify.c:134
-#, c-format
-msgid "Skipped missing target: '%s'\n"
-msgstr "Fehlendes Ziel: »%s« übersprungen\n"
-
-#: ../svn/notify.c:141
-#, c-format
-msgid "Skipped target: '%s' -- copy-source is missing\n"
-msgstr "Ziel: »%s« übersprungen -- copy-source fehlt\n"
-
-#: ../svn/notify.c:148
-#, c-format
-msgid "Skipped '%s'\n"
-msgstr "Überspringe »%s«\n"
-
-#: ../svn/notify.c:211
-#, c-format
-msgid "Restored '%s'\n"
-msgstr "Wieder hergestellt »%s«\n"
-
-#: ../svn/notify.c:217
-#, c-format
-msgid "Reverted '%s'\n"
-msgstr "Rückgängig gemacht: »%s«\n"
-
-#: ../svn/notify.c:223
-#, c-format
-msgid "Failed to revert '%s' -- try updating instead.\n"
-msgstr "Wiederherstellen von »%s« schlug fehl -- Versuchen Sie statt dessen zu aktualisieren.\n"
-
-#: ../svn/notify.c:231
-#, c-format
-msgid "Resolved conflicted state of '%s'\n"
-msgstr "Konflikt von »%s« aufgelöst\n"
-
-#: ../svn/notify.c:320 ../svn/notify.c:360
-#, c-format
-msgid "> applied hunk ## -%lu,%lu +%lu,%lu ## with offset %s"
-msgstr "> Abschnitt ## -%lu,%lu +%lu,%lu ## mit Versatz %s angewandt"
-
-#: ../svn/notify.c:337 ../svn/notify.c:374
-#, c-format
-msgid "> applied hunk @@ -%lu,%lu +%lu,%lu @@ with offset %s"
-msgstr "> Abschnitt @@ -%lu,%lu +%lu,%lu @@ mit Versatz %s angewandt"
-
-#: ../svn/notify.c:395
-#, c-format
-msgid "> applied hunk ## -%lu,%lu +%lu,%lu ## with fuzz %d (%s)\n"
-msgstr "> Abschnitt ## -%lu,%lu +%lu,%lu ## mit Unschärfe %d (%s) angewandt\n"
-
-#: ../svn/notify.c:405
-#, c-format
-msgid "> applied hunk @@ -%lu,%lu +%lu,%lu @@ with fuzz %d\n"
-msgstr "> Abschnitt @@ -%lu,%lu +%lu,%lu @@ mit Unschärfe %d angewandt\n"
-
-#: ../svn/notify.c:423
-#, c-format
-msgid "> rejected hunk ## -%lu,%lu +%lu,%lu ## (%s)\n"
-msgstr "> Abschnitt ## -%lu,%lu +%lu,%lu ## (%s) zurückgewiesen\n"
-
-#: ../svn/notify.c:432
-#, c-format
-msgid "> rejected hunk @@ -%lu,%lu +%lu,%lu @@\n"
-msgstr "> Abschnitt @@ -%lu,%lu +%lu,%lu @@ zurückgewiesen\n"
-
-#: ../svn/notify.c:446
-#, c-format
-msgid "> hunk ## -%lu,%lu +%lu,%lu ## already applied (%s)\n"
-msgstr "> Abschnitt ## -%lu,%lu +%lu,%lu ## bereits angewandt (%s)\n"
-
-#: ../svn/notify.c:456
-#, c-format
-msgid "> hunk @@ -%lu,%lu +%lu,%lu @@ already applied\n"
-msgstr "> Abschnitt @@ -%lu,%lu +%lu,%lu @@ bereits angewandt\n"
-
-# Currently this is used for checkouts and switches too. If we
-# want different output, we'll have to add new actions.
-#: ../svn/notify.c:516
-#, c-format
-msgid ""
-"\n"
-"Fetching external item into '%s'\n"
-msgstr ""
-"\n"
-"Hole externen Verweis nach »%s«\n"
-
-#: ../svn/notify.c:542
-#, c-format
-msgid "Error handling externals definition for '%s':"
-msgstr "Fehler beim Umgang mit der Definition des externen Verweises für »%s«:"
-
-#: ../svn/notify.c:560
-#, c-format
-msgid "Exported external at revision %ld.\n"
-msgstr "Externer Verweis exportiert, Revision %ld.\n"
-
-#: ../svn/notify.c:561
-#, c-format
-msgid "Exported revision %ld.\n"
-msgstr "Exportiert, Revision %ld.\n"
-
-#: ../svn/notify.c:569
-#, c-format
-msgid "Checked out external at revision %ld.\n"
-msgstr "Externer Verweis ausgecheckt, Revision %ld.\n"
-
-#: ../svn/notify.c:570
-#, c-format
-msgid "Checked out revision %ld.\n"
-msgstr "Ausgecheckt, Revision %ld.\n"
-
-#: ../svn/notify.c:580
-#, c-format
-msgid "Updated external to revision %ld.\n"
-msgstr "Externer Verweis aktualisiert zu Revision %ld.\n"
-
-#: ../svn/notify.c:581
-#, c-format
-msgid "Updated to revision %ld.\n"
-msgstr "Aktualisiert zu Revision %ld.\n"
-
-#: ../svn/notify.c:589
-#, c-format
-msgid "External at revision %ld.\n"
-msgstr "Externer Verweis, Revision %ld.\n"
-
-#: ../svn/notify.c:590
-#, c-format
-msgid "At revision %ld.\n"
-msgstr "Revision %ld.\n"
-
-#: ../svn/notify.c:602
-#, c-format
-msgid "External export complete.\n"
-msgstr "Export des externen Verweises abgeschlossen.\n"
-
-#: ../svn/notify.c:603
-#, c-format
-msgid "Export complete.\n"
-msgstr "Export abgeschlossen.\n"
-
-#: ../svn/notify.c:610
-#, c-format
-msgid "External checkout complete.\n"
-msgstr "Auschecken des externen Verweises abgeschlossen.\n"
-
-#: ../svn/notify.c:611
-#, c-format
-msgid "Checkout complete.\n"
-msgstr "Auschecken abgeschlossen.\n"
-
-#: ../svn/notify.c:618
-#, c-format
-msgid "External update complete.\n"
-msgstr "Aktualisierung des externen Verweises abgeschlossen.\n"
-
-#: ../svn/notify.c:619
-#, c-format
-msgid "Update complete.\n"
-msgstr "Aktualisierung abgeschlossen.\n"
-
-#: ../svn/notify.c:636
-#, c-format
-msgid ""
-"\n"
-"Performing status on external item at '%s'\n"
-msgstr ""
-"\n"
-"Hole Status des externen Verweises in »%s«\n"
-
-#: ../svn/notify.c:644
-#, c-format
-msgid "Status against revision: %6ld\n"
-msgstr "Status bezogen auf Revision: %6ld\n"
-
-#: ../svn/notify.c:652
-#, c-format
-msgid "Sending %s\n"
-msgstr "Sende %s\n"
-
-# CHECKME: Warum wird "Hinzuf." nicht ausgeschrieben? (Einfach 1. Spalte verbreitern)
-#: ../svn/notify.c:661
-#, c-format
-msgid "Adding (bin) %s\n"
-msgstr "Hinzuf. (bin) %s\n"
-
-#: ../svn/notify.c:668
-#, c-format
-msgid "Adding %s\n"
-msgstr "Hinzufügen %s\n"
-
-#: ../svn/notify.c:675
-#, c-format
-msgid "Deleting %s\n"
-msgstr "Lösche %s\n"
-
-#: ../svn/notify.c:682
-#, c-format
-msgid "Replacing %s\n"
-msgstr "Ersetze %s\n"
-
-#: ../svn/notify.c:692 ../svnsync/sync.c:320
-#, c-format
-msgid "Transmitting file data "
-msgstr "Übertrage Daten "
-
-#: ../svn/notify.c:701
-#, c-format
-msgid "'%s' locked by user '%s'.\n"
-msgstr "»%s« gesperrt durch »%s«.\n"
-
-#: ../svn/notify.c:707
-#, c-format
-msgid "'%s' unlocked.\n"
-msgstr "»%s« freigegeben.\n"
-
-#: ../svn/notify.c:734
-#, c-format
-msgid "--- Merging differences between repository URLs into '%s':\n"
-msgstr "-- Zusammenführen der Unterschiede zwischen Projektarchiv-URLs in »%s«:\n"
-
-#: ../svn/notify.c:739
-#, c-format
-msgid "--- Merging r%ld into '%s':\n"
-msgstr "-- Zusammenführen von r%ld in »%s«:\n"
-
-#: ../svn/notify.c:743
-#, c-format
-msgid "--- Reverse-merging r%ld into '%s':\n"
-msgstr "-- Rückwärtiges Zusammenführen von r%ld in »%s«:\n"
-
-#: ../svn/notify.c:747
-#, c-format
-msgid "--- Merging r%ld through r%ld into '%s':\n"
-msgstr "-- Zusammenführen von r%ld bis r%ld in »%s«:\n"
-
-#: ../svn/notify.c:753
-#, c-format
-msgid "--- Reverse-merging r%ld through r%ld into '%s':\n"
-msgstr "-- Rückwärtiges Zusammenführen von r%ld bis r%ld in »%s«:\n"
-
-#: ../svn/notify.c:765
-msgid "--- Recording mergeinfo for merge between repository URLs into '%s':\n"
-msgstr "-- Aufzeichnung der Informationen für Zusammenführung zwischen Projektarchiv-URLs in »%s«:\n"
-
-#: ../svn/notify.c:775
-#, c-format
-msgid "--- Recording mergeinfo for merge of r%ld into '%s':\n"
-msgstr "-- Aufzeichnung der Informationen für Zusammenführung von r%ld in »%s«:\n"
-
-#: ../svn/notify.c:780
-#, c-format
-msgid "--- Recording mergeinfo for reverse merge of r%ld into '%s':\n"
-msgstr "-- Aufzeichnung der Informationen für rückwärtiges Zusammenführen von r%ld in »%s«:\n"
-
-#: ../svn/notify.c:785
-#, c-format
-msgid "--- Recording mergeinfo for merge of r%ld through r%ld into '%s':\n"
-msgstr "-- Aufzeichnung der Informationen für Zusammenführung von r%ld bis r%ld in »%s«:\n"
-
-#: ../svn/notify.c:790
-#, c-format
-msgid "--- Recording mergeinfo for reverse merge of r%ld through r%ld into '%s':\n"
-msgstr "-- Aufzeichnung der Informationen für rückwärtiges Zusammenführen von r%ld bis r%ld in »%s«:\n"
-
-#: ../svn/notify.c:800
-#, fuzzy, c-format
-msgid "--- Eliding mergeinfo from '%s':\n"
-msgstr "-- Zusammenführen von r%ld in »%s«:\n"
-
-#: ../svn/notify.c:808
-#, c-format
-msgid "--- Merging differences between foreign repository URLs into '%s':\n"
-msgstr "-- Zusammenführen der Unterschiede zwischen fremden Projektarchiv-URLs in »%s«:\n"
-
-#: ../svn/notify.c:814
-#, c-format
-msgid "--- Merging (from foreign repository) r%ld into '%s':\n"
-msgstr "-- Zusammenführen (aus fremden Projektarchiv) von r%ld in »%s«:\n"
-
-#: ../svn/notify.c:819
-#, c-format
-msgid "--- Reverse-merging (from foreign repository) r%ld into '%s':\n"
-msgstr "-- Rückwärtiges Zusammenführen (aus fremden Projektarchiv) von r%ld in »%s«:\n"
-
-#: ../svn/notify.c:824
-#, c-format
-msgid "--- Merging (from foreign repository) r%ld through r%ld into '%s':\n"
-msgstr "-- Zusammenführen (aus fremden Projektarchiv) von r%ld bis r%ld in »%s«:\n"
-
-#: ../svn/notify.c:830
-#, c-format
-msgid "--- Reverse-merging (from foreign repository) r%ld through r%ld into '%s':\n"
-msgstr "-- Rückwärtiges Zusammenführen (aus fremden Projektarchiv) von r%ld bis r%ld in »%s«:\n"
-
-#: ../svn/notify.c:848
-#, c-format
-msgid "property '%s' set on '%s'\n"
-msgstr "Eigenschaft »%s« für »%s« gesetzt\n"
-
-#: ../svn/notify.c:856
-#, c-format
-msgid "property '%s' deleted from '%s'.\n"
-msgstr "Eigenschaft »%s« wurde von »%s« gelöscht.\n"
-
-#: ../svn/notify.c:864
-#, c-format
-msgid "property '%s' set on repository revision %ld\n"
-msgstr "Eigenschaft »%s« wurde für Revision %ld im Projektarchiv gesetzt\n"
-
-#: ../svn/notify.c:872
-#, c-format
-msgid "property '%s' deleted from repository revision %ld\n"
-msgstr "Eigenschaft »%s« wurde von Revision %ld im Projektarchiv gelöscht\n"
-
-#: ../svn/notify.c:879
-#, c-format
-msgid "Upgraded '%s'.\n"
-msgstr "In neues Format gebracht: »%s«.\n"
-
-#: ../svn/notify.c:885
-#, c-format
-msgid "Redirecting to URL '%s'\n"
-msgstr "Umleitung zur URL »%s«\n"
-
-#: ../svn/obliterate-cmd.c:60
-#, c-format
-msgid "Obliterate %8ld %s\n"
-msgstr ""
-
-#: ../svn/obliterate-cmd.c:111
-msgid "Wrong number of arguments"
-msgstr "Falsche Anzahl von Argumenten"
-
-#: ../svn/obliterate-cmd.c:116
-msgid "Target must specify the revision as a number"
-msgstr "Ziel muss die Revision als Zahl angegeben"
-
-#: ../svn/obliterate-cmd.c:119
-msgid "Target must specify a URL"
-msgstr "Ziel muss eine URL angeben"
-
-#: ../svn/propdel-cmd.c:117
-#, c-format
-msgid "Cannot specify revision for deleting versioned property '%s'"
-msgstr "Zum Löschen der versionierten Eigenschaft »%s« darf keine Revision angegeben werden"
-
-# TODO: Compare msgid "Attempted to open non-existent child node '%s'"
-# (non-, vs. non; Attempted vs. Attempting)
-#: ../svn/propdel-cmd.c:152
-#, c-format
-msgid "Attempting to delete nonexistent property '%s'"
-msgstr "Versuchte, nicht existierende Eigenschaft »%s« zu löschen"
-
-#: ../svn/propedit-cmd.c:62 ../svn/propedit-cmd.c:315
-#, c-format
-msgid "Set new value for property '%s' on '%s'\n"
-msgstr "Neuer Wert für Eigenschaft »%s« für »%s« gesetzt\n"
-
-#: ../svn/propedit-cmd.c:92 ../svn/propset-cmd.c:93
-msgid "--encoding option applies only to textual Subversion-controlled properties"
-msgstr "Option --encoding ist nur für textbasierte von Subversion kontrollierte Eigenschaften angebbar"
-
-#: ../svn/propedit-cmd.c:158
-#, c-format
-msgid "Set new value for property '%s' on revision %ld\n"
-msgstr "Neuen Wert für Eigenschaft »%s« in Revision %ld gesetzt\n"
-
-#: ../svn/propedit-cmd.c:164
-#, c-format
-msgid "No changes to property '%s' on revision %ld\n"
-msgstr "Eigenschaft »%s« in Revision %ld nicht geändert\n"
-
-#: ../svn/propedit-cmd.c:172
-#, c-format
-msgid "Cannot specify revision for editing versioned property '%s'"
-msgstr "Beim Bearbeiten der versionierten Eigenschaft »%s« darf keine Revision angegeben werden"
-
-#: ../svn/propedit-cmd.c:200 ../svn/propset-cmd.c:170
-msgid "Explicit target argument required"
-msgstr "Expliziter Zielparameter benötigt"
-
-#: ../svn/propedit-cmd.c:264
-#, c-format
-msgid "'%s' does not appear to be a working copy path"
-msgstr "»%s« scheint kein Pfad einer Arbeitskopie zu sein"
-
-#: ../svn/propedit-cmd.c:322
-#, c-format
-msgid "No changes to property '%s' on '%s'\n"
-msgstr "Keine Änderungen der Eigenschaft »%s« für »%s«\n"
-
-#: ../svn/propget-cmd.c:140 ../svn/proplist-cmd.c:100
-#, c-format
-msgid "Properties on '%s':\n"
-msgstr "Eigenschaften zu »%s«:\n"
-
-#: ../svn/propget-cmd.c:197
-msgid "--verbose cannot be used with --revprop or --strict or --xml"
-msgstr "--verbose kann nicht mit --revprop oder --strict oder --xml verwendet werden"
-
-#: ../svn/propget-cmd.c:290
-msgid "Strict output of property values only available for single-target, non-recursive propget operations"
-msgstr "Strikte Ausgabe von Eigenschaftswerten ist nur für einzelne Ziele und nicht-rekursive propget-Operationen verfügbar"
-
-#: ../svn/proplist-cmd.c:158
-#, c-format
-msgid "Unversioned properties on revision %ld:\n"
-msgstr "Nicht versionierte Eigenschaft in Revision %ld:\n"
-
-#: ../svn/props.c:62
-msgid "Must specify the revision as a number, a date or 'HEAD' when operating on a revision property"
-msgstr "Die Revision muss als Zahl, Datum oder »HEAD« angegeben werden, wenn auf eine Revisionseigenschaft zugegriffen wird"
-
-#: ../svn/props.c:69
-msgid "Wrong number of targets specified"
-msgstr "Falsche Anzahl Ziele angegeben"
-
-#: ../svn/props.c:78
-msgid "Either a URL or versioned item is required"
-msgstr "Eine URL oder ein versioniertes Objekt muss angegeben werden"
-
-#: ../svn/props.c:208
-#, c-format
-msgid ""
-"To turn off the %s property, use 'svn propdel';\n"
-"setting the property to '%s' will not turn it off."
-msgstr ""
-"Um die Eigenschaft %s abzuschalten, ist »svn propdel« zu verwenden;\n"
-"setzen der Eigenschaft auf »%s« wird sie nicht ausschalten."
-
-#: ../svn/propset-cmd.c:127
-#, c-format
-msgid "Cannot specify revision for setting versioned property '%s'"
-msgstr "Beim Setzen der versionierten Eigenschaft »%s« darf keine Revision angegeben werden"
-
-#: ../svn/propset-cmd.c:163
-#, c-format
-msgid "Explicit target required ('%s' interpreted as prop value)"
-msgstr "Explizites Ziel erforderlich (»%s« als Eigenschaftswert interpretiert)"
-
-#: ../svn/resolve-cmd.c:80
-msgid "missing --accept option"
-msgstr "fehlende Option --accept"
-
-#: ../svn/resolve-cmd.c:83
-msgid "invalid 'accept' ARG"
-msgstr "ungültiger Parameter »accept«"
-
-#: ../svn/revert-cmd.c:88
-msgid "Try 'svn revert --depth infinity' instead?"
-msgstr "Versuchen Sie »svn revert --depth infinity« stattdessen?"
-
-#: ../svn/status-cmd.c:364
-#, c-format
-msgid ""
-"\n"
-"--- Changelist '%s':\n"
-msgstr ""
-"\n"
-"--- Änderungsliste »%s«:\n"
-
-#: ../svn/status.c:372
-#, c-format
-msgid "'%s' has lock token, but no lock owner"
-msgstr "»%s« has Sperrmarke, aber keinen Sperreigner"
-
#: ../svn/switch-cmd.c:63
#, c-format
msgid "'%s' to '%s' is not a valid relocation"
msgstr "Umplatzieren von »%s« nach »%s« ist nicht möglich"
+#: ../svn/switch-cmd.c:173
+#, c-format
+msgid "Path '%s' does not share common version control ancestry with the requested switch location. Use --ignore-ancestry to disable this check."
+msgstr ""
+
+#: ../svn/switch-cmd.c:183
+msgid "'svn switch' does not support switching a working copy to a different repository"
+msgstr ""
+
#: ../svn/tree-conflicts.c:38 ../svn/tree-conflicts.c:58
msgid "edit"
msgstr "editiert"
@@ -10307,12 +11908,33 @@
msgid "unversioned"
msgstr "nicht versioniert"
-#: ../svn/tree-conflicts.c:107
-#, c-format
-msgid "local %s, incoming %s upon %s"
+#: ../svn/tree-conflicts.c:65
+msgid "moved away"
+msgstr ""
+
+#: ../svn/tree-conflicts.c:66
+msgid "moved here"
+msgstr ""
+
+#: ../svn/tree-conflicts.c:134
+#, fuzzy, c-format
+msgid "local %s %s, incoming %s %s upon %s"
msgstr "lokal %s, eingehend %s bei %s"
-#: ../svn/util.c:74
+#: ../svn/update-cmd.c:59
+#, fuzzy, c-format
+msgid "Summary of updates:\n"
+msgstr "Konfliktübersicht:\n"
+
+#. Print an update summary for this target, removing the current
+#. working directory prefix from PATH (if PATH is at or under
+#. $CWD), and converting the path to local style for display.
+#: ../svn/update-cmd.c:90
+#, fuzzy, c-format
+msgid " Updated '%s' to r%ld.\n"
+msgstr "Aktualisiert zu Revision %ld.\n"
+
+#: ../svn/util.c:77
#, c-format
msgid ""
"\n"
@@ -10321,11 +11943,11 @@
"\n"
"Revision %ld%s übertragen.\n"
-#: ../svn/util.c:78
+#: ../svn/util.c:81
msgid " (the answer to life, the universe, and everything)"
msgstr " (die Antwort auf die Frage nach dem Leben, dem Universum und dem ganzen Rest)"
-#: ../svn/util.c:87
+#: ../svn/util.c:90
#, c-format
msgid ""
"\n"
@@ -10335,82 +11957,49 @@
"Warnung: %s\n"
# FIXME: s/whitespace/whitespaceS/?
-#: ../svn/util.c:147
-msgid "The EDITOR, SVN_EDITOR or VISUAL environment variable or 'editor-cmd' run-time configuration option is empty or consists solely of whitespace. Expected a shell command."
-msgstr "Die Umgebungsvariable EDITOR, SVN_EDITOR oder VISUAL oder die Laufzeitkonfigurationsoption »editor-cmd« ist leer oder besteht nur aus Leerzeichen. Erwartete ein Shell-Kommando."
-
-#: ../svn/util.c:154
-msgid "None of the environment variables SVN_EDITOR, VISUAL or EDITOR are set, and no 'editor-cmd' run-time configuration option was found"
-msgstr "Keine der Umgebungsvariablen SVN_EDITOR, VISUAL oder EDITOR ist gesetzt und keine Laufzeitkonfigurationsoption »editor-cmd« wurde gefunden"
-
-#: ../svn/util.c:182 ../svn/util.c:343
-#, c-format
-msgid "Can't get working directory"
-msgstr "Kann Arbeitsverzeichnis nicht ermitteln"
-
-#: ../svn/util.c:193 ../svn/util.c:354 ../svn/util.c:379
-#, c-format
-msgid "Can't change working directory to '%s'"
-msgstr "Kann Arbeitsverzeichnis nicht nach »%s« wechseln"
-
-#: ../svn/util.c:201 ../svn/util.c:523
-#, c-format
-msgid "Can't restore working directory"
-msgstr "Kann nicht in das Arbeitsverzeichnis zurückwechseln"
-
-#: ../svn/util.c:208 ../svn/util.c:451
-#, c-format
-msgid "system('%s') returned %d"
-msgstr "Aufruf des Editors »%s« gab Fehler %d zurück"
-
-# FIXME: s/whitespace/whitespaceS/?
-#: ../svn/util.c:248
+#: ../svn/util.c:132
msgid "The SVN_MERGE environment variable is empty or consists solely of whitespace. Expected a shell command.\n"
msgstr "Die Umgebungsvariable SVN_MERGE ist leer oder besteht nur aus Leerzeichen. Erwartete ein Shell-Kommando.\n"
-#: ../svn/util.c:254
+#: ../svn/util.c:138
msgid "The environment variable SVN_MERGE and the merge-tool-cmd run-time configuration option were not set.\n"
msgstr "Die Umgebungsvariable SVN_MERGE und die Laufzeitkonfigurationsoption merge-tool-cmd wurden nicht gesetzt.\n"
-#: ../svn/util.c:284
+#: ../svn/util.c:168
#, c-format
msgid "The external merge tool exited with exit code %d"
msgstr "Das externe Werkzeug zum Zusammenführen wurde mit Fehlercode %d beendet"
-#: ../svn/util.c:406
-#, c-format
-msgid "Can't write to '%s'"
-msgstr "Kann nicht nach »%s« schreiben"
-
-#: ../svn/util.c:492
-msgid "Error normalizing edited contents to internal format"
-msgstr "Fehler beim Normalisieren des bearbeiteten Inhalts ins interne Format"
-
-#: ../svn/util.c:565
+#: ../svn/util.c:210
msgid "Log message contains a zero byte"
msgstr "Logmeldung enthält ein Null Byte"
-#: ../svn/util.c:628
+#: ../svn/util.c:269
+#, fuzzy, c-format
+msgid " '%s'"
+msgstr "%s von »%s«"
+
+#: ../svn/util.c:273
msgid "Your commit message was left in a temporary file:"
msgstr "Ihre Logmeldung wurde in einer Temporärdatei abgelegt:"
-#: ../svn/util.c:680
+#: ../svn/util.c:325
msgid "--This line, and those below, will be ignored--"
msgstr "-- Diese und die folgenden Zeilen werden ignoriert --"
-#: ../svn/util.c:714
+#: ../svn/util.c:360
msgid "Error normalizing log message to internal format"
msgstr "Fehler beim Normalisieren der Logmeldung ins interne Format"
-#: ../svn/util.c:801
+#: ../svn/util.c:447 ../svnmucc/svnmucc.c:766
msgid "Cannot invoke editor to get log message when non-interactive"
msgstr "Kann den Editor für Logmeldungen nur im interaktiven Modus aufrufen"
-#: ../svn/util.c:814
+#: ../svn/util.c:460
msgid "Could not use external editor to fetch log message; consider setting the $SVN_EDITOR environment variable or using the --message (-m) or --file (-F) options"
msgstr "Konnte keinen externen Editor zur Eingabe der Logmeldung bestimmen. Setzten Sie entweder die $SVN_EDITOR Umgebungsvariable oder verwenden Sie die --message (-m) oder --file (-F) Optionen"
-#: ../svn/util.c:850
+#: ../svn/util.c:496
msgid ""
"\n"
"Log message unchanged or not specified\n"
@@ -10420,99 +12009,97 @@
"Logmeldung unverändert oder nicht angegeben\n"
"(A)bbrechen, Weiterma(c)hen, (E)ditieren:\n"
-#: ../svn/util.c:903
+#: ../svn/util.c:549
msgid "Use --force to override this restriction (local modifications may be lost)"
msgstr "Benutzen Sie »--force«, um diese Einschränkung aufzuheben (lokale Änderungen könnten verloren gehen)"
# CHECKME! Here used beside "dir" and "file".
-#: ../svn/util.c:1050 ../svn/util.c:1083
+#: ../svn/util.c:738 ../svn/util.c:771
msgid "none"
msgstr "nichts"
-#: ../svn/util.c:1051
+#: ../svn/util.c:739
msgid "file"
msgstr "Datei"
# dir is no English word!
-#: ../svn/util.c:1052
+#: ../svn/util.c:740
msgid "dir"
msgstr "Verzeichnis"
-#: ../svn/util.c:1084
+#: ../svn/util.c:772
msgid "update"
msgstr "Aktualisierung"
-#: ../svn/util.c:1085
+#: ../svn/util.c:773
msgid "switch"
msgstr "Umstellung"
-#: ../svn/util.c:1086
+#: ../svn/util.c:774
msgid "merge"
msgstr "Zusammenführung"
-#: ../svn/util.c:1204
+#: ../svn/util.c:896
msgid "(invalid date)"
msgstr "(ungültiges Datum)"
-#: ../svnadmin/main.c:103 ../svndumpfilter/main.c:72
+#: ../svn/util.c:1049
#, c-format
-msgid "Can't open stdio file"
-msgstr "Kann Standardeingabe nicht öffnen"
+msgid "Source and target have no common ancestor: '%s' and '%s'"
+msgstr ""
-#: ../svnadmin/main.c:132
-msgid "Repository argument required"
-msgstr "Projektarchiv Parameter erforderlich"
-
-#: ../svnadmin/main.c:137
-#, c-format
-msgid "'%s' is an URL when it should be a path"
-msgstr "»%s« ist eine URL, obwohl es ein Pfad sein sollte"
-
-#: ../svnadmin/main.c:253 ../svnrdump/svnrdump.c:77
+#: ../svnadmin/svnadmin.c:216 ../svnrdump/svnrdump.c:120
msgid "specify revision number ARG (or X:Y range)"
msgstr "spezifizieren Sie PAR für Revisionsnummer (oder X:Y Bereich)"
-#: ../svnadmin/main.c:256
-msgid "dump incrementally"
+#: ../svnadmin/svnadmin.c:219
+#, fuzzy
+msgid "dump or hotcopy incrementally"
msgstr "Inkrementell ausgeben"
-#: ../svnadmin/main.c:259
+#: ../svnadmin/svnadmin.c:222
msgid "use deltas in dump output"
msgstr "Nutze Deltas bei der Ausgabe"
-#: ../svnadmin/main.c:262
+#: ../svnadmin/svnadmin.c:225
msgid "bypass the repository hook system"
msgstr "Umgehe das Aktionssystem des Projektarchivs"
-#: ../svnadmin/main.c:265 ../svnrdump/svnrdump.c:78
+#: ../svnadmin/svnadmin.c:228
+msgid "bypass property validation logic"
+msgstr ""
+
+#: ../svnadmin/svnadmin.c:231 ../svnlook/svnlook.c:189
+#: ../svnrdump/svnrdump.c:122 ../svnserve/svnserve.c:288
+#: ../svnversion/svnversion.c:141
msgid "no progress (only errors) to stderr"
msgstr "keine Fortschrittsanzeige (nur Fehler) auf die Standardausgabe"
-#: ../svnadmin/main.c:268
+#: ../svnadmin/svnadmin.c:234
msgid "ignore any repos UUID found in the stream"
msgstr "ignoriere jede Projektarchiv-UUID, die im Datenstrom gefunden wird"
-#: ../svnadmin/main.c:271
+#: ../svnadmin/svnadmin.c:237
msgid "set repos UUID to that found in stream, if any"
msgstr "setze die UUID des Projektarchivs auf die im Datenstrom gefundene"
-#: ../svnadmin/main.c:274
+#: ../svnadmin/svnadmin.c:240
msgid "type of repository: 'fsfs' (default) or 'bdb'"
msgstr "Art des Projektarchivs: »fsfs« (Standard) oder »bdb«"
-#: ../svnadmin/main.c:277
+#: ../svnadmin/svnadmin.c:243
msgid "load at specified directory in repository"
msgstr "in das spezifizierte Verzeichnis im Projektarchiv laden"
-#: ../svnadmin/main.c:280
+#: ../svnadmin/svnadmin.c:246
msgid "disable fsync at transaction commit [Berkeley DB]"
msgstr "deaktiviere »fsync« für jede Übertragungstransaktion [Berkeley DB]"
-#: ../svnadmin/main.c:283
+#: ../svnadmin/svnadmin.c:249
msgid "disable automatic log file removal [Berkeley DB]"
msgstr "deaktiviere das automatische Entfernen von Log-Dateien [Berkeley DB]"
-#: ../svnadmin/main.c:289
+#: ../svnadmin/svnadmin.c:255
msgid ""
"remove redundant Berkeley DB log files\n"
" from source repository [Berkeley DB]"
@@ -10520,23 +12107,23 @@
"entferne redundante Berkeley-DB-Logdateien\n"
" aus dem Projektarchiv [Berkeley DB]"
-#: ../svnadmin/main.c:293
+#: ../svnadmin/svnadmin.c:259
msgid "call pre-commit hook before committing revisions"
msgstr "die Aktion »pre-commit« nach dem Übertragen von Revisionen aufrufen"
-#: ../svnadmin/main.c:296
+#: ../svnadmin/svnadmin.c:262
msgid "call post-commit hook after committing revisions"
msgstr "die Aktion »post-commit« nach dem Übertragen von Revisionen aufrufen"
-#: ../svnadmin/main.c:299
+#: ../svnadmin/svnadmin.c:265
msgid "call hook before changing revision property"
msgstr "Aktion vor der Änderung der Revisionseigenschaft aufrufen"
-#: ../svnadmin/main.c:302
+#: ../svnadmin/svnadmin.c:268
msgid "call hook after changing revision property"
msgstr "Aktion nach der Änderung der Revisionseigenschaft aufrufen"
-#: ../svnadmin/main.c:305
+#: ../svnadmin/svnadmin.c:271
msgid ""
"wait instead of exit if the repository is in\n"
" use by another process"
@@ -10544,32 +12131,27 @@
"warte anstatt abzubrechen, wenn das Projektarchiv\n"
" durch einen anderen Prozess belegt ist"
-#: ../svnadmin/main.c:309
+#: ../svnadmin/svnadmin.c:275 ../svnadmin/svnadmin.c:278
+#: ../svnadmin/svnadmin.c:281
+msgid "deprecated; see --compatible-version"
+msgstr ""
+
+#: ../svnadmin/svnadmin.c:284
msgid ""
-"use format compatible with Subversion versions\n"
-" earlier than 1.4"
-msgstr "Ein mit Subversion-Versionen vor 1.4 kompatibles Format verwenden"
+"size of the extra in-memory cache in MB used to\n"
+" minimize redundant operations. Default: 16.\n"
+" [used for FSFS repositories only]"
+msgstr ""
# TODO: combine with message above
-#: ../svnadmin/main.c:313
+#: ../svnadmin/svnadmin.c:289
+#, fuzzy
msgid ""
-"use format compatible with Subversion versions\n"
-" earlier than 1.5"
+"use repository format compatible with Subversion\n"
+" version ARG (\"1.5.5\", \"1.7\", etc.)"
msgstr "Ein mit Subversion-Versionen vor 1.5 kompatibles Format verwenden"
-#: ../svnadmin/main.c:317
-msgid ""
-"use format compatible with Subversion versions\n"
-" earlier than 1.6"
-msgstr "Ein mit Subversion-Versionen vor 1.6 kompatibles Format verwenden"
-
-#: ../svnadmin/main.c:321
-msgid ""
-"use format compatible with Subversion versions\n"
-" earlier than 1.7"
-msgstr "Ein mit Subversion-Versionen vor 1.7 kompatibles Format verwenden"
-
-#: ../svnadmin/main.c:334
+#: ../svnadmin/svnadmin.c:302
msgid ""
"usage: svnadmin crashtest REPOS_PATH\n"
"\n"
@@ -10581,7 +12163,7 @@
"Öffnet das Projektarchiv in REPOS_PFAD und bricht ab. Simuliert\n"
"damit einen Prozess der bei geöffnetem Projektarchiv abstürzt.\n"
-#: ../svnadmin/main.c:340
+#: ../svnadmin/svnadmin.c:308
msgid ""
"usage: svnadmin create REPOS_PATH\n"
"\n"
@@ -10591,7 +12173,7 @@
"\n"
"Erstellt ein neues, leeres Projektarchiv im ARCHIV_PFAD.\n"
-#: ../svnadmin/main.c:348
+#: ../svnadmin/svnadmin.c:317
msgid ""
"usage: svnadmin deltify [-r LOWER[:UPPER]] REPOS_PATH\n"
"\n"
@@ -10609,7 +12191,7 @@
"Revision gespeichert werden. Falls keine Revisionen angegeben wurden, wird\n"
"nur die HEAD-Revision deltifiziert.\n"
-#: ../svnadmin/main.c:357
+#: ../svnadmin/svnadmin.c:326
msgid ""
"usage: svnadmin dump REPOS_PATH [-r LOWER[:UPPER] [--incremental]]\n"
"\n"
@@ -10635,7 +12217,14 @@
"werden für die zweite und folgende Revisionen, nur in diesen Revisionen\n"
"geänderte Pfade ausgegeben.)\n"
-#: ../svnadmin/main.c:370
+#: ../svnadmin/svnadmin.c:339
+msgid ""
+"usage: svnadmin freeze REPOS_PATH PROGRAM [ARG...]\n"
+"\n"
+"Run PROGRAM passing ARGS while holding a write-lock on REPOS_PATH.\n"
+msgstr ""
+
+#: ../svnadmin/svnadmin.c:344
msgid ""
"usage: svnadmin help [SUBCOMMAND...]\n"
"\n"
@@ -10645,17 +12234,16 @@
"\n"
"Beschreibt die Anwendung dieses Programms und seiner Unterbefehle.\n"
-#: ../svnadmin/main.c:375
+#: ../svnadmin/svnadmin.c:349
msgid ""
"usage: svnadmin hotcopy REPOS_PATH NEW_REPOS_PATH\n"
"\n"
"Makes a hot copy of a repository.\n"
+"If --incremental is passed, data which already exists at the destination\n"
+"is not copied again. Incremental mode is implemented for FSFS repositories.\n"
msgstr ""
-"Aufruf: svnadmin hotcopy ARCHIV_PFAD ARCHIV_PFAD_NEU\n"
-"\n"
-"Erstellt eine Kopie des Projektarchivs im laufenden Betrieb.\n"
-#: ../svnadmin/main.c:380
+#: ../svnadmin/svnadmin.c:356
msgid ""
"usage: svnadmin list-dblogs REPOS_PATH\n"
"\n"
@@ -10671,7 +12259,7 @@
"WARNUNG: Ändern oder Löschen von Log-Dateien, die noch\n"
"benutzt werden, wird ihr Projektarchiv beschädigen.\n"
-#: ../svnadmin/main.c:387
+#: ../svnadmin/svnadmin.c:363
msgid ""
"usage: svnadmin list-unused-dblogs REPOS_PATH\n"
"\n"
@@ -10683,7 +12271,8 @@
"Listet ungenutzte Log-Dateien der Berkeley Datenbank auf.\n"
"\n"
-#: ../svnadmin/main.c:392
+#: ../svnadmin/svnadmin.c:368
+#, fuzzy
msgid ""
"usage: svnadmin load REPOS_PATH\n"
"\n"
@@ -10691,6 +12280,8 @@
"new revisions into the repository's filesystem. If the repository\n"
"was previously empty, its UUID will, by default, be changed to the\n"
"one specified in the stream. Progress feedback is sent to stdout.\n"
+"If --revision is specified, limit the loaded revisions to only those\n"
+"in the dump stream whose revision numbers match the specified range.\n"
msgstr ""
"Aufruf: svnadmin load ARCHIV_PFAD\n"
"\n"
@@ -10700,7 +12291,16 @@
"strom spezifiziert ist. Eine Fortschrittsanzeige wird an die Standard-\n"
"ausgabe gesendet.\n"
-#: ../svnadmin/main.c:402
+#: ../svnadmin/svnadmin.c:380
+msgid ""
+"usage: svnadmin lock REPOS_PATH PATH USERNAME COMMENT-FILE [TOKEN]\n"
+"\n"
+"Lock PATH by USERNAME setting comments from COMMENT-FILE.\n"
+"If provided, use TOKEN as lock token. Use --bypass-hooks to avoid\n"
+"triggering the pre-lock and post-lock hook scripts.\n"
+msgstr ""
+
+#: ../svnadmin/svnadmin.c:387
msgid ""
"usage: svnadmin lslocks REPOS_PATH [PATH-IN-REPOS]\n"
"\n"
@@ -10712,7 +12312,7 @@
"Gibt Beschreibungen aller Sperren auf oder unter PFAD-IN-ARCHIV aus (was,\n"
"falls nicht angegeben, die Wurzel des Projektarchivs ist).\n"
-#: ../svnadmin/main.c:408
+#: ../svnadmin/svnadmin.c:393
msgid ""
"usage: svnadmin lstxns REPOS_PATH\n"
"\n"
@@ -10722,7 +12322,7 @@
"\n"
"Gibt die Namen aller nicht übertragenen Transaktionen aus.\n"
-#: ../svnadmin/main.c:413
+#: ../svnadmin/svnadmin.c:398
msgid ""
"usage: svnadmin pack REPOS_PATH\n"
"\n"
@@ -10734,7 +12334,7 @@
"Versucht, das Projektarchiv in ein effizienteres Speichermodell zu\n"
"transformieren. Dies muss nicht bei allen Projektarchiven möglich sein und in problematischen Fällen wird nichts getan.\n"
-#: ../svnadmin/main.c:419
+#: ../svnadmin/svnadmin.c:404
msgid ""
"usage: svnadmin recover REPOS_PATH\n"
"\n"
@@ -10751,7 +12351,7 @@
"Zugriff auf das Projektarchiv. Der Vorgang wird nicht gestartet, falls\n"
"das Projektarchiv von einem anderen Prozess benutzt wird.\n"
-#: ../svnadmin/main.c:427
+#: ../svnadmin/svnadmin.c:412
msgid ""
"usage: svnadmin rmlocks REPOS_PATH LOCKED_PATH...\n"
"\n"
@@ -10761,7 +12361,7 @@
"\n"
"Entferne vorbehaltslos die Sperren von jedem SPERR_PFAD.\n"
-#: ../svnadmin/main.c:432
+#: ../svnadmin/svnadmin.c:417
msgid ""
"usage: svnadmin rmtxns REPOS_PATH TXN_NAME...\n"
"\n"
@@ -10771,7 +12371,7 @@
"\n"
"Löscht die benannte(n) Transaktion(en).\n"
-#: ../svnadmin/main.c:437
+#: ../svnadmin/svnadmin.c:422
msgid ""
"usage: svnadmin setlog REPOS_PATH -r REVISION FILE\n"
"\n"
@@ -10797,7 +12397,7 @@
"ACHTUNG: Revisionseigenschaften sind nicht versioniert. Dieser Befehl\n"
"überschreibt also die vorherige Logmeldung endgültig.\n"
-#: ../svnadmin/main.c:449
+#: ../svnadmin/svnadmin.c:434
msgid ""
"usage: svnadmin setrevprop REPOS_PATH -r REVISION NAME FILE\n"
"\n"
@@ -10820,7 +12420,7 @@
"ACHTUNG: Revisionseigenschaften sind nicht versioniert. Dieser Befehl\n"
"überschreibt also den vorherigen Wert der Eigenschaft.\n"
-#: ../svnadmin/main.c:460
+#: ../svnadmin/svnadmin.c:445
msgid ""
"usage: svnadmin setuuid REPOS_PATH [NEW_UUID]\n"
"\n"
@@ -10835,7 +12435,16 @@
"UUID des Projektarchivs verwendet, andernfalls wird eine brandneue UUID\n"
"für das Projektarchiv erzeugt.\n"
-#: ../svnadmin/main.c:467
+#: ../svnadmin/svnadmin.c:452
+msgid ""
+"usage: svnadmin unlock REPOS_PATH LOCKED_PATH USERNAME TOKEN\n"
+"\n"
+"Unlocked LOCKED_PATH (as USERNAME) after verifying that the token\n"
+"associated with the lock matches TOKEN. Use --bypass-hooks to avoid\n"
+"triggering the pre-unlock and post-unlock hook scripts.\n"
+msgstr ""
+
+#: ../svnadmin/svnadmin.c:459
msgid ""
"usage: svnadmin upgrade REPOS_PATH\n"
"\n"
@@ -10864,7 +12473,7 @@
"Zustand des Projektarchivs wie ein »dump« mit anschließendem »load« dies\n"
"bewirken würde.\n"
-#: ../svnadmin/main.c:480
+#: ../svnadmin/svnadmin.c:472
msgid ""
"usage: svnadmin verify REPOS_PATH\n"
"\n"
@@ -10874,40 +12483,47 @@
"\n"
"Überprüft die im Projektarchiv gespeicherten Daten.\n"
-#: ../svnadmin/main.c:539
+#: ../svnadmin/svnadmin.c:532
msgid "Invalid revision specifier"
msgstr "Ungültige Revision angegeben"
-#: ../svnadmin/main.c:543
+#: ../svnadmin/svnadmin.c:536
#, c-format
msgid "Revisions must not be greater than the youngest revision (%ld)"
msgstr "Revisionen dürfen nicht größer als die Endrevision (%ld) sein"
-#: ../svnadmin/main.c:630 ../svnadmin/main.c:885
+#: ../svnadmin/svnadmin.c:708 ../svnadmin/svnadmin.c:970
+#: ../svnadmin/svnadmin.c:1137
msgid "First revision cannot be higher than second"
msgstr "Die erste Revision darf kann nicht größer als zweite sein"
-#: ../svnadmin/main.c:639
+#: ../svnadmin/svnadmin.c:717
#, c-format
msgid "Deltifying revision %ld..."
msgstr "Bilde Deltas für Revision %ld ..."
-#: ../svnadmin/main.c:643 ../svnadmin/main.c:694 ../svnadmin/main.c:710
+#: ../svnadmin/svnadmin.c:721 ../svnadmin/svnadmin.c:771
+#: ../svnadmin/svnadmin.c:786
#, c-format
msgid "done.\n"
msgstr "erledigt.\n"
-#: ../svnadmin/main.c:687
+#: ../svnadmin/svnadmin.c:765
#, c-format
msgid "Packing revisions in shard %s..."
msgstr "Packe Revisionen in Fragment %s ..."
-#: ../svnadmin/main.c:703
+#: ../svnadmin/svnadmin.c:780
#, c-format
msgid "Packing revprops in shard %s..."
msgstr "Packe Revisionseigenschaften in Fragment %s ..."
-#: ../svnadmin/main.c:792
+#: ../svnadmin/svnadmin.c:857
+#, fuzzy, c-format
+msgid "<<< Skipped original revision %ld\n"
+msgstr "<<< Neue Transaktion basierend auf Originalrevision %ld gestartet\n"
+
+#: ../svnadmin/svnadmin.c:874
#, c-format
msgid ""
"Repository lock acquired.\n"
@@ -10916,8 +12532,7 @@
"Exklusiven Zugriff auf das Projektarchiv erlangt\n"
"Bitte warten, die Wiederherstellung des Projektarchivs kann einige Zeit dauern ...\n"
-#: ../svnadmin/main.c:799
-#, c-format
+#: ../svnadmin/svnadmin.c:881
msgid ""
"Repository lock acquired.\n"
"Please wait; upgrading the repository may take some time...\n"
@@ -10925,7 +12540,12 @@
"Exklusiven Zugriff auf das Projektarchiv erlangt\n"
"Bitte warten, die Aktualisierung des Projektarchivs kann einige Zeit dauern ...\n"
-#: ../svnadmin/main.c:908
+#: ../svnadmin/svnadmin.c:1029
+#, fuzzy
+msgid "No program provided"
+msgstr "Nicht genügend Parameter angegeben"
+
+#: ../svnadmin/svnadmin.c:1053
msgid ""
"general usage: svnadmin SUBCOMMAND REPOS_PATH [ARGS & OPTIONS ...]\n"
"Type 'svnadmin help <subcommand>' for help on a specific subcommand.\n"
@@ -10941,7 +12561,8 @@
"\n"
"Verfügbare Unterbefehle:\n"
-#: ../svnadmin/main.c:915 ../svnlook/main.c:1993 ../svnserve/main.c:266
+#: ../svnadmin/svnadmin.c:1060 ../svnlook/svnlook.c:2203
+#: ../svnserve/svnserve.c:334
msgid ""
"The following repository back-end (FS) modules are available:\n"
"\n"
@@ -10949,7 +12570,21 @@
"Die folgenden Dateisystemmodule für Projektarchive stehen zur Verfügung:\n"
"\n"
-#: ../svnadmin/main.c:1013 ../svnadmin/main.c:1517
+#: ../svnadmin/svnadmin.c:1089
+#, fuzzy, c-format
+msgid "Invalid revision number (%ld) specified"
+msgstr "Ungültige Revisionsnummer (%ld)"
+
+#: ../svnadmin/svnadmin.c:1099
+#, fuzzy
+msgid "Non-numeric revision specified"
+msgstr "Ungültige Revision angegeben"
+
+#: ../svnadmin/svnadmin.c:1158
+msgid "Invalid property value found in dumpstream; consider repairing the source or using --bypass-prop-validation while loading."
+msgstr ""
+
+#: ../svnadmin/svnadmin.c:1224 ../svnadmin/svnadmin.c:1832
msgid ""
"Failed to get exclusive repository access; perhaps another process\n"
"such as httpd, svnserve or svn has it open?"
@@ -10958,12 +12593,12 @@
"Vielleicht hat noch ein anderer Prozess (httpd, svnserve, svn)\n"
"das Projektarchiv geöffnet?"
-#: ../svnadmin/main.c:1018 ../svnadmin/main.c:1522
+#: ../svnadmin/svnadmin.c:1229 ../svnadmin/svnadmin.c:1837
#, c-format
msgid "Waiting on repository lock; perhaps another process has it open?\n"
msgstr "Warte auf Freigabe des Projektarchivs; Vielleicht ist es durch einen anderen Prozess geöffnet?\n"
-#: ../svnadmin/main.c:1026
+#: ../svnadmin/svnadmin.c:1237
#, c-format
msgid ""
"\n"
@@ -10972,57 +12607,47 @@
"\n"
"Wiederherstellung vollständig abgeschlossen.\n"
-#: ../svnadmin/main.c:1033
+#: ../svnadmin/svnadmin.c:1244
#, c-format
msgid "The latest repos revision is %ld.\n"
msgstr "Die neueste Revision des Projektarchivs ist %ld.\n"
-#: ../svnadmin/main.c:1142
+#: ../svnadmin/svnadmin.c:1359
#, c-format
msgid "Transaction '%s' removed.\n"
msgstr "Transaktion »%s« entfernt.\n"
-#: ../svnadmin/main.c:1211 ../svnadmin/main.c:1261
+#: ../svnadmin/svnadmin.c:1421 ../svnadmin/svnadmin.c:1466
#, c-format
msgid "Missing revision"
msgstr "Fehlende Revision"
-#: ../svnadmin/main.c:1214 ../svnadmin/main.c:1264
+#: ../svnadmin/svnadmin.c:1424 ../svnadmin/svnadmin.c:1469
#, c-format
msgid "Only one revision allowed"
msgstr "Nur eine Revision zulässig"
-#: ../svnadmin/main.c:1220
-#, c-format
-msgid "Exactly one property name and one file argument required"
-msgstr "Genau ein Eigenschaftsname und ein Dateiparameter erforderlich"
-
-#: ../svnadmin/main.c:1270
-#, c-format
-msgid "Exactly one file argument required"
-msgstr "Genau ein Dateiparameter benötigt"
-
-#: ../svnadmin/main.c:1395 ../svnlook/main.c:2058
+#: ../svnadmin/svnadmin.c:1666 ../svnlook/svnlook.c:2266
#, c-format
msgid "UUID Token: %s\n"
msgstr "UUID-Marke: %s\n"
-#: ../svnadmin/main.c:1396 ../svnlook/main.c:2059
+#: ../svnadmin/svnadmin.c:1667 ../svnlook/svnlook.c:2267
#, c-format
msgid "Owner: %s\n"
msgstr "Eigentümer: %s\n"
-#: ../svnadmin/main.c:1397 ../svnlook/main.c:2060
+#: ../svnadmin/svnadmin.c:1668 ../svnlook/svnlook.c:2268
#, c-format
msgid "Created: %s\n"
msgstr "Erstellt: %s\n"
-#: ../svnadmin/main.c:1398 ../svnlook/main.c:2061
+#: ../svnadmin/svnadmin.c:1669 ../svnlook/svnlook.c:2269
#, c-format
msgid "Expires: %s\n"
msgstr "Läuft ab: %s\n"
-#: ../svnadmin/main.c:1400
+#: ../svnadmin/svnadmin.c:1671
#, c-format
msgid ""
"Comment (%i line):\n"
@@ -11041,29 +12666,34 @@
"%s\n"
"\n"
-#: ../svnadmin/main.c:1446
+#: ../svnadmin/svnadmin.c:1717
msgid "No paths to unlock provided"
msgstr "Keine Pfade zum Entsperren angegeben"
-#: ../svnadmin/main.c:1464
+#: ../svnadmin/svnadmin.c:1735
#, c-format
msgid "Path '%s' isn't locked.\n"
msgstr "Pfad »%s« ist nicht gesperrt.\n"
-#: ../svnadmin/main.c:1476
+#: ../svnadmin/svnadmin.c:1747
#, c-format
msgid "Removed lock on '%s'.\n"
msgstr "Sperre für »%s« entfernt.\n"
-#: ../svnadmin/main.c:1532
+#: ../svnadmin/svnadmin.c:1800
+#, fuzzy, c-format
+msgid "'%s' unlocked by user '%s'.\n"
+msgstr "»%s« gesperrt durch »%s«.\n"
+
+#: ../svnadmin/svnadmin.c:1847
msgid "Upgrade of this repository's underlying versioned filesystem is not supported; consider dumping and loading the data elsewhere"
msgstr "Eine Aktualisierung des diesem Projektarchiv zugrundeliegenden versionierten Dateisystems wird nicht unterstützt; versuchen Sie stattdessen »dump« und laden Sie die Daten mit »load« anderswo"
-#: ../svnadmin/main.c:1539
+#: ../svnadmin/svnadmin.c:1854
msgid "Upgrade of this repository is not supported; consider dumping and loading the data elsewhere"
msgstr "Eine Aktualisierung dieses Projektarchivs wird nicht unterstützt; versuchen Sie stattdessen »dump« und laden Sie die Daten mit »load« anderswo"
-#: ../svnadmin/main.c:1545
+#: ../svnadmin/svnadmin.c:1860
#, c-format
msgid ""
"\n"
@@ -11072,16 +12702,35 @@
"\n"
"Aktualisierung abgeschlossen.\n"
-#: ../svnadmin/main.c:1638
+#: ../svnadmin/svnadmin.c:1944 ../svnrdump/svnrdump.c:925
msgid "Multiple revision arguments encountered; try '-r N:M' instead of '-r N -r M'"
msgstr "Mehrere Revisionsparameter gefunden; Bitte »-r N:M« anstelle »-r N -r M« verwenden"
-#: ../svnadmin/main.c:1770
+#: ../svnadmin/svnadmin.c:2013
+#, c-format
+msgid "Cannot create pre-1.0-compatible repositories"
+msgstr ""
+
+#: ../svnadmin/svnadmin.c:2026
+#, c-format
+msgid "Cannot guaranteed compatibility beyond the current running version ("
+msgstr ""
+
+#: ../svnadmin/svnadmin.c:2114
#, c-format
msgid "subcommand argument required\n"
msgstr "Unterbefehl benötigt einen Parameter\n"
-#: ../svnadmin/main.c:1843
+#: ../svnadmin/svnadmin.c:2146
+msgid "Repository argument required"
+msgstr "Projektarchiv Parameter erforderlich"
+
+#: ../svnadmin/svnadmin.c:2159
+#, fuzzy, c-format
+msgid "'%s' is a URL when it should be a local path"
+msgstr "»%s« ist eine URL obwohl es ein Pfad sein sollte\n"
+
+#: ../svnadmin/svnadmin.c:2190
#, c-format
msgid ""
"Subcommand '%s' doesn't accept option '%s'\n"
@@ -11090,84 +12739,95 @@
"Unterbefehl »%s« akzeptiert die Option »%s« nicht\n"
"Geben Sie »svnadmin help %s« ein, um Hilfe zu erhalten.\n"
-#: ../svnadmin/main.c:1876
+#: ../svnadmin/svnadmin.c:2233
msgid "Try 'svnadmin help' for more info"
msgstr "Geben Sie »svnadmin help« für weitere Hilfe ein"
-#: ../svndumpfilter/main.c:345
+#: ../svndumpfilter/svndumpfilter.c:77
+#, c-format
+msgid "Can't open stdio file"
+msgstr "Kann Standardeingabe nicht öffnen"
+
+#: ../svndumpfilter/svndumpfilter.c:403
msgid "This is an empty revision for padding."
msgstr "Dies ist eine leere Revision zum Auffüllen"
-#: ../svndumpfilter/main.c:421
+#: ../svndumpfilter/svndumpfilter.c:479
#, c-format
msgid "Revision %ld committed as %ld.\n"
msgstr "Revision %ld als %ld übertragen.\n"
-#: ../svndumpfilter/main.c:444
+#: ../svndumpfilter/svndumpfilter.c:502
#, c-format
msgid "Revision %ld skipped.\n"
msgstr "Revision: »%ld« übersprungen\n"
-#: ../svndumpfilter/main.c:542
+#: ../svndumpfilter/svndumpfilter.c:601
#, c-format
msgid "Invalid copy source path '%s'"
msgstr "Ungültiger Quellpfad einer Kopie: »%s«"
-#: ../svndumpfilter/main.c:588
+#: ../svndumpfilter/svndumpfilter.c:658
#, c-format
msgid "No valid copyfrom revision in filtered stream"
msgstr "Keine gültige Quellrevision im gefilterten Datenstrom"
-#: ../svndumpfilter/main.c:713
+#: ../svndumpfilter/svndumpfilter.c:783
#, c-format
msgid "Missing merge source path '%s'; try with --skip-missing-merge-sources"
msgstr "Fehlender Zusammenführungsquellpfad »%s«; versuchen Sie es mit --skip-missing-merge-sources"
-#: ../svndumpfilter/main.c:735
+#: ../svndumpfilter/svndumpfilter.c:805
#, c-format
msgid "No valid revision range 'start' in filtered stream"
msgstr "Kein gültiger Revisionsbereich »start« im gefilterten Datenstrom"
-#: ../svndumpfilter/main.c:742
+#: ../svndumpfilter/svndumpfilter.c:812
#, c-format
msgid "No valid revision range 'end' in filtered stream"
msgstr "Kein gültiger Revisionsbereich »end« im gefilterten Datenstrom"
-#: ../svndumpfilter/main.c:788
-msgid "Delta property block detected - not supported by svndumpfilter"
-msgstr "Delta Eigenschaftsblock erkannt - wird von svndumpfilter nicht unterstützt"
+#: ../svndumpfilter/svndumpfilter.c:858
+#, c-format
+msgid "Delta property block detected, but deltas are not enabled for node '%s' in original revision %ld"
+msgstr ""
-#: ../svndumpfilter/main.c:924
+#: ../svndumpfilter/svndumpfilter.c:889
+#, c-format
+msgid "Delta property block detected, but deltas are not enabled for node '%s' in originalrevision %ld"
+msgstr ""
+
+#: ../svndumpfilter/svndumpfilter.c:1021
msgid "Do not display filtering statistics."
msgstr "Filterstatistik nicht anzeigen."
-#: ../svndumpfilter/main.c:926
+#: ../svndumpfilter/svndumpfilter.c:1023
msgid "Treat the path prefixes as file glob patterns."
msgstr "Pfadpräfix als Dateiplatzhalter behandeln."
-#: ../svndumpfilter/main.c:928
+#: ../svndumpfilter/svndumpfilter.c:1025
msgid "Remove revisions emptied by filtering."
msgstr "Durch das Filtern geleerte Revisionen entfernen."
-#: ../svndumpfilter/main.c:930
+#: ../svndumpfilter/svndumpfilter.c:1027
msgid "Renumber revisions left after filtering."
msgstr "Revisionen nach dem Filtern neu nummerieren."
-#: ../svndumpfilter/main.c:933
+#: ../svndumpfilter/svndumpfilter.c:1030
msgid "Skip missing merge sources."
msgstr "Fehlende Zusammenführungsquellen übersprungen."
-#: ../svndumpfilter/main.c:935
+#: ../svndumpfilter/svndumpfilter.c:1032
msgid "Don't filter revision properties."
msgstr "Revisionseigenschaften nicht filtern."
-#: ../svndumpfilter/main.c:937
-msgid "Pass contents of file ARG as additional args"
+#: ../svndumpfilter/svndumpfilter.c:1034
+msgid ""
+"Read additional prefixes, one per line, from\n"
+" file ARG."
msgstr ""
-"Inhalt der Datei PAR als zusätzliche Parameter\n"
-" übergeben"
-#: ../svndumpfilter/main.c:948
+#: ../svndumpfilter/svndumpfilter.c:1046
msgid ""
"Filter out nodes with given prefixes from dumpstream.\n"
"usage: svndumpfilter exclude PATH_PREFIX...\n"
@@ -11175,7 +12835,7 @@
"Knoten mit den angegebenen Präfixen aus dem Datenstrom ausfiltern.\n"
"Aufruf: svndumpfilter exclude PFAD_PRÄFIX ...\n"
-#: ../svndumpfilter/main.c:956
+#: ../svndumpfilter/svndumpfilter.c:1054
msgid ""
"Filter out nodes without given prefixes from dumpstream.\n"
"usage: svndumpfilter include PATH_PREFIX...\n"
@@ -11183,7 +12843,7 @@
"Knoten, die nicht den angegebenen Präfixen entsprechen, aus dem Datenstrom ausfiltern.\n"
"Aufruf: svndumpfilter include PFAD_PRÄFIX ...\n"
-#: ../svndumpfilter/main.c:964
+#: ../svndumpfilter/svndumpfilter.c:1062
msgid ""
"Describe the usage of this program or its subcommands.\n"
"usage: svndumpfilter help [SUBCOMMAND...]\n"
@@ -11191,7 +12851,7 @@
"Beschreibt die Anwendung dieses Programms und seiner Unterbefehle.\n"
"Aufruf: svndumpfilter help [UNTERBEFEHL...]\n"
-#: ../svndumpfilter/main.c:1047
+#: ../svndumpfilter/svndumpfilter.c:1135
msgid ""
"general usage: svndumpfilter SUBCOMMAND [ARGS & OPTIONS ...]\n"
"Type 'svndumpfilter help <subcommand>' for help on a specific subcommand.\n"
@@ -11206,47 +12866,47 @@
"\n"
"Verfügbare Unterbefehle:\n"
-#: ../svndumpfilter/main.c:1103
-#, c-format
-msgid "Excluding (and dropping empty revisions for) prefixes:\n"
-msgstr "Präfixe ausschließen (und leere Revisionen verwerfen):\n"
-
-#: ../svndumpfilter/main.c:1105
-#, c-format
-msgid "Excluding prefixes:\n"
-msgstr "Präfixe ausschließen:\n"
-
-#: ../svndumpfilter/main.c:1107
-#, c-format
-msgid "Including (and dropping empty revisions for) prefixes:\n"
-msgstr "Präfixe einschließen (und leere Revisionen verwerfen):\n"
-
-#: ../svndumpfilter/main.c:1109
-#, c-format
-msgid "Including prefixes:\n"
-msgstr "Präfixe einschließen:\n"
-
-#: ../svndumpfilter/main.c:1116
+#: ../svndumpfilter/svndumpfilter.c:1192
#, c-format
msgid "Excluding (and dropping empty revisions for) prefix patterns:\n"
msgstr "Präfixmuster ausschließen (und leere Revisionen verwerfen):\n"
-#: ../svndumpfilter/main.c:1118
+#: ../svndumpfilter/svndumpfilter.c:1194
#, c-format
msgid "Excluding prefix patterns:\n"
msgstr "Präfixmuster ausschließen:\n"
-#: ../svndumpfilter/main.c:1120
+#: ../svndumpfilter/svndumpfilter.c:1196
#, c-format
msgid "Including (and dropping empty revisions for) prefix patterns:\n"
msgstr "Präfixmuster einschließen (und leere Revisionen verwerfen):\n"
-#: ../svndumpfilter/main.c:1122
+#: ../svndumpfilter/svndumpfilter.c:1198
#, c-format
msgid "Including prefix patterns:\n"
msgstr "Präfixmuster einschließen:\n"
-#: ../svndumpfilter/main.c:1150
+#: ../svndumpfilter/svndumpfilter.c:1205
+#, c-format
+msgid "Excluding (and dropping empty revisions for) prefixes:\n"
+msgstr "Präfixe ausschließen (und leere Revisionen verwerfen):\n"
+
+#: ../svndumpfilter/svndumpfilter.c:1207
+#, c-format
+msgid "Excluding prefixes:\n"
+msgstr "Präfixe ausschließen:\n"
+
+#: ../svndumpfilter/svndumpfilter.c:1209
+#, c-format
+msgid "Including (and dropping empty revisions for) prefixes:\n"
+msgstr "Präfixe einschließen (und leere Revisionen verwerfen):\n"
+
+#: ../svndumpfilter/svndumpfilter.c:1211
+#, c-format
+msgid "Including prefixes:\n"
+msgstr "Präfixe einschließen:\n"
+
+#: ../svndumpfilter/svndumpfilter.c:1239
#, c-format
msgid ""
"Dropped %d revision.\n"
@@ -11261,23 +12921,23 @@
"%d Revisionen verworfen.\n"
"\n"
-#: ../svndumpfilter/main.c:1158
+#: ../svndumpfilter/svndumpfilter.c:1247
msgid "Revisions renumbered as follows:\n"
msgstr "Revisionen folgendermaßen neu nummeriert:\n"
-#: ../svndumpfilter/main.c:1186
+#: ../svndumpfilter/svndumpfilter.c:1275
#, c-format
msgid " %ld => (dropped)\n"
msgstr " %ld => (verworfen)\n"
-#: ../svndumpfilter/main.c:1201
+#: ../svndumpfilter/svndumpfilter.c:1290
#, c-format
msgid "Dropped %d node:\n"
msgid_plural "Dropped %d nodes:\n"
msgstr[0] "%d Knoten verworfen:\n"
msgstr[1] "%d Knoten verworfen:\n"
-#: ../svndumpfilter/main.c:1470
+#: ../svndumpfilter/svndumpfilter.c:1565
#, c-format
msgid ""
"\n"
@@ -11286,7 +12946,7 @@
"\n"
"Fehler: keine Präfixe angegeben.\n"
-#: ../svndumpfilter/main.c:1501
+#: ../svndumpfilter/svndumpfilter.c:1596
#, c-format
msgid ""
"Subcommand '%s' doesn't accept option '%s'\n"
@@ -11295,72 +12955,73 @@
"Unterbefehl »%s« akzeptiert die Option »%s« nicht\n"
"Geben Sie »svndumpfilter help %s« für Hilfe ein.\n"
-#: ../svndumpfilter/main.c:1519
+#: ../svndumpfilter/svndumpfilter.c:1614
msgid "Try 'svndumpfilter help' for more info"
msgstr "Versuchen Sie »svndumpfilter help« für weitere Informationen"
-#: ../svnlook/main.c:106
+#: ../svnlook/svnlook.c:113
msgid "show details for copies"
msgstr "Zeige Details für Kopien"
-#: ../svnlook/main.c:109
+#: ../svnlook/svnlook.c:116
msgid "print differences against the copy source"
msgstr "Gibt Unterschiede gegenüber der Quelle der Kopie aus"
-#: ../svnlook/main.c:112
+#: ../svnlook/svnlook.c:119
msgid "show full paths instead of indenting them"
msgstr "Zeige vollständige Pfade anstatt sie einzurücken"
-#: ../svnlook/main.c:118
+#: ../svnlook/svnlook.c:125
msgid "maximum number of history entries"
msgstr "Maximale Anzahl von Logeinträgen"
-#: ../svnlook/main.c:121
+#: ../svnlook/svnlook.c:128
msgid "do not print differences for added files"
msgstr "Keine Unterschiede für hinzugefügte Dateien ausgeben"
-#: ../svnlook/main.c:127
+#: ../svnlook/svnlook.c:143
msgid "operate on single directory only"
msgstr "Nicht rekursiv hinabsteigen"
-#: ../svnlook/main.c:130
+#: ../svnlook/svnlook.c:146
msgid "specify revision number ARG"
msgstr "Revisionsnummer PAR angegeben"
-#: ../svnlook/main.c:133
+#: ../svnlook/svnlook.c:149
msgid "operate on a revision property (use with -r or -t)"
msgstr ""
"auf einer Revisionseigenschaft arbeiten (mit -r\n"
" oder -t verwenden)"
-#: ../svnlook/main.c:136
+#: ../svnlook/svnlook.c:152
msgid "show node revision ids for each path"
msgstr "gibt die IDs der Knotenrevisionen jedes Pfades aus"
-#: ../svnlook/main.c:139
+#: ../svnlook/svnlook.c:155
+#, fuzzy
+msgid "show path's inherited properties"
+msgstr "Zeige vollständige Pfade anstatt sie einzurücken"
+
+#: ../svnlook/svnlook.c:158
msgid "specify transaction name ARG"
msgstr "Transaktionsname PAR angeben"
-#: ../svnlook/main.c:142
+#: ../svnlook/svnlook.c:161
msgid "be verbose"
msgstr "ausführliche Meldungen"
-#: ../svnlook/main.c:151
+#: ../svnlook/svnlook.c:170
+#, fuzzy
msgid ""
-"Default: '-u'. When Subversion is invoking an\n"
-" external diff program, ARG is simply passed along\n"
-" to the program. But when Subversion is using its\n"
-" default internal diff implementation, or when\n"
-" Subversion is displaying blame annotations, ARG\n"
-" could be any of the following:\n"
-" -u (--unified):\n"
-" Output 3 lines of unified context.\n"
-" -b (--ignore-space-change):\n"
-" Ignore changes in the amount of white space.\n"
-" -w (--ignore-all-space):\n"
-" Ignore all white space.\n"
-" --ignore-eol-style:\n"
-" Ignore changes in EOL style"
+"Specify differencing options for external diff or\n"
+" internal diff. Default: '-u'. Options are\n"
+" separated by spaces. Internal diff takes:\n"
+" -u, --unified: Show 3 lines of unified context\n"
+" -b, --ignore-space-change: Ignore changes in\n"
+" amount of white space\n"
+" -w, --ignore-all-space: Ignore all white space\n"
+" --ignore-eol-style: Ignore changes in EOL style\n"
+" -p, --show-c-function: Show C function name"
msgstr ""
"Vorgabe: »-u«. Wenn Subversion ein\n"
" externes Vergleichsprogramm aufruft, wird PAR nur\n"
@@ -11376,9 +13037,11 @@
" -w (--ignore-all-space):\n"
" Ignoriert sämtliche Leerzeichen.\n"
" --ignore-eol-style:\n"
-" Ignoriert Änderungen im EOL-Stil"
+" Ignoriert Änderungen im Zeilenendestil.\n"
+" -p (--show-c-function):\n"
+" Zeigt C-Funktionsname in Diff-Ausgabe."
-#: ../svnlook/main.c:189
+#: ../svnlook/svnlook.c:201
msgid ""
"usage: svnlook author REPOS_PATH\n"
"\n"
@@ -11388,7 +13051,7 @@
"\n"
"Gibt den Autor aus.\n"
-#: ../svnlook/main.c:194
+#: ../svnlook/svnlook.c:206
msgid ""
"usage: svnlook cat REPOS_PATH FILE_PATH\n"
"\n"
@@ -11399,7 +13062,7 @@
"Gibt den Inhalt einer Datei aus. Ein vorangestellter »/« im DATEI_PFAD ist\n"
"optional.\n"
-#: ../svnlook/main.c:199
+#: ../svnlook/svnlook.c:211
msgid ""
"usage: svnlook changed REPOS_PATH\n"
"\n"
@@ -11409,7 +13072,7 @@
"\n"
"Gibt die geänderten Pfade aus.\n"
-#: ../svnlook/main.c:204
+#: ../svnlook/svnlook.c:216
msgid ""
"usage: svnlook date REPOS_PATH\n"
"\n"
@@ -11419,7 +13082,7 @@
"\n"
"Gibt das Datum aus.\n"
-#: ../svnlook/main.c:209
+#: ../svnlook/svnlook.c:221
msgid ""
"usage: svnlook diff REPOS_PATH\n"
"\n"
@@ -11429,7 +13092,7 @@
"\n"
"Gibt Unterschiede von geänderten Dateien oder Eigenschaften im GNU-Stil aus.\n"
-#: ../svnlook/main.c:215
+#: ../svnlook/svnlook.c:228
msgid ""
"usage: svnlook dirs-changed REPOS_PATH\n"
"\n"
@@ -11441,7 +13104,7 @@
"Gibt diejenigen Pfade aus, die (durch Eigenschaftsmodifikationen) selbst\n"
"bzw. deren Dateien geändert wurden.\n"
-#: ../svnlook/main.c:221
+#: ../svnlook/svnlook.c:234
msgid ""
"usage: svnlook filesize REPOS_PATH PATH_IN_REPOS\n"
"\n"
@@ -11453,7 +13116,7 @@
"Gibt die Größe (in Bytes) der in PFAD_IN_ARCHIV befindlichen Datei\n"
"aus, wie sie im Projektarchiv vorliegt.\n"
-#: ../svnlook/main.c:227
+#: ../svnlook/svnlook.c:240
msgid ""
"usage: svnlook help [SUBCOMMAND...]\n"
"\n"
@@ -11463,7 +13126,7 @@
"\n"
"Beschreibt die Anwendung dieses Programms und seiner Unterbefehle.\n"
-#: ../svnlook/main.c:232
+#: ../svnlook/svnlook.c:245
msgid ""
"usage: svnlook history REPOS_PATH [PATH_IN_REPOS]\n"
"\n"
@@ -11475,7 +13138,7 @@
"Gibt Informationen über die Historie eines Pfades im Projektarchiv aus (oder\n"
"über das Basisverzeichnis, falls kein Pfad angegeben wurde.)\n"
-#: ../svnlook/main.c:238
+#: ../svnlook/svnlook.c:251
msgid ""
"usage: svnlook info REPOS_PATH\n"
"\n"
@@ -11485,7 +13148,7 @@
"\n"
"Gibt den Autor, das Datum, die Größe der Logmeldung und die Logmeldung aus.\n"
-#: ../svnlook/main.c:243
+#: ../svnlook/svnlook.c:256
msgid ""
"usage: svnlook lock REPOS_PATH PATH_IN_REPOS\n"
"\n"
@@ -11495,7 +13158,7 @@
"\n"
"Wenn eine Sperre für einen Pfad im Projektarchiv existiert, beschreibe diese.\n"
-#: ../svnlook/main.c:248
+#: ../svnlook/svnlook.c:261
msgid ""
"usage: svnlook log REPOS_PATH\n"
"\n"
@@ -11505,7 +13168,7 @@
"\n"
"Gibt die Logmeldung aus.\n"
-#: ../svnlook/main.c:253
+#: ../svnlook/svnlook.c:266
msgid ""
"usage: 1. svnlook propget REPOS_PATH PROPNAME PATH_IN_REPOS\n"
" 2. svnlook propget --revprop REPOS_PATH PROPNAME\n"
@@ -11519,7 +13182,7 @@
"Gibt den Rohwert einer Eigenschaft eines Pfades im Projektarchiv aus.\n"
"Mit --revprop wird der Rohwert einer Revisionseigenschaft ausgegeben.\n"
-#: ../svnlook/main.c:262
+#: ../svnlook/svnlook.c:275
msgid ""
"usage: 1. svnlook proplist REPOS_PATH PATH_IN_REPOS\n"
" 2. svnlook proplist --revprop REPOS_PATH\n"
@@ -11535,7 +13198,7 @@
"Mit --revprop werden Revisionseigenschaften ausgegeben.\n"
"Mit -v werden auch die Eigenschaftswerte ausgegeben.\n"
-#: ../svnlook/main.c:272
+#: ../svnlook/svnlook.c:286
msgid ""
"usage: svnlook tree REPOS_PATH [PATH_IN_REPOS]\n"
"\n"
@@ -11547,7 +13210,7 @@
"Gibt den Baum beginnend bei PFAD_IN_PROJ aus (falls angegeben, sonst an der\n"
"Basis des Baumes), wobei optional die IDs der Knotenrevisionen ausgegeben werden.\n"
-#: ../svnlook/main.c:278
+#: ../svnlook/svnlook.c:292
msgid ""
"usage: svnlook uuid REPOS_PATH\n"
"\n"
@@ -11557,7 +13220,7 @@
"\n"
"Gibt die UUID des Projektarchivs aus.\n"
-#: ../svnlook/main.c:283
+#: ../svnlook/svnlook.c:297
msgid ""
"usage: svnlook youngest REPOS_PATH\n"
"\n"
@@ -11567,28 +13230,28 @@
"\n"
"Gibt die neueste Revisionsnummer aus.\n"
-#: ../svnlook/main.c:934
+#: ../svnlook/svnlook.c:857
#, c-format
msgid "Copied: %s (from rev %ld, %s)\n"
msgstr "Kopiert: %s (von Rev %ld, %s)\n"
-#: ../svnlook/main.c:1002
+#: ../svnlook/svnlook.c:925
msgid "Added"
msgstr "Hinzugefügt"
-#: ../svnlook/main.c:1003
+#: ../svnlook/svnlook.c:926
msgid "Deleted"
msgstr "Gelöscht"
-#: ../svnlook/main.c:1004
+#: ../svnlook/svnlook.c:927
msgid "Modified"
msgstr "Geändert"
-#: ../svnlook/main.c:1005
+#: ../svnlook/svnlook.c:928
msgid "Index"
msgstr "Index"
-#: ../svnlook/main.c:1017
+#: ../svnlook/svnlook.c:939
msgid ""
"(Binary files differ)\n"
"\n"
@@ -11596,26 +13259,30 @@
"(Binärdateien sind unterschiedlich)\n"
"\n"
-#: ../svnlook/main.c:1227
+#: ../svnlook/svnlook.c:1206
msgid "unknown"
msgstr "unbekannt"
-#: ../svnlook/main.c:1374 ../svnlook/main.c:1480 ../svnlook/main.c:1509
+#: ../svnlook/svnlook.c:1256
#, c-format
msgid "Transaction '%s' is not based on a revision; how odd"
msgstr "Transaktion »%s« ist nicht von einer Revision abgeleitet, wie eigenartig"
-#: ../svnlook/main.c:1404
+#: ../svnlook/svnlook.c:1399
#, c-format
msgid "'%s' is a URL, probably should be a path"
msgstr "»%s« ist eine URL, sollte vermutlich ein Pfad sein"
-#: ../svnlook/main.c:1427 ../svnlook/main.c:1450
+#: ../svnlook/svnlook.c:1422 ../svnlook/svnlook.c:1445
#, c-format
msgid "Path '%s' is not a file"
msgstr "Pfad »%s« ist keine Datei"
-#: ../svnlook/main.c:1593
+#: ../svnlook/svnlook.c:1581
+msgid "History item limit reached"
+msgstr ""
+
+#: ../svnlook/svnlook.c:1600
#, c-format
msgid ""
"REVISION PATH <ID>\n"
@@ -11624,7 +13291,7 @@
"REVISION PFAD <ID>\n"
"-------- ---------\n"
-#: ../svnlook/main.c:1598
+#: ../svnlook/svnlook.c:1605
#, c-format
msgid ""
"REVISION PATH\n"
@@ -11633,27 +13300,36 @@
"REVISION PFAD\n"
"-------- ----\n"
-#: ../svnlook/main.c:1647
+#: ../svnlook/svnlook.c:1677
#, c-format
msgid "Property '%s' not found on revision %ld"
msgstr "Eigenschaft »%s« wurde in Revision %ld nicht gefunden"
-#: ../svnlook/main.c:1654
+#: ../svnlook/svnlook.c:1686
+#, fuzzy, c-format
+msgid "Property '%s' not found on path '%s' or inherited from a parent in revision %ld"
+msgstr "Eigenschaft »%s« wurde in Pfad »%s« in Revision %ld nicht gefunden"
+
+#: ../svnlook/svnlook.c:1692
#, c-format
msgid "Property '%s' not found on path '%s' in revision %ld"
msgstr "Eigenschaft »%s« wurde in Pfad »%s« in Revision %ld nicht gefunden"
-#: ../svnlook/main.c:1659
+#: ../svnlook/svnlook.c:1700
+#, fuzzy, c-format
+msgid "Property '%s' not found on path '%s' or inherited from a parent in transaction %s"
+msgstr "Eigenschaft »%s« wurde in Pfad »%s« in Transaktion %s nicht gefunden"
+
+#: ../svnlook/svnlook.c:1706
#, c-format
msgid "Property '%s' not found on path '%s' in transaction %s"
msgstr "Eigenschaft »%s« wurde in Pfad »%s« in Transaktion %s nicht gefunden"
-#: ../svnlook/main.c:1905 ../svnlook/main.c:1970 ../svnlook/main.c:2137
-#, c-format
+#: ../svnlook/svnlook.c:2041
msgid "Missing repository path argument"
msgstr "Fehlende Option für Pfad des Projektarchivs"
-#: ../svnlook/main.c:1983
+#: ../svnlook/svnlook.c:2193
msgid ""
"general usage: svnlook SUBCOMMAND REPOS_PATH [ARGS & OPTIONS ...]\n"
"Note: any subcommand which takes the '--revision' and '--transaction'\n"
@@ -11675,11 +13351,7 @@
"\n"
"Verfügbare Unterbefehle:\n"
-#: ../svnlook/main.c:2039
-msgid "Missing path argument"
-msgstr "Fehlender Pfad Parameter"
-
-#: ../svnlook/main.c:2063
+#: ../svnlook/svnlook.c:2271
#, c-format
msgid ""
"Comment (%i line):\n"
@@ -11694,41 +13366,45 @@
"Kommentar (%i Zeilen):\n"
"%s\n"
-#: ../svnlook/main.c:2111
+#: ../svnlook/svnlook.c:2323
#, c-format
msgid "Missing propname argument"
msgstr "Fehlender PROPNAME Parameter"
-#: ../svnlook/main.c:2112
+#: ../svnlook/svnlook.c:2324
#, c-format
msgid "Missing propname and repository path arguments"
msgstr "Eigenschaftsname und Pfad im Projektarchiv nicht angegeben"
-#: ../svnlook/main.c:2118
+#: ../svnlook/svnlook.c:2330
msgid "Missing propname or repository path argument"
msgstr "Eigenschaftsname oder Pfad im Projektarchiv nicht angegeben"
-#: ../svnlook/main.c:2277
+#: ../svnlook/svnlook.c:2494
msgid "Invalid revision number supplied"
msgstr "Ungültige Revisionsnummer angegeben"
-#: ../svnlook/main.c:2369
+#: ../svnlook/svnlook.c:2606
msgid "The '--transaction' (-t) and '--revision' (-r) arguments cannot co-exist"
msgstr ""
"Die Parameter »--transaction« (-t) und »--revision« (-r) können nicht\n"
"gleichzeitig angegeben werden"
-#: ../svnlook/main.c:2451
+#: ../svnlook/svnlook.c:2613
+msgid "Cannot use the '--show-inherited-props' option with the '--revprop' option"
+msgstr ""
+
+#: ../svnlook/svnlook.c:2696
#, c-format
msgid "Repository argument required\n"
msgstr "Projektarchiv Parameter erforderlich\n"
-#: ../svnlook/main.c:2460
+#: ../svnlook/svnlook.c:2705
#, c-format
msgid "'%s' is a URL when it should be a path\n"
msgstr "»%s« ist eine URL obwohl es ein Pfad sein sollte\n"
-#: ../svnlook/main.c:2512
+#: ../svnlook/svnlook.c:2757
#, c-format
msgid ""
"Subcommand '%s' doesn't accept option '%s'\n"
@@ -11737,48 +13413,80 @@
"Unterbefehl »%s« akzeptiert die Option »%s« nicht\n"
"Geben Sie »svnlook help %s« ein, um Hilfe zu erhalten.\n"
-#: ../svnlook/main.c:2555
+#: ../svnlook/svnlook.c:2800
msgid "Try 'svnlook help' for more info"
msgstr "Versuchen Sie »svnlook help« für weitere Informationen"
-#: ../svnrdump/load_editor.c:97 ../svnsync/main.c:351
-msgid "Target server does not support atomic revision property edits; consider upgrading it to 1.7 or using an external locking program"
-msgstr "Zielserver unterstützt keine atomaren Änderungen von Revisionseigenschaften; Verwenden Sie entweder 1.7 oder ein externes Programm zum Sperren."
+#: ../svnmucc/svnmucc.c:929
+msgid ""
+"Subversion multiple URL command client\n"
+"usage: svnmucc [OPTION]... [ACTION]...\n"
+"\n"
+" Perform one or more Subversion repository URL-based ACTIONs, committing\n"
+" the result as a (single) new revision.\n"
+"\n"
+"Actions:\n"
+" cp REV URL1 URL2 : copy URL1@REV to URL2\n"
+" mkdir URL : create new directory URL\n"
+" mv URL1 URL2 : move URL1 to URL2\n"
+" rm URL : delete URL\n"
+" put SRC-FILE URL : add or modify file URL with contents copied from\n"
+" SRC-FILE (use \"-\" to read from standard input)\n"
+" propset NAME VAL URL : set property NAME on URL to value VAL\n"
+" propsetf NAME VAL URL : set property NAME on URL to value from file VAL\n"
+" propdel NAME URL : delete property NAME from URL\n"
+"\n"
+"Valid options:\n"
+" -h, -? [--help] : display this text\n"
+" -m [--message] ARG : use ARG as a log message\n"
+" -F [--file] ARG : read log message from file ARG\n"
+" -u [--username] ARG : commit the changes as username ARG\n"
+" -p [--password] ARG : use ARG as the password\n"
+" -U [--root-url] ARG : interpret all action URLs relative to ARG\n"
+" -r [--revision] ARG : use revision ARG as baseline for changes\n"
+" --with-revprop ARG : set revision property in the following format:\n"
+" NAME[=VALUE]\n"
+" -n [--non-interactive] : don't prompt the user about anything\n"
+" -X [--extra-args] ARG : append arguments from file ARG (one per line;\n"
+" : use \"-\" to read from standard input)\n"
+" --config-dir ARG : use ARG to override the config directory\n"
+" --config-option ARG : use ARG to override a configuration option\n"
+" --no-auth-cache : do not cache authentication tokens\n"
+" --version : print version information\n"
+msgstr ""
-#: ../svnrdump/load_editor.c:106 ../svnsync/main.c:360
-#, c-format
-msgid "Can't get local hostname"
-msgstr "Kann den lokalen Hostnamen nicht bekommen"
+#: ../svnmucc/svnmucc.c:999
+#, fuzzy
+msgid "--message (-m), --file (-F), and --with-revprop=svn:log are mutually exclusive"
+msgstr "--with-revprop und --with-no-revprops schließen sich gegenseitig aus"
-#: ../svnrdump/load_editor.c:133 ../svnsync/main.c:396
+#: ../svnrdump/load_editor.c:382 ../svnsync/svnsync.c:325
#, c-format
msgid "Failed to get lock on destination repos, currently held by '%s'\n"
msgstr ""
"Konnte Sperre für Zielprojektarchiv nicht erhalten, die zurzeit von\n"
"»%s« gehalten wird\n"
-#: ../svnrdump/load_editor.c:167 ../svnsync/main.c:430
-#, c-format
-msgid "Couldn't get lock on destination repos after %d attempts"
-msgstr "Konnte Sperre für Zielprojektarchiv nach %d Versuchen nicht erhalten"
+#: ../svnrdump/load_editor.c:528
+#, fuzzy
+msgid "Target server does not support atomic revision property edits; consider upgrading it to 1.7."
+msgstr "Zielserver unterstützt keine atomaren Änderungen von Revisionseigenschaften; Verwenden Sie entweder 1.7 oder ein externes Programm zum Sperren."
-#: ../svnrdump/load_editor.c:684
-msgid "\"svnrdump load\"'s lock was stolen; can't remove it"
-msgstr "Die Sperre von »svnrump load« wurde gestohlen und konnte nicht entfernt werden"
-
-#: ../svnrdump/svnrdump.c:58
+#: ../svnrdump/svnrdump.c:101
+#, fuzzy
msgid ""
"usage: svnrdump dump URL [-r LOWER[:UPPER]]\n"
"\n"
-"Dump revisions LOWER to UPPER of repository at remote URL to stdout in a 'dumpfile' portable format.\n"
-"If only LOWER is given, dump that one revision.\n"
+"Dump revisions LOWER to UPPER of repository at remote URL to stdout\n"
+"in a 'dumpfile' portable format. If only LOWER is given, dump that\n"
+"one revision.\n"
msgstr ""
"Aufruf: svnrdump dump URL [-r VON[:BIS]]\n"
"\n"
"Gibt einen Abzug der Revisionen VON:BIS eines Projektarchivs an der entferten URL in einem portablen »Dump«-Format aus.\n"
"Falls nur VON angegeben wurde, wird nur diese Revision ausgegeben.\n"
-#: ../svnrdump/svnrdump.c:64
+#: ../svnrdump/svnrdump.c:107
msgid ""
"usage: svnrdump load URL\n"
"\n"
@@ -11788,7 +13496,7 @@
"\n"
"Liest einen Datenstrom im »Dump«-Format von der Standardeingabe in ein Projektarchive an entfertner URL.\n"
-#: ../svnrdump/svnrdump.c:69
+#: ../svnrdump/svnrdump.c:111
msgid ""
"usage: svnrdump help [SUBCOMMAND...]\n"
"\n"
@@ -11798,126 +13506,147 @@
"\n"
"Beschreibt die Anwendung dieses Programms und seiner Unterbefehle.\n"
-#: ../svnrdump/svnrdump.c:88 ../svnserve/main.c:218 ../svnversion/main.c:133
+#: ../svnrdump/svnrdump.c:124
+msgid "dump incrementally"
+msgstr "Inkrementell ausgeben"
+
+#: ../svnrdump/svnrdump.c:142 ../svnserve/svnserve.c:280
+#: ../svnversion/svnversion.c:137
msgid "display this help"
msgstr "Hilfe anzeigen"
-#: ../svnrdump/svnrdump.c:91 ../svnsync/main.c:196
-msgid ""
-"set user configuration option in the format:\n"
-" FILE:SECTION:OPTION=[VALUE]\n"
-" For example:\n"
-" servers:global:http-library=serf"
-msgstr ""
-"Setzt Benutzerkonfigurationsoption im Format:\n"
-" DATEI:ABSCHNITT:OPTION=[WERT]\n"
-" Zum Beispiel:\n"
-" servers:global:http-library=serf"
-
-#: ../svnrdump/svnrdump.c:405
+#: ../svnrdump/svnrdump.c:733
+#, fuzzy
msgid ""
"general usage: svnrdump SUBCOMMAND URL [-r LOWER[:UPPER]]\n"
"Type 'svnrdump help <subcommand>' for help on a specific subcommand.\n"
+"Type 'svnrdump --version' to see the program version and RA modules.\n"
"\n"
"Available subcommands:\n"
msgstr ""
-"Aufruf: svnrdump UNTERBEFEHL URL [-r [ VON[:BIS]]\n"
-"Geben Sie »svnrdump help <Unterbefehl>« ein, um Hilfe zu einem\n"
-" Unterbefehl zu erhalten.\n"
+"Aufruf: svnsync UNTERBEFEHL ZIEL_URL [Optionen & Parameter ...]\n"
+"Geben Sie »svnsync help <Unterbefehl>« ein, um Hilfe zu einem\n"
+"Unterbefehl zu erhalten.\n"
+"Geben Sie »svnsync --version« ein, um die Programmversion und die\n"
+"Zugriffsmodule zu sehen.\n"
"\n"
"Verfügbare Unterbefehle:\n"
-#: ../svnrdump/svnrdump.c:585
-#, c-format
-msgid "Revision %ld does not exist.\n"
+#: ../svnrdump/svnrdump.c:777 ../svnrdump/svnrdump.c:811
+msgid "Unsupported revision specifier used; use only integer values or 'HEAD'"
+msgstr ""
+
+#: ../svnrdump/svnrdump.c:785 ../svnrdump/svnrdump.c:819
+#, fuzzy, c-format
+msgid "Revision '%ld' does not exist"
msgstr "Revision %ld existiert nicht.\n"
-#: ../svnrdump/svnrdump.c:592
-#, c-format
-msgid "LOWER cannot be greater than UPPER.\n"
-msgstr "VON kann nicht größer als BIS sein.\n"
+#: ../svnrdump/svnrdump.c:829
+msgid "LOWER revision cannot be greater than UPPER revision; consider reversing your revision range"
+msgstr ""
-#: ../svnserve/cyrus_auth.c:264
+#: ../svnrdump/svnrdump.c:1076
+#, fuzzy, c-format
+msgid ""
+"Subcommand '%s' doesn't accept option '%s'\n"
+"Type 'svnrdump help %s' for usage.\n"
+msgstr ""
+"Unterbefehl »%s« akzeptiert die Option »%s« nicht\n"
+"Geben Sie »svn help %s« für Hilfe ein.\n"
+
+#: ../svnserve/cyrus_auth.c:118
+msgid "Could not initialize the SASL library"
+msgstr "Konnte die SASL-Bibliothek nicht initialisieren"
+
+#: ../svnserve/cyrus_auth.c:259
#, c-format
msgid "Can't get hostname"
msgstr "Kann den Hostnamen nicht erhalten"
-#: ../svnserve/cyrus_auth.c:329
+#: ../svnserve/cyrus_auth.c:324
msgid "Could not obtain the list of SASL mechanisms"
msgstr "Konnte die Liste der SASL-Mechanismen nicht erhalten"
-#: ../svnserve/cyrus_auth.c:371
+#: ../svnserve/cyrus_auth.c:366
msgid "Couldn't obtain the authenticated username"
msgstr "Kann den angemeldeten Benutzername nicht erhalten"
-#: ../svnserve/main.c:151
+#: ../svnserve/serve.c:1925
+msgid "Path is not a string"
+msgstr "Pfad ist keine Zeichenkette"
+
+#: ../svnserve/serve.c:2078
+msgid "Log revprop entry not a string"
+msgstr "Log-Revisionseigenschaftseintrag ist keine Zeichenkette"
+
+#: ../svnserve/serve.c:2084
+#, c-format
+msgid "Unknown revprop word '%s' in log command"
+msgstr "Unbekanntes Revisionseigenschaftswort »%s« in Log-Kommando"
+
+#: ../svnserve/serve.c:2100
+msgid "Log path entry not a string"
+msgstr "Logpfadeintrag ist keine Zeichenkette"
+
+#: ../svnserve/svnserve.c:157
msgid "daemon mode"
msgstr "Daemonmodus"
-#: ../svnserve/main.c:152
+#: ../svnserve/svnserve.c:158
msgid "inetd mode"
msgstr "Inetd-Modus"
-#: ../svnserve/main.c:153
+#: ../svnserve/svnserve.c:159
msgid "tunnel mode"
msgstr "Tunnelmodus"
-#: ../svnserve/main.c:154
+#: ../svnserve/svnserve.c:160
msgid "listen-once mode (useful for debugging)"
msgstr "»listen-once«-Modus (nützlich zum Debuggen)"
-#: ../svnserve/main.c:157
+#: ../svnserve/svnserve.c:163
msgid "Windows service mode (Service Control Manager)"
msgstr "Windows-Service-Modus (Service Control Manager)"
-#: ../svnserve/main.c:159
+#: ../svnserve/svnserve.c:165
msgid "root of directory to serve"
msgstr "Basis des bereitzustellenden Verzeichnisses"
-#: ../svnserve/main.c:161
+#: ../svnserve/svnserve.c:167
msgid "force read only, overriding repository config file"
msgstr ""
"Erzwinge Schreibschutz. Setze Einstellung in der\n"
"Projektarchivkonfiguration außer Kraft."
-#: ../svnserve/main.c:163
+#: ../svnserve/svnserve.c:169
msgid "read configuration from file ARG"
msgstr "Konfiguration aus Datei PAR lesen"
-# CHECKME
-#: ../svnserve/main.c:166
-msgid ""
-"listen port\n"
-" [mode: daemon, service, listen-once]"
+#: ../svnserve/svnserve.c:172 ../svnserve/svnserve.c:176
+msgid "listen port. The default port is "
msgstr ""
-"abzuhörender Port\n"
-" [Modus: daemon, service, listen-once]"
-#: ../svnserve/main.c:170
-msgid ""
-"listen port\n"
-" [mode: daemon, listen-once]"
-msgstr ""
-"abzuhörender Port\n"
-" [Modus: daemon, listen-once]"
-
-#: ../svnserve/main.c:176
+#: ../svnserve/svnserve.c:182
+#, fuzzy
msgid ""
"listen hostname or IP address\n"
+" By default svnserve listens on all addresses.\n"
" [mode: daemon, service, listen-once]"
msgstr ""
"abzuhörender Rechnername oder IP-Adresse\n"
" [Modus: daemon, service, listen-once]"
-#: ../svnserve/main.c:180
+#: ../svnserve/svnserve.c:188
+#, fuzzy
msgid ""
"listen hostname or IP address\n"
+" By default svnserve listens on all addresses.\n"
" [mode: daemon, listen-once]"
msgstr ""
"abzuhörender Rechnername oder IP-Adresse\n"
" [Modus: daemon, listen-once]"
-#: ../svnserve/main.c:185
+#: ../svnserve/svnserve.c:195
msgid ""
"prefer IPv6 when resolving the listen hostname\n"
" [IPv4 is preferred by default. Using IPv4 and IPv6\n"
@@ -11930,13 +13659,61 @@
" nicht unterstützt. Verwenden Sie bei Bedarf inetd\n"
" oder den Tunnel-Modus."
+#: ../svnserve/svnserve.c:203
+msgid ""
+"compression level to use for network transmissions\n"
+" [0 .. no compression, 5 .. default, \n"
+" 9 .. maximum compression]"
+msgstr ""
+
+#: ../svnserve/svnserve.c:209
+msgid ""
+"size of the extra in-memory cache in MB used to\n"
+" minimize redundant operations.\n"
+" Default is 128 for threaded and 16 for non-\n"
+" threaded mode.\n"
+" [used for FSFS repositories only]"
+msgstr ""
+
+#: ../svnserve/svnserve.c:219
+msgid ""
+"enable or disable caching of deltas between older\n"
+" revisions.\n"
+" Default is no.\n"
+" [used for FSFS repositories only]"
+msgstr ""
+
+#: ../svnserve/svnserve.c:227
+msgid ""
+"enable or disable caching of file contents\n"
+" Default is yes.\n"
+" [used for FSFS repositories only]"
+msgstr ""
+
+#: ../svnserve/svnserve.c:233
+msgid ""
+"enable or disable caching of revision properties.\n"
+" Consult the documentation before activating this.\n"
+" Default is no.\n"
+" [used for FSFS repositories only]"
+msgstr ""
+
+#: ../svnserve/svnserve.c:241
+msgid ""
+"Optimize throughput based on the assumption that\n"
+" clients can receive data with a bitrate of at\n"
+" least ARG Gbit/s. For clients receiving data at\n"
+" less than 1 Gbit/s, zero should be used.\n"
+" Default is 0 (optimizations disabled)."
+msgstr ""
+
#. ### Making the assumption here that WIN32 never has fork and so
#. * ### this option never exists when --service exists.
-#: ../svnserve/main.c:195
+#: ../svnserve/svnserve.c:253
msgid "use threads instead of fork [mode: daemon]"
msgstr "Verwende Threads anstelle von »fork« [Modus: daemon]"
-#: ../svnserve/main.c:199
+#: ../svnserve/svnserve.c:257
msgid ""
"run in foreground (useful for debugging)\n"
" [mode: daemon]"
@@ -11944,11 +13721,17 @@
"Im Vordergrund starten (nützlich zum Debuggen)\n"
" [Modus: daemon]"
-#: ../svnserve/main.c:203
+#: ../svnserve/svnserve.c:261
+msgid ""
+"handle one connection at a time in the parent process\n"
+" (useful for debugging)"
+msgstr ""
+
+#: ../svnserve/svnserve.c:265
msgid "svnserve log file"
msgstr "Protokolldatei von svnserve"
-#: ../svnserve/main.c:206
+#: ../svnserve/svnserve.c:268
msgid ""
"write server process ID to file ARG\n"
" [mode: daemon, listen-once, service]"
@@ -11956,7 +13739,7 @@
"Schreibe Server-Prozess-ID in Datei PAR\n"
" [Modus: daemon, listen-once, service]"
-#: ../svnserve/main.c:210
+#: ../svnserve/svnserve.c:272
msgid ""
"write server process ID to file ARG\n"
" [mode: daemon, listen-once]"
@@ -11964,7 +13747,7 @@
"Schreibe Server-Prozess-ID in Datei PAR\n"
" [Modus: daemon, listen-once]"
-#: ../svnserve/main.c:215
+#: ../svnserve/svnserve.c:277
msgid ""
"tunnel username (default is current uid's name)\n"
" [mode: tunnel]"
@@ -11972,12 +13755,21 @@
"Tunnel-Benutzername (Vorgabe ist der Name zur aktuellen UID)\n"
" [Modus: tunnel]"
-#: ../svnserve/main.c:231
+#: ../svnserve/svnserve.c:282
+#, fuzzy
+msgid ""
+"virtual host mode (look for repo in directory\n"
+" of provided hostname)"
+msgstr ""
+"abzuhörender Rechnername oder IP-Adresse\n"
+" [Modus: daemon, listen-once]"
+
+#: ../svnserve/svnserve.c:299
#, c-format
msgid "Type '%s --help' for usage.\n"
msgstr "Geben Sie »%s --help« für weitere Hilfe ein.\n"
-#: ../svnserve/main.c:241
+#: ../svnserve/svnserve.c:309
msgid ""
"usage: svnserve [-d | -i | -t | -X | --service] [options]\n"
"\n"
@@ -11987,7 +13779,7 @@
"\n"
"Gültige Optionen:\n"
-#: ../svnserve/main.c:247
+#: ../svnserve/svnserve.c:315
msgid ""
"usage: svnserve [-d | -i | -t | -X] [options]\n"
"\n"
@@ -11997,7 +13789,7 @@
"\n"
"Gültige Optionen:\n"
-#: ../svnserve/main.c:275
+#: ../svnserve/svnserve.c:343
msgid ""
"\n"
"Cyrus SASL authentication is available.\n"
@@ -12005,86 +13797,78 @@
"\n"
"Cyrus-SASL-Authentifizierung ist verfügbar.\n"
-#: ../svnserve/main.c:487
+#: ../svnserve/svnserve.c:580
#, c-format
msgid "Invalid port '%s'"
msgstr "Ungültiger Port »%s«"
-#: ../svnserve/main.c:528
+#: ../svnserve/svnserve.c:621
#, c-format
msgid "svnserve: Root path '%s' does not exist or is not a directory.\n"
msgstr "svnserve: Wurzelpfad »%s« existiert nicht oder ist kein Verzeichnis.\n"
-#: ../svnserve/main.c:585
+#: ../svnserve/svnserve.c:729
msgid "You must specify exactly one of -d, -i, -t, --service or -X.\n"
msgstr "Sie müssen genau einen der Parameter -d, -i, -t, --service oder -X angeben.\n"
-#: ../svnserve/main.c:588
+#: ../svnserve/svnserve.c:732
msgid "You must specify exactly one of -d, -i, -t or -X.\n"
msgstr "Sie müssen genau einen der Parameter -d, -i, -t oder -X angeben.\n"
-#: ../svnserve/main.c:613
+#: ../svnserve/svnserve.c:741
+msgid "You may only specify one of -T or --single-thread\n"
+msgstr ""
+
+#: ../svnserve/svnserve.c:768
#, c-format
msgid "Option --tunnel-user is only valid in tunnel mode.\n"
msgstr "Die Option --tunnel-user ist nur im Tunnelmodus zulässig.\n"
-#: ../svnserve/main.c:678
+#: ../svnserve/svnserve.c:787
+#, c-format
+msgid "Can't open stdout"
+msgstr "Kann Standardausgabe nicht öffnen"
+
+#: ../svnserve/svnserve.c:841
#, c-format
msgid "svnserve: The --service flag is only valid if the process is started by the Service Control Manager.\n"
msgstr "svnserve: Die Option --service ist nur gültig, wenn der Prozess durch den Service Control Manager gestartet wurde.\n"
-#: ../svnserve/main.c:728
+#: ../svnserve/svnserve.c:891
#, c-format
msgid "Can't get address info"
msgstr "Kann Adressinformation nicht ermitteln"
-#: ../svnserve/main.c:742
+#: ../svnserve/svnserve.c:905
#, c-format
msgid "Can't create server socket"
msgstr "Kann Serververbindung nicht erzeugen"
-#: ../svnserve/main.c:753
+#: ../svnserve/svnserve.c:916
#, c-format
msgid "Can't bind server socket"
msgstr "Kann Serververbindung nicht binden"
-#: ../svnserve/main.c:831
+#: ../svnserve/svnserve.c:1012
#, c-format
msgid "Can't accept client connection"
msgstr "Kann Clientverbindung nicht annehmen"
-#: ../svnserve/main.c:907
+#: ../svnserve/svnserve.c:1092
#, c-format
msgid "Can't create threadattr"
msgstr "Kann »Thread« Attribut nicht erzeugen"
-#: ../svnserve/main.c:915
+#: ../svnserve/svnserve.c:1100
#, c-format
msgid "Can't set detached state"
msgstr "Kann nicht in den gelösten Status wechseln"
-#: ../svnserve/main.c:928
+#: ../svnserve/svnserve.c:1113
#, c-format
msgid "Can't create thread"
msgstr "Kann Thread nicht erzeugen"
-#: ../svnserve/serve.c:1857
-msgid "Path is not a string"
-msgstr "Pfad ist keine Zeichenkette"
-
-#: ../svnserve/serve.c:2011
-msgid "Log revprop entry not a string"
-msgstr "Log-Revisionseigenschaftseintrag ist keine Zeichenkette"
-
-#: ../svnserve/serve.c:2018
-#, c-format
-msgid "Unknown revprop word '%s' in log command"
-msgstr "Unbekanntes Revisionseigenschaftswort »%s« in Log-Kommando"
-
-#: ../svnserve/serve.c:2034
-msgid "Log path entry not a string"
-msgstr "Logpfadeintrag ist keine Zeichenkette"
-
#: ../svnserve/winservice.c:346
#, c-format
msgid "Failed to create winservice_start_event"
@@ -12105,7 +13889,7 @@
msgid "The service failed to start; an internal error occurred while starting the service"
msgstr "Der Dienst konnte nicht gestartet werden; ein interner Fehler trat beim Starten des Dienstes auf"
-#: ../svnsync/main.c:85
+#: ../svnsync/svnsync.c:90
#, fuzzy
msgid ""
"usage: svnsync initialize DEST_URL SOURCE_URL\n"
@@ -12148,7 +13932,7 @@
"Anders ausgedrückt stellt das Zielprojektarchiv einen Spiegel des\n"
"Quellprojektarchivs dar, auf den nur lesend zugegriffen werden darf.\n"
-#: ../svnsync/main.c:110
+#: ../svnsync/svnsync.c:116
msgid ""
"usage: svnsync synchronize DEST_URL [SOURCE_URL]\n"
"\n"
@@ -12162,7 +13946,7 @@
"DEST_URL repository.\n"
msgstr ""
-#: ../svnsync/main.c:122
+#: ../svnsync/svnsync.c:129
msgid ""
"usage:\n"
"\n"
@@ -12185,7 +13969,7 @@
msgstr ""
# CHECKME: s/destination/source/?
-#: ../svnsync/main.c:142
+#: ../svnsync/svnsync.c:150
msgid ""
"usage: svnsync info DEST_URL\n"
"\n"
@@ -12197,7 +13981,7 @@
"Gibt Informationen über das Zielprojektarchiv der Synchronisation aus,\n"
"das sich unter ZIEL_URL befindet.\n"
-#: ../svnsync/main.c:148
+#: ../svnsync/svnsync.c:156
msgid ""
"usage: svnsync help [SUBCOMMAND...]\n"
"\n"
@@ -12207,11 +13991,11 @@
"\n"
"Beschreibt die Anwendung dieses Programms und seiner Unterbefehle.\n"
-#: ../svnsync/main.c:158
+#: ../svnsync/svnsync.c:166
msgid "print as little as possible"
msgstr "So wenig wie möglich ausgeben"
-#: ../svnsync/main.c:160
+#: ../svnsync/svnsync.c:168
msgid ""
"operate on revision ARG (or range ARG1:ARG2)\n"
" A revision argument can be one of:\n"
@@ -12219,11 +14003,11 @@
" 'HEAD' latest in repository"
msgstr ""
-#: ../svnsync/main.c:168
+#: ../svnsync/svnsync.c:176
msgid "allow a non-empty destination repository"
msgstr ""
-#: ../svnsync/main.c:174
+#: ../svnsync/svnsync.c:188
msgid ""
"specify a username ARG (deprecated;\n"
" see --source-username and --sync-username)"
@@ -12231,7 +14015,7 @@
"gibt einen Benutzernamen PAR an (veraltet;\n"
" siehe --source-username und --sync-username)"
-#: ../svnsync/main.c:178
+#: ../svnsync/svnsync.c:192
msgid ""
"specify a password ARG (deprecated;\n"
" see --source-password and --sync-password)"
@@ -12239,148 +14023,160 @@
"gibt ein Passwort PAR an (veraltet;\n"
" siehe --source-password und --sync-password)"
-#: ../svnsync/main.c:182
-msgid ""
-"accept unknown SSL server certificates without\n"
-" prompting (but only with '--non-interactive')"
-msgstr ""
-"akzeptiere unbekannte SSL-Server-Zertifikate ohne\n"
-" Nachfrage (aber nur mit »--non-interactive«)"
-
-#: ../svnsync/main.c:186
+#: ../svnsync/svnsync.c:202
msgid "connect to source repository with username ARG"
msgstr "verbindet mit dem Quellprojektarchiv mit dem Benutzernamen PAR"
-#: ../svnsync/main.c:188
+#: ../svnsync/svnsync.c:204
msgid "connect to source repository with password ARG"
msgstr "verbindet mit dem Quellprojektarchiv mit dem Passwort PAR"
# FIXME: s/sync/synced/, option sync-username
-#: ../svnsync/main.c:190
+#: ../svnsync/svnsync.c:206
msgid "connect to sync repository with username ARG"
msgstr "verbindet mit synchronisiertem Projektarchiv mit Benutzernamen PAR"
-#: ../svnsync/main.c:192
+#: ../svnsync/svnsync.c:208
msgid "connect to sync repository with password ARG"
msgstr "verbindet mit synchronisiertem Projektarchiv mit Passwort PAR"
-#: ../svnsync/main.c:204
+#: ../svnsync/svnsync.c:220
msgid ""
-"Disable built-in locking. Use of this option can\n"
+"convert translatable properties from encoding ARG\n"
+" to UTF-8. If not specified, then properties are\n"
+" presumed to be encoded in UTF-8."
+msgstr ""
+
+#: ../svnsync/svnsync.c:226
+msgid ""
+"Disable built-in locking. Use of this option can\n"
" corrupt the mirror unless you ensure that no other\n"
" instance of svnsync is running concurrently."
msgstr ""
-#: ../svnsync/main.c:488
-msgid "svnsync's lock was stolen; can't remove it"
+#: ../svnsync/svnsync.c:232
+msgid ""
+"Steal locks as necessary. Use, with caution,\n"
+" if your mirror repository contains stale locks\n"
+" and is not being concurrently accessed by another\n"
+" svnsync instance."
msgstr ""
-#: ../svnsync/main.c:525
+#: ../svnsync/svnsync.c:355
+msgid "Target server does not support atomic revision property edits; consider upgrading it to 1.7 or using an external locking program"
+msgstr "Zielserver unterstützt keine atomaren Änderungen von Revisionseigenschaften; Verwenden Sie entweder 1.7 oder ein externes Programm zum Sperren."
+
+#: ../svnsync/svnsync.c:369
+#, c-format
+msgid "Stole lock previously held by '%s'\n"
+msgstr ""
+
+#: ../svnsync/svnsync.c:458
#, c-format
msgid "Session is rooted at '%s' but the repos root is '%s'"
msgstr "Basis der Sitzung ist »%s«, aber die Basis des Projektarchivs ist »%s«"
-#: ../svnsync/main.c:667
+#: ../svnsync/svnsync.c:600
#, c-format
msgid "Copied properties for revision %ld (%s* properties skipped).\n"
msgstr "Kopierte Eigenschaften für Revision %ld (%s* Eigenschaften übergangen).\n"
-#: ../svnsync/main.c:672
+#: ../svnsync/svnsync.c:605
#, c-format
msgid "Copied properties for revision %ld.\n"
msgstr "Eigenschaften für Revision %ld kopiert.\n"
-#: ../svnsync/main.c:688
+#: ../svnsync/svnsync.c:621
#, c-format
msgid "NOTE: Normalized %s* properties to LF line endings (%d rev-props, %d node-props).\n"
msgstr ""
-#: ../svnsync/main.c:810
+#: ../svnsync/svnsync.c:749
msgid "Destination repository already contains revision history; consider using --allow-non-empty if the repository's revisions are known to mirror their respective revisions in the source repository"
msgstr ""
# CHECKME
-#: ../svnsync/main.c:819
+#: ../svnsync/svnsync.c:758
#, c-format
msgid "Destination repository is already synchronizing from '%s'"
msgstr "Das Zielprojektarchiv synchronisiert bereits von »%s«"
-#: ../svnsync/main.c:854
+#: ../svnsync/svnsync.c:793
msgid "Destination repository has more revisions than source repository"
msgstr "Zielprojektarchiv hat mehr Revisionen als Quellprojektarchiv"
-#: ../svnsync/main.c:918 ../svnsync/main.c:921 ../svnsync/main.c:1425
-#: ../svnsync/main.c:1432 ../svnsync/main.c:1667 ../svnsync/main.c:1670
-#: ../svnsync/main.c:1712
+#: ../svnsync/svnsync.c:858 ../svnsync/svnsync.c:861 ../svnsync/svnsync.c:1519
+#: ../svnsync/svnsync.c:1526 ../svnsync/svnsync.c:1763
+#: ../svnsync/svnsync.c:1766 ../svnsync/svnsync.c:1810
#, c-format
msgid "Path '%s' is not a URL"
msgstr "Pfad »%s« ist keine URL"
-#: ../svnsync/main.c:947
+#: ../svnsync/svnsync.c:888
#, c-format
msgid "Committed revision %ld.\n"
msgstr "Revision %ld übertragen.\n"
-#: ../svnsync/main.c:990
+#: ../svnsync/svnsync.c:934
msgid "Destination repository has not been initialized"
msgstr "Zielprojektarchiv wurde noch nicht initialisiert"
-#: ../svnsync/main.c:1208
+#: ../svnsync/svnsync.c:1302
#, c-format
msgid "Commit created rev %ld but should have created %ld"
msgstr "Übertragung erzeugte Revision %ld, sollte aber %ld erzeugen"
-#: ../svnsync/main.c:1322
+#: ../svnsync/svnsync.c:1417
#, c-format
msgid "Revision being currently copied (%ld), last merged revision (%ld), and destination HEAD (%ld) are inconsistent; have you committed to the destination without using svnsync?"
msgstr "Die aktuell kopierte Revision (%ld), zuletzt zusammengeführte Revision (%ld) und Ziel-HEAD (%ld) sind inkonsistent. Haben Sie in das Ziel ohne Verwendung von svnsync übertragen?"
-#: ../svnsync/main.c:1360
+#: ../svnsync/svnsync.c:1454
#, c-format
msgid "Destination HEAD (%ld) is not the last merged revision (%ld); have you committed to the destination without using svnsync?"
msgstr "Ziel-HEAD (%ld) ist nicht die zuletzt zusammengeführte Revision (%ld). Haben Sie in das Ziel ohne Verwendung von svnsync übertragen?"
-#: ../svnsync/main.c:1482 ../svnsync/main.c:1487
+#: ../svnsync/svnsync.c:1577 ../svnsync/svnsync.c:1582
#, c-format
msgid "Cannot copy revprops for a revision (%ld) that has not been synchronized yet"
msgstr "Kann keine Revisionseigenschaften für eine Revision (%ld) kopieren, die noch nicht synchronisiert wurde"
-#: ../svnsync/main.c:1550 ../svnsync/main.c:1570
+#: ../svnsync/svnsync.c:1646 ../svnsync/svnsync.c:1666
#, c-format
msgid "Invalid revision number (%ld)"
msgstr "Ungültige Revisionsnummer (%ld)"
-#: ../svnsync/main.c:1620
+#: ../svnsync/svnsync.c:1716
msgid "Cannot specify revisions via both command-line arguments and the --revision (-r) option"
msgstr ""
-#: ../svnsync/main.c:1628 ../svnsync/main.c:1961
+#: ../svnsync/svnsync.c:1724 ../svnsync/svnsync.c:2070
#, c-format
msgid "Invalid revision range '%s' provided"
msgstr "Ungültiger Revisionsbereich »%s« angegeben"
-#: ../svnsync/main.c:1724
+#: ../svnsync/svnsync.c:1824
#, c-format
msgid "Repository '%s' is not initialized for synchronization"
msgstr "Das Projektarchiv »%s« ist für die Synchronisation nicht initialisiert"
#. Print the info.
-#: ../svnsync/main.c:1733
+#: ../svnsync/svnsync.c:1832
#, c-format
msgid "Source URL: %s\n"
msgstr "Quell-URL: %s\n"
-#: ../svnsync/main.c:1735
+#: ../svnsync/svnsync.c:1834
#, c-format
msgid "Source Repository UUID: %s\n"
msgstr "UUID des Quellprojektarchivs: %s\n"
-#: ../svnsync/main.c:1738
+#: ../svnsync/svnsync.c:1837
#, c-format
msgid "Last Merged Revision: %s\n"
msgstr "Letzte zusammengeführte Revision: %s\n"
-#: ../svnsync/main.c:1755
+#: ../svnsync/svnsync.c:1854
msgid ""
"general usage: svnsync SUBCOMMAND DEST_URL [ARGS & OPTIONS ...]\n"
"Type 'svnsync help <subcommand>' for help on a specific subcommand.\n"
@@ -12396,11 +14192,17 @@
"\n"
"Verfügbare Unterbefehle:\n"
-#: ../svnsync/main.c:1995
+#: ../svnsync/svnsync.c:2118
msgid "Cannot use --username or --password with any of --source-username, --source-password, --sync-username, or --sync-password.\n"
msgstr "Man kann nicht --username oder --password mit einem von --source-username, --source-password, --sync-username oder --sync-password verwenden.\n"
-#: ../svnsync/main.c:2085
+# TODO: Duplicated message!!!!
+#: ../svnsync/svnsync.c:2142
+#, fuzzy
+msgid "--disable-locking and --steal-lock are mutually exclusive"
+msgstr "--diff-cmd und --internal-diff schließen sich gegenseitig aus"
+
+#: ../svnsync/svnsync.c:2218
#, c-format
msgid ""
"Subcommand '%s' doesn't accept option '%s'\n"
@@ -12409,33 +14211,33 @@
"Unterbefehl »%s« akzeptiert die Option »%s« nicht\n"
"Geben Sie »svnsync help %s« für Hilfe ein.\n"
-#: ../svnsync/main.c:2167
+#: ../svnsync/svnsync.c:2302
msgid "Try 'svnsync help' for more info"
msgstr "Versuchen Sie »svnsync help« für weitere Informationen"
-#: ../svnversion/main.c:45
+#: ../svnversion/svnversion.c:48
#, c-format
msgid "Type 'svnversion --help' for usage.\n"
msgstr "Geben Sie »svnversion --help« für weitere Hilfe ein.\n"
-#: ../svnversion/main.c:56
-#, c-format
+#: ../svnversion/svnversion.c:59
+#, fuzzy, c-format
msgid ""
"usage: svnversion [OPTIONS] [WC_PATH [TRAIL_URL]]\n"
"\n"
-" Produce a compact 'version number' for the working copy path\n"
+" Produce a compact version identifier for the working copy path\n"
" WC_PATH. TRAIL_URL is the trailing portion of the URL used to\n"
" determine if WC_PATH itself is switched (detection of switches\n"
-" within WC_PATH does not rely on TRAIL_URL). The version number\n"
+" within WC_PATH does not rely on TRAIL_URL). The version identifier\n"
" is written to standard output. For example:\n"
"\n"
" $ svnversion . /repos/svn/trunk\n"
" 4168\n"
"\n"
-" The version number will be a single number if the working\n"
+" The version identifier will be a single number if the working\n"
" copy is single revision, unmodified, not switched and with\n"
-" an URL that matches the TRAIL_URL argument. If the working\n"
-" copy is unusual the version number will be more complex:\n"
+" a URL that matches the TRAIL_URL argument. If the working\n"
+" copy is unusual the version identifier will be more complex:\n"
"\n"
" 4123:4168 mixed revision working copy\n"
" 4168M modified working copy\n"
@@ -12443,8 +14245,10 @@
" 4123P partial working copy, from a sparse checkout\n"
" 4123:4168MS mixed revision, modified, switched working copy\n"
"\n"
-" If invoked on a directory that is not a working copy, an\n"
-" exported directory say, the program will output 'exported'.\n"
+" If WC_PATH is an unversioned path, the program will output\n"
+" 'Unversioned directory' or 'Unversioned file'. If WC_PATH is\n"
+" an added or copied or moved path, the program will output\n"
+" 'Uncommitted local addition, copy or move'.\n"
"\n"
" If invoked without arguments WC_PATH will be the current directory.\n"
"\n"
@@ -12481,40 +14285,1057 @@
"\n"
"Gültige Optionen:\n"
-#: ../svnversion/main.c:131
+#: ../svnversion/svnversion.c:135
msgid "do not output the trailing newline"
msgstr "gibt den anhängenden Zeilenumbruch nicht aus"
-#: ../svnversion/main.c:132
+#: ../svnversion/svnversion.c:136
msgid "last changed rather than current revisions"
msgstr "gibt letzte geänderte statt aktueller Revisionen aus"
-#: ../svnversion/main.c:232
+#: ../svnversion/svnversion.c:244
+#, fuzzy, c-format
+msgid "Unversioned symlink%s"
+msgstr "Nicht versionierte Datei%s"
+
+#: ../svnversion/svnversion.c:247
#, c-format
msgid "Unversioned directory%s"
msgstr "Nicht versioniertes Verzeichnis%s"
-#: ../svnversion/main.c:250 ../svnversion/main.c:266
+#: ../svnversion/svnversion.c:250
#, c-format
msgid "Unversioned file%s"
msgstr "Nicht versionierte Datei%s"
-#: ../svnversion/main.c:279
+#: ../svnversion/svnversion.c:256
#, c-format
msgid "'%s' doesn't exist\n"
msgstr "»%s« existiert nicht\n"
-#: ../svnversion/main.c:287
+#: ../svnversion/svnversion.c:257
#, c-format
msgid "'%s' is of unknown type\n"
msgstr "»%s« ist unbekannten Typs\n"
#. Local uncommitted modifications, no revision info was found.
-#: ../svnversion/main.c:296
+#: ../svnversion/svnversion.c:272
#, c-format
msgid "Uncommitted local addition, copy or move%s"
msgstr ""
+#~ msgid "Cannot non-recursively commit a directory deletion of a directory with child nodes"
+#~ msgstr "Das Löschen eines Verzeichnisses mit Untereinträgen kann nur rekursiv übertragen werden"
+
+#~ msgid "Unknown entry kind for '%s'"
+#~ msgstr "»%s« hat einen unbekannten Eintragstyp"
+
+#~ msgid "Entry '%s' has unexpectedly changed special status"
+#~ msgstr "Der Spezialstatus von Eintrag »%s« hat sich unerwarteterweise geändert"
+
+#~ msgid "Entry for '%s' has no URL"
+#~ msgstr "Eintrag für »%s« hat keine URL"
+
+# CHECKME
+#~ msgid "'%s' is scheduled for addition within unversioned parent"
+#~ msgstr "»%s« ist zum Hinzufügen innerhalb einer nicht versionierten Struktur vorgesehen"
+
+#~ msgid "Entry for '%s' exists (though the working file is missing)"
+#~ msgstr "Eintrag für »%s« existiert (die Arbeitsdatei fehlt jedoch)"
+
+#~ msgid "Summarizing diff can only compare repository to repository"
+#~ msgstr "Zusammenfassender Vergleich kann nur ein Projektarchiv mit einem Projektarchiv vergleichen"
+
+#~ msgid "'%s' is not a URL"
+#~ msgstr "»%s« ist keine URL"
+
+#~ msgid "Server does not support retrieving information about the repository root"
+#~ msgstr "Server unterstützt die Abfrage von Informationen über die Projektarchivwurzel nicht"
+
+#~ msgid "URL '%s' non-existent in that revision"
+#~ msgstr "URL »%s« existiert nicht in dieser Revision"
+
+#~ msgid "URLs have no scheme ('%s' and '%s')"
+#~ msgstr "Die URLs haben kein Schema (»%s« und »%s«)"
+
+#~ msgid "URL has no scheme: '%s'"
+#~ msgstr "URL hat kein Schema: »%s«"
+
+#~ msgid "Access scheme mixtures not yet supported ('%s' and '%s')"
+#~ msgstr "Gemischte Zugriffsverfahren werden noch nicht unterstützt (»%s« and »%s«)"
+
+#~ msgid "Setting property recursively on non-local target '%s' is not supported"
+#~ msgstr "Das rekursive Setzen einer Eigenschaft für ein nicht lokales Ziel »%s« wird nicht unterstützt"
+
+#~ msgid "URL '%s' is not a child of repository root URL '%s'"
+#~ msgstr "Die URL »%s« ist kein Kind der Projektarchivwurzel-URL »%s«"
+
+#~ msgid "No newline at end of file"
+#~ msgstr "Kein Zeilenumbruch am Ende der Datei"
+
+#~ msgid "Can't grab FS mutex"
+#~ msgstr "Kann FS Mutex nicht greifen"
+
+#~ msgid "Can't ungrab FS mutex"
+#~ msgstr "Kann FS Mutex nicht loslassen"
+
+#~ msgid "Can't allocate FS mutex"
+#~ msgstr "Kann FS Mutex nicht anlegen"
+
+#~ msgid " expected: %s"
+#~ msgstr " erwartet: %s"
+
+#~ msgid " actual: %s"
+#~ msgstr "tatsächlich: %s"
+
+#, fuzzy
+#~ msgid "Attempt to obliterate '%s' using itself "
+#~ msgstr "Versuch, Deltas von »%s« gegen sich selber zu erstellen"
+
+#~ msgid "Bad ID in cache"
+#~ msgstr "Fehlerhafte ID im Zwischenspeicher"
+
+#~ msgid "Kindless noderev in cache"
+#~ msgstr "Nutzlose Knotenrevision im Zwischenspeicher"
+
+#~ msgid "Unknown kind for noderev in cache: '%c'"
+#~ msgstr "Unbekannte Art der Knotenrevision im Zwischenspeicher: »%c«"
+
+#~ msgid "Unterminated ID in cache"
+#~ msgstr "Nicht abgeschlossene ID im Zwischenspeicher"
+
+#~ msgid "Bogus ID '%s' in cache"
+#~ msgstr "Fehlerhafte ID »%s« im Zwischenspeicher"
+
+#~ msgid "No created path"
+#~ msgstr "Kein erzeugter Pfad"
+
+#~ msgid "Unknown node type in cache: '%c'"
+#~ msgstr "Unbekannter Knotentyp im Zwischenspeicher: »%c«"
+
+#~ msgid "Can't create FSFS write-lock mutex"
+#~ msgstr "Kann FSFS Schreibschutz-Mutex nicht anlegen"
+
+#~ msgid "Can't create FSFS txn-current mutex"
+#~ msgstr "Kann FSFS-txn-current-Mutex nicht anlegen"
+
+# CHECKME: s/txn list/txn-list/? Compare txn-current
+#~ msgid "Can't create FSFS txn list mutex"
+#~ msgstr "Kann FSFS-txn-list-Mutex nicht anlegen"
+
+#~ msgid "Revision file '%s' does not exist, and r%ld is not packed"
+#~ msgstr "Revisionsdatei »%s« existiert nicht und r%ld ist nicht gepackt"
+
+#~ msgid "Can't grab FSFS txn list mutex"
+#~ msgstr "Kann FSFS-txn-list-Mutex nicht greifen"
+
+#~ msgid "Can't ungrab FSFS txn list mutex"
+#~ msgstr "Kann FSFS-txn-list-Mutex nicht loslassen"
+
+#~ msgid "Can't grab FSFS mutex for '%s'"
+#~ msgstr "Kann FSFS-Mutex für »%s« nicht greifen"
+
+#~ msgid "Can't ungrab FSFS mutex for '%s'"
+#~ msgstr "Kann FSFS-Mutex für »%s« nicht loslassen"
+
+#~ msgid "Manifest offset too large"
+#~ msgstr "Manifest offset zu groß"
+
+#~ msgid "svndiff data requested non-existent source"
+#~ msgstr "svndiff-Daten verlangten nicht existierende Quelle"
+
+#~ msgid "svndiff requested position beyond end of stream"
+#~ msgstr "Von svndiff verlangte Position ist jenseits des Datenstromendes"
+
+#, fuzzy
+#~ msgid "Obliteration of already-packed revision is not supported"
+#~ msgstr "Annotieren der WORKING-Revision wird nicht unterstützt"
+
+#~ msgid "Could not fetch the Version Resource URL (needed during an import or when it is missing from the local, cached props)"
+#~ msgstr "Konnte die Versionsressourcen-URL nicht bestimmen (wird für einen Import oder, falls sie in den lokalen, zwischengespeicherten Eigenschaften fehlt, benötigt)"
+
+#~ msgid "File or directory '%s' is out of date; try updating"
+#~ msgstr "Datei oder Verzeichnis »%s« ist veraltet; versuchen Sie zu aktualisieren"
+
+#~ msgid "The CHECKOUT response did not contain a 'Location:' header"
+#~ msgstr "Die CHECKOUT-Antwort enthielt keinen »Location:« Kopf"
+
+#~ msgid "Could not save the URL of the version resource"
+#~ msgstr "Konnte die URL der versionierten Ressource nicht speichern"
+
+#~ msgid "Could not get content-type from response"
+#~ msgstr "Konnte »content-type« nicht aus der Antwort lesen"
+
+#~ msgid "Could not save file"
+#~ msgstr "Konnte Datei nicht sichern"
+
+#~ msgid "Server response missing the expected deadprop-count property"
+#~ msgstr "Die Serverantwort enthält die erwartete Eigenschaft »deadprop-count« nicht"
+
+# FIXME: collect messages!
+#~ msgid "Missing rev attr in target-revision element"
+#~ msgstr "Fehlendes Revisionsattribut in Element »target-revision«"
+
+#~ msgid "Missing path attr in resource element"
+#~ msgstr "Fehlendes Pfadattribut in Ressourcen-Element"
+
+#~ msgid "Missing rev attr in open-directory element"
+#~ msgstr "Fehlendes Revisionsattribut in Element »open-directory«"
+
+#~ msgid "Missing copyfrom-rev attr in add-directory element"
+#~ msgstr "Fehlendes Attribut »copyfrom-rev« in Element »add-directory«"
+
+#~ msgid "Missing rev attr in open-file element"
+#~ msgstr "Fehlendes Revisionsattribut in Element »open-file«"
+
+#~ msgid "Missing copyfrom-rev attr in add-file element"
+#~ msgstr "Fehlendes Attribut »copyfrom-rev« in Element »add-file«"
+
+#~ msgid "Missing name attr in set-prop element"
+#~ msgstr "Fehlendes Namensattribut in Element »set-prop«"
+
+#~ msgid "Missing name attr in remove-prop element"
+#~ msgstr "Fehlendes Namensattribut in Element »remove-prop«"
+
+#~ msgid "Unknown XML encoding: '%s'"
+#~ msgstr "Unbekannte XML Kodierung: »%s«"
+
+#~ msgid "REPORT response handling failed to complete the editor drive"
+#~ msgstr "Die Abwicklung der REPORT-Antwort konnte den Editorlauf nicht vollenden."
+
+#~ msgid "Failed to write full amount to stream"
+#~ msgstr "Konnte nicht alles in den Datenstrom schreiben"
+
+#~ msgid "The file-revs report didn't contain any revisions"
+#~ msgstr "Der Report »file-revs« enthielt keine Revisionen"
+
+#~ msgid "Server does not support date-based operations"
+#~ msgstr "Server unterstützt keine datumsbasierten Operationen"
+
+#~ msgid "Invalid server response to dated-rev request"
+#~ msgstr "Ungültige Antwort des Servers auf datierte Revisionsanfrage"
+
+#~ msgid "Expected a valid revnum and path"
+#~ msgstr "Erwartete eine gültige Revisionsnummer samt Pfad"
+
+#~ msgid "Incomplete lock data returned"
+#~ msgstr "Unvollständige Sperrdaten zurückgegeben"
+
+#~ msgid "Invalid creation date header value in response."
+#~ msgstr "Ungültiges Erzeugungsdatum im Header-Feld in Antwort."
+
+#~ msgid "Invalid timeout value"
+#~ msgstr "Ungültiger Timeout-Wert"
+
+#~ msgid "Failed to parse URI '%s'"
+#~ msgstr "Konnte URI »%s« nicht zerlegen"
+
+#~ msgid "Failed to fetch lock information"
+#~ msgstr "Konnte Sperrinformationen nicht ermitteln"
+
+#~ msgid "Missing name attr in revprop element"
+#~ msgstr "Fehlendes Namensattribut in Element »revprop«"
+
+#~ msgid "Protocol error: we told the server not to auto-merge any resources, but it said that '%s' was merged"
+#~ msgstr "Protokollfehler: Wir haben dem Server mitgeteilt, Ressourcen nicht automatisch zusammenzuführen, aber dieser behauptet, dass »%s« zusammengeführt wurde"
+
+#~ msgid "Internal error: there is an unknown parent (%d) for the 'DAV:response' element within the MERGE response"
+#~ msgstr "Interner Fehler: Es gibt ein unbekanntes Elternteil (%d) für das »DAV:response« Element innerhalb der MERGE-Antwort"
+
+#~ msgid "Protocol error: the MERGE response for the '%s' resource did not return all of the properties that we asked for (and need to complete the commit)"
+#~ msgstr "Protokollfehler: Die MERGE-Antwort für die »%s«-Ressource hat nicht alle angeforderten Eigenschaften zurück geliefert (und Übertragung muss beendet werden)"
+
+#~ msgid "The MERGE property response had an error status"
+#~ msgstr "Die MERGE-Eigenschaftsantwort hatte einen Fehlerstatus"
+
+#~ msgid "The OPTIONS response did not include the requested activity-collection-set; this often means that the URL is not WebDAV-enabled"
+#~ msgstr "Die OPTIONS-Antwort enthielt nicht das angeforderte »activity-collection-set«; dies heißt oft, dass die URL nicht WebDAV-fähig ist"
+
+#~ msgid "Failed to find label '%s' for URL '%s'"
+#~ msgstr "Marke »%s« für URL »%s« nicht gefunden"
+
+#~ msgid "'%s' was not present on the resource '%s'"
+#~ msgstr "»%s« existierte nicht für die Ressource »%s«"
+
+#~ msgid "Neon was unable to parse URL '%s'"
+#~ msgstr "Neon konnte die URL »%s« nicht zerlegen"
+
+#~ msgid "The path was not part of a repository"
+#~ msgstr "Der Pfad war kein Teil eines Projektarchivs"
+
+#~ msgid "No part of path '%s' was found in repository HEAD"
+#~ msgstr "Kein Teil des Pfades »%s« wurde in HEAD des Projektarchivs gefunden"
+
+#~ msgid "The VCC property was not found on the resource"
+#~ msgstr "Die VCC Eigenschaft wurde in der Ressource nicht gefunden"
+
+#~ msgid "The relative-path property was not found on the resource"
+#~ msgstr "Die »relative-path« Eigenschaft wurde in der Ressource nicht gefunden"
+
+#~ msgid "'DAV:baseline-collection' was not present on the baseline resource"
+#~ msgstr "»DAV:baseline-collection« ist nicht in der Baseline-Ressource enthalten"
+
+# TODO: proper translation for Baseline
+#~ msgid "'%s' was not present on the baseline resource"
+#~ msgstr "»%s« existierte nicht für die Baseline-Ressource"
+
+#~ msgid "Got apply-textdelta element without preceding add-file or open-file"
+#~ msgstr "Fand Element »apply-textdelta« ohne vorhergehendes »add-file« oder »open-file«"
+
+#~ msgid "Got close-file element without preceding add-file or open-file"
+#~ msgstr "Fand Element »close-file« ohne vorhergehendes »add-file« oder »open-file«"
+
+# FIXME: inkonsistent zu obigen Meldungen: open_directory statt opening a directory
+# (Wird Bezug zu Elementen in Dump hergestellt oder nicht?)
+#~ msgid "Got close-directory element without ever opening a directory"
+#~ msgstr "Fand Element »close-directory« ohne vorhergehendes Öffnen eines Verzeichnisses"
+
+#~ msgid "Got cdata content for a prop delete"
+#~ msgstr "Fand cdata-Inhalt für eine Eigenschaftslöschung"
+
+#~ msgid "PIN for token \"%s\" in slot \"%s\""
+#~ msgstr "PIN für Token »%s« in Slot »%s«"
+
+#~ msgid "Invalid config: illegal character in debug mask value"
+#~ msgstr "Ungültige Konfiguration: Illegales Zeichen in Debugmaske"
+
+#~ msgid "Module for accessing a repository via WebDAV protocol using Neon."
+#~ msgstr "Modul zum Zugriff auf ein Projektarchiv über das Protokoll WebDAV mittels Neon."
+
+#~ msgid "URL '%s' is malformed or the scheme or host or path is missing"
+#~ msgstr "URL »%s« ist fehlerhaft oder das Schema, der Rechner oder Pfad fehlt"
+
+#~ msgid "Network socket initialization failed"
+#~ msgstr "Initialisierung der Netzwerkverbindung schlug fehl"
+
+#~ msgid "SSL is not supported"
+#~ msgstr "SSL wird nicht unterstützt"
+
+#~ msgid "Invalid config: unable to load PKCS#11 provider '%s'"
+#~ msgstr "Ungültige Konfiguration: PKCS#11-Anbieter »%s« kann nicht geladen werden"
+
+#~ msgid "Unsupported RA loader version (%d) for ra_neon"
+#~ msgstr "Nicht unterstützte Zugriffsmodul-Laderversion (%d) für ra_neon"
+
+#~ msgid "The request response contained at least one error"
+#~ msgstr "Die Antwort auf die Anfrage enthielt zumindest einen Fehler"
+
+#~ msgid "The response contains a non-conforming HTTP status line"
+#~ msgstr "Die Antwort enthält eine nicht konforme HTTP-Statuszeile"
+
+#~ msgid "Error setting property '%s': "
+#~ msgstr "Fehler beim Setzen der Eigenschaft »%s«: "
+
+# FIXME: missing translator comments!
+#~ msgid "Server sent unexpected return value (%d %s) in response to %s request for '%s'"
+#~ msgstr "Der Server hat einen unerwarteten Rückgabewert (%d %s) in Antwort auf die Anfrage %s für »%s« zurückgeliefert"
+
+#~ msgid "authorization failed: %s"
+#~ msgstr "Autorisierung schlug fehl: %s"
+
+#~ msgid "authorization failed"
+#~ msgstr "Autorisierung schlug fehl"
+
+#~ msgid "could not connect to server"
+#~ msgstr "Konnte keine Verbindung zum Server herstellen"
+
+#~ msgid "timed out waiting for server"
+#~ msgstr "Zeitüberschreitung beim Warten auf Server"
+
+#~ msgid "Can't calculate the request body size"
+#~ msgstr "Kann die Größe der Anfrage nicht berechnen"
+
+#~ msgid "The %s request returned invalid XML in the response: %s (%s)"
+#~ msgstr "Die %s-Anfrage gab in der Antwort ungültiges XML zurück: %s (%s)"
+
+#~ msgid "Error reading spooled %s request response"
+#~ msgstr "Fehler beim Lesen der Antwort auf die %s Anfrage von Festplatte"
+
+#~ msgid "Missing 'realm' attribute in Authorization header"
+#~ msgstr "Fehlendes Attribut »realm« in Autorisations-Header"
+
+# CHECKME: full stop in error message?
+#~ msgid "Incorrect response-digest in Authentication-Info header."
+#~ msgstr "Falsche Antwortnummer im Header der Authentifizierungs-Informationen."
+
+#~ msgid ""
+#~ "Initialization of the GSSAPI context failed.\n"
+#~ " %s\n"
+#~ " %s\n"
+#~ msgstr ""
+#~ "Initialisierung des GSSAPI-Kontextes schlug fehl.\n"
+#~ " %s\n"
+#~ " %s\n"
+
+#~ msgid "Location segment report failed on '%s'@'%ld'"
+#~ msgstr "Ortssegmentreport schlug auf »%s«@»%ld« fehl"
+
+#~ msgid "Error retrieving replay REPORT (%d)"
+#~ msgstr "Fehler beim Holen des Wiederholungs-REPORT (%d)"
+
+#~ msgid "Could not lookup hostname `%s'"
+#~ msgstr "Konnte Rechnernamen »%s« nicht nachschlagen"
+
+#~ msgid "The OPTIONS response did not include the requested resourcetype value"
+#~ msgstr "Die OPTIONS-Antwort enthielt nicht den angeforderten Wert »resourcetype«"
+
+# CHECKME, has to match first %s in "local %s, incoming %s upon %s"
+#, fuzzy
+#~ msgid "Obliteration"
+#~ msgstr "blockiert"
+
+#~ msgid "Can't create pipe for hook '%s'"
+#~ msgstr "Kann »Pipe« für Aktion »%s« nicht anlegen"
+
+# CHECKME: non-inherited = losgelöst???
+#~ msgid "Can't make pipe read handle non-inherited for hook '%s'"
+#~ msgstr "Kann Pipe-Lese-Handle für Aktion »%s« nicht nicht-erbbar machen"
+
+#~ msgid "Can't make pipe write handle non-inherited for hook '%s'"
+#~ msgstr "Kann Pipe-Schreib-Handle für Aktion »%s« nicht nicht-erbbar machen"
+
+#~ msgid "Error closing write end of stderr pipe"
+#~ msgstr "Fehler beim Schließen des Schreib-Endes der Standardfehlerausgabe"
+
+#~ msgid "Error closing read end of stderr pipe"
+#~ msgstr "Fehler beim Schließen des Lese-Endes der Standardfehlerausgabe"
+
+#, fuzzy
+#~ msgid "Repository has not been enabled to accept obliteration"
+#~ msgstr "Für diese Operation wird Zugang zum Projektarchiv benötigt"
+
+#~ msgid "Creating pre-obliterate hook"
+#~ msgstr "Erzeuge Aktion »pre-obliterate«"
+
+#~ msgid "Creating post-obliterate hook"
+#~ msgstr "Erzeuge Aktion »post-obliterate«"
+
+# password store: kwallet, ...
+#~ msgid "Invalid config: unknown password store '%s'"
+#~ msgstr "Ungültige Konfiguration: Unbekannte Passwortverwaltung »%s«"
+
+#~ msgid "Can't grab DSO mutex"
+#~ msgstr "Kann DSO-Mutex nicht greifen"
+
+#~ msgid "Can't ungrab DSO mutex"
+#~ msgstr "Kann DSO-Mutex nicht loslassen"
+
+#~ msgid "NULL mergeinfo\n"
+#~ msgstr "Zusammenführungsinformationen sind NULL\n"
+
+#~ msgid "empty mergeinfo\n"
+#~ msgstr "Zusammenführungsinformationen sind leer\n"
+
+#~ msgid "Schema format %d not recognized"
+#~ msgstr "Schema-Format %d wird nicht erkannt"
+
+#~ msgid "Expected SQLite database not found: %s"
+#~ msgstr "Erwartete SQLite-Datenbank wurde nicht gefunden: %s"
+
+#~ msgid "Number '%s' is out of range '[%llu, %llu]'"
+#~ msgstr "Zahl »%s« ist außerhalb des zulässigen Bereichs »[%llu, %llu]«"
+
+#~ msgid "Number '%s' is out of range '[%lld, %lld]'"
+#~ msgstr "Zahl »%s« ist außerhalb des zulässigen Bereichs »[%lld, %lld]«"
+
+#~ msgid "Can't lock charset translation mutex"
+#~ msgstr "Kann das Semaphor zur Zeichensatzkonvertierung nicht sperren"
+
+#~ msgid "Can't unlock charset translation mutex"
+#~ msgstr "Kann das Semaphor zur Zeichensatzkonvertierung nicht freigeben"
+
+#~ msgid "Can't retrieve base revision for %s"
+#~ msgstr "Kann Basisrevision für »%s« nicht abfragen"
+
+#~ msgid ""
+#~ "Checksum mismatch for text base of '%s':\n"
+#~ " expected: %s\n"
+#~ " actual: %s\n"
+#~ msgstr ""
+#~ "Prüfsummenfehler für Textbasis von »%s«:\n"
+#~ " Erwartet: %s\n"
+#~ " Tatsächlich: %s\n"
+
+#~ msgid "Node '%s' has no pristine base text"
+#~ msgstr "Knoten »%s« hat keine ursprüngliche Textbasis"
+
+#~ msgid "File '%s' has no text base"
+#~ msgstr "Datei »%s« hat keine Textbasis"
+
+#~ msgid "Base node of '%s' is not a file"
+#~ msgstr "Basisknoten von »%s« ist keine Datei"
+
+#~ msgid "Cannot revert '%s': unsupported entry node kind"
+#~ msgstr "Kann »%s« nicht zurücksetzen: nicht unterstützter Eintragsknotentyp"
+
+#~ msgid "Cannot revert '%s': unsupported node kind in working copy"
+#~ msgstr "Kann »%s« nicht zurücksetzen: nicht unterstützter Knotentyp in Arbeitskopie"
+
+#~ msgid "'%s' is a directory, and thus cannot be a member of a changelist"
+#~ msgstr "»%s« ist ein Verzeichnis and kann deswegen nicht Element einer Änderungsliste sein"
+
+#~ msgid "Conflict callback violated API: returned no merged file"
+#~ msgstr "Konflikt-Aktion verletzte die API: keine zusammengeführte Datei wurde zurückgeliefert"
+
+#~ msgid ""
+#~ "Trying to create property '%s' with value '%s',\n"
+#~ "but it has been locally deleted."
+#~ msgstr ""
+#~ "Versuch, die Eigenschaft »%s« mit dem Wert »%s« anzulegen,\n"
+#~ "aber die Eigenschaft wurde lokal bereits gelöscht."
+
+#~ msgid ""
+#~ "Trying to delete property '%s' with value '%s',\n"
+#~ "but it has been modified from '%s' to '%s'."
+#~ msgstr ""
+#~ "Versuch, die Eigenschaft »%s« mit dem Wert »%s« zu löschen,\n"
+#~ "aber der Wert wurde von »%s« nach »%s« geändert."
+
+#~ msgid ""
+#~ "Trying to delete property '%s' with value '%s',\n"
+#~ "but property with value '%s' is locally deleted."
+#~ msgstr ""
+#~ "Versuch, die Eigenschaft »%s« mit dem Wert »%s« zu löschen,\n"
+#~ "aber die Eigenschaft mit dem Wert »%s« wurde lokal gelöscht."
+
+#~ msgid ""
+#~ "Checksum mismatch indicates corrupt text base for file: '%s':\n"
+#~ " expected: %s\n"
+#~ " actual: %s\n"
+#~ msgstr ""
+#~ "Prüfsummenfehler ist Anzeichen für beschädigte Textbasis der Datei: »%s«\n"
+#~ " Erwartet: %s\n"
+#~ " Tatsächlich: %s\n"
+
+#~ msgid "Failed to add directory '%s': a separate working copy with the same name already exists"
+#~ msgstr "Konnte Verzeichnis »%s« nicht hinzufügen: ein andere Arbeitskopie mit gleichem Namen existiert bereits"
+
+#~ msgid "Switched directory '%s' does not match expected URL '%s'"
+#~ msgstr "Umgestelltes Vereichnis »%s« entspricht nicht der erwarteten URL »%s«"
+
+#~ msgid "Failed to add directory '%s': a non-directory object of the same name already exists"
+#~ msgstr "Konnte Verzeichnis »%s« nicht hinzufügen: ein nicht-Verzeichnisobjekt mit demselben Namen existiert bereits"
+
+#~ msgid "Switched file '%s' does not match expected URL '%s'"
+#~ msgstr "Umgestellte Datei »%s« entspricht nicht der erwarteten URL »%s«"
+
+#~ msgid "Unrecognized node kind: '%s'"
+#~ msgstr "Unbekannter Knotentyp: »%s«"
+
+#~ msgid "Cannot upgrade with existing logs; please run 'svn cleanup' with Subversion 1.6"
+#~ msgstr "Kann die Arbeitskopie nicht in ein neues Format bringen; bitte führen Sie »svn cleanup« mit Subversion 1.6 aus"
+
+#~ msgid "The working copy '%s' is at format 18; use 'tools/dev/wc-ng/bump-to-19.py' to upgrade it"
+#~ msgstr "Die Arbeitskopie »%s« hat das Format 18; verwenden Sie »tools/dev/wc-ng/bump-to-19.py« um es in ein neues Format zu bringen"
+
+#~ msgid "Can't store properties for '%s' in '%s'."
+#~ msgstr "Kann Eigenschaftswert für »%s« nicht in »%s« speichern"
+
+#~ msgid "Could not find node '%s' for recording file information."
+#~ msgstr "Knoten »%s« für Aufzeichnung von Dateiinformationen nicht gefunden."
+
+#~ msgid "'%s' has no BASE_NODE"
+#~ msgstr "»%s« hat keinen »BASE_NODE«"
+
+#~ msgid "Error restoring text for '%s'"
+#~ msgstr "Fehler beim Wiederherstellen des Textes für »%s«"
+
+#~ msgid "Error processing post-commit work for '%s'"
+#~ msgstr "Fehler beim Verarbeiten der Arbeitsschritte nach Übertragung für »%s«"
+
+#~ msgid "svn: warning: The depth of this commit is '%s', but copied directories will regardless be committed with depth '%s'. You must remove unwanted children of those directories in a separate commit.\n"
+#~ msgstr "svn: Warnung: Die Tiefe dieser Übertragung ist »%s«, jedoch werden kopierte Verzeichnisse dennoch mit Tiefe »%s« übertragen. Sie müssen nicht gewollte Kinder dieser Verzeichnisse in einer gesonderten Übertragung entfernen.\n"
+
+#~ msgid "They want to delete the property, you want to change the value to '%s'.\n"
+#~ msgstr "Versuch, die Eigenschaft zu löschen, aber der Wert soll auf »%s« gesetzt werden.\n"
+
+#~ msgid "They want to change the property value to '%s', you want to delete the property.\n"
+#~ msgstr "Versuch, den Wert der Eigenschaft auf »%s« zu ändern, aber die Eigenschaft soll gelöscht werden.\n"
+
+# Once you change "Auswahl:" don't forget to adapt indentation of other strings!
+#~ msgid "Select: (p) postpone"
+#~ msgstr "Auswahl: (p) zurückstellen"
+
+#~ msgid ", (df) diff-full, (e) edit"
+#~ msgstr ", (df) voller Diff, (e) editieren"
+
+#~ msgid ", (r) resolved"
+#~ msgstr ", (r) aufgelöst"
+
+#~ msgid ""
+#~ ",\n"
+#~ " (mc) mine-conflict, (tc) theirs-conflict"
+#~ msgstr ""
+#~ ",\n"
+#~ " (mc) eigene konfliktbehaftete Datei, (tc) fremde konfliktbehaftete Datei"
+
+#~ msgid ""
+#~ ",\n"
+#~ " (mf) mine-full, (tf) theirs-full"
+#~ msgstr ""
+#~ ",\n"
+#~ " (mf) volle eigene Datei, (tf) volle fremde Datei"
+
+#~ msgid "(s) show all options: "
+#~ msgstr " (s) alle Optionen anzeigen: "
+
+# CHECKME: translate mine-conflict, ... or not (sometimes used as option!)?
+#~ msgid ""
+#~ "\n"
+#~ " (e) edit - change merged file in an editor\n"
+#~ " (df) diff-full - show all changes made to merged file\n"
+#~ " (r) resolved - accept merged version of file\n"
+#~ "\n"
+#~ " (dc) display-conflict - show all conflicts (ignoring merged version)\n"
+#~ " (mc) mine-conflict - accept my version for all conflicts (same)\n"
+#~ " (tc) theirs-conflict - accept their version for all conflicts (same)\n"
+#~ "\n"
+#~ " (mf) mine-full - accept my version of entire file (even non-conflicts)\n"
+#~ " (tf) theirs-full - accept their version of entire file (same)\n"
+#~ "\n"
+#~ " (p) postpone - mark the conflict to be resolved later\n"
+#~ " (l) launch - launch external tool to resolve conflict\n"
+#~ " (s) show all - show this list\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ " (e) editieren - zusammengeführte Datei in einem Editor ändern\n"
+#~ " (df) voller Diff - alle Änderungen in der zusammengeführten Datei anzeigen\n"
+#~ " (r) aufgelöst - akzeptieren der zusammengeführten Version der Datei\n"
+#~ " (dc) Konflikte anzeigen - alle Konflikte anzeigen (die zusammengeführte Version\n"
+#~ " ignorieren)\n"
+#~ " (mc) mine-conflict - eigene Version für alle Konflikte akzeptieren (das selbe)\n"
+#~ " (tc) theirs-conflict - fremde Version für alle Konflikte akzeptieren (das selbe)\n"
+#~ "\n"
+#~ " (mf) volle eigene Datei - die eigene Version der kompletten Datei akzeptieren\n"
+#~ " (selbst Nicht-Konflikte)\n"
+#~ " (tf) volle fremde Datei - die fremde Version der kompletten Datei akzeptieren\n"
+#~ " (das selbe)\n"
+#~ " (p) zurückstellen - den Konflikt erst später auflösen\n"
+#~ " (l) starten - Starten eines externen Programms zur Konfliktauflösung\n"
+#~ " (s) alle anzeigen - diese Liste anzeigen\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Invalid option; cannot choose based on conflicts for properties.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Ungültige Option; Auswahl anhand von Konflikten ist für Eigenschaften nicht möglich.\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Invalid option; cannot display conflicts for properties.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Ungültige Option; Anzeige von Konflikten ist für Eigenschaften nicht möglich.\n"
+#~ "\n"
+
+# TODO: merge with other messages
+#~ msgid "Select: (p) postpone, (mf) mine-full, (tf) theirs-full, (h) help:"
+#~ msgstr "Auswahl: (p) zurückstellen, (mf) volle eigene Datei, (tf) volle fremde Datei, (h) Hilfe:"
+
+#~ msgid ""
+#~ " (p) postpone - resolve the conflict later\n"
+#~ " (mf) mine-full - accept pre-existing item (ignore upstream addition)\n"
+#~ " (tf) theirs-full - accept incoming item (overwrite pre-existing item)\n"
+#~ " (h) help - show this help\n"
+#~ "\n"
+#~ msgstr ""
+#~ " (p) zurückstellen - den Konflikt erst später auflösen\n"
+#~ " (mf) volle eigene Datei - vorher existierende Daten akzeptieren (Hinzufügungen\n"
+#~ " ignorieren)\n"
+#~ " (tf) volle fremde Datei - eingehende Daten akzeptieren (überschreiben vorher\n"
+#~ " existierender Daten)\n"
+#~ " (h) Hilfe - diese Hilfe anzeigen\n"
+#~ "\n"
+
+#~ msgid "Can't open stderr"
+#~ msgstr "Kann Standardfehlerausgabe nicht öffnen"
+
+#~ msgid ""
+#~ "%s: (Not a versioned resource)\n"
+#~ "\n"
+#~ msgstr ""
+#~ "%s: (Keine versionierte Ressource)\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "%s: (Not a valid URL)\n"
+#~ "\n"
+#~ msgstr ""
+#~ "%s: (Keine gültige URL)\n"
+#~ "\n"
+
+#~ msgid "the change made by revision ARG (like -r ARG-1:ARG)\n"
+#~ msgstr "die in Revision PAR durchgeführte Änderung (wie -r PAR-1:PAR)\n"
+
+#~ msgid "ARG (some commands also take ARG1:ARG2 range)\n"
+#~ msgstr "PAR (einige Kommandos akzeptieren auch Bereiche PAR1:PAR2)\n"
+
+#~ msgid "limit operation by depth ARG ('empty', 'files',\n"
+#~ msgstr "begrenzt Operation durch Tiefe PAR (»empty«, »files«,\n"
+
+#~ msgid "do no interactive prompting"
+#~ msgstr "keine interaktiven Rückfragen ausgeben"
+
+#~ msgid "set user configuration option in the format:\n"
+#~ msgstr "Konfigurationsoption in diesem Format setzen:\n"
+
+#~ msgid "set revision property ARG in new revision\n"
+#~ msgstr "Revisionseigenschaft PAR in neuer Revision setzen\n"
+
+#~ msgid "Allow merge into mixed-revision working copy.\n"
+#~ msgstr "Erlaube Zusammenführung in eine Arbeitskopie mit verschiedenen Revisionen.\n"
+
+# FIXME: behaviour oder behavior?
+# www.example.com is a reserved URL, let's not translate it.
+#, fuzzy
+#~ msgid ""
+#~ "Show the log messages for a set of revision(s) and/or path(s).\n"
+#~ "usage: 1. log [PATH][@REV]\n"
+#~ " 2. log URL[@REV] [PATH...]\n"
+#~ "\n"
+#~ " 1. Print the log messages for the URL corresponding to PATH\n"
+#~ " (default: '.'). If specified, REV is the revision in which the\n"
+#~ " URL is first looked up, and the default revision range is REV:1.\n"
+#~ " If REV is not specified, the default revision range is BASE:1,\n"
+#~ " since the URL might not exist in the HEAD revision.\n"
+#~ "\n"
+#~ " 2. Print the log messages for the PATHs (default: '.') under URL.\n"
+#~ " If specified, REV is the revision in which the URL is first\n"
+#~ " looked up, and the default revision range is REV:1; otherwise,\n"
+#~ " the URL is looked up in HEAD, and the default revision range is\n"
+#~ " HEAD:1.\n"
+#~ "\n"
+#~ " Multiple '-c' or '-r' options may be specified (but not a\n"
+#~ " combination of '-c' and '-r' options), and mixing of forward and\n"
+#~ " reverse ranges is allowed.\n"
+#~ "\n"
+#~ " With -v, also print all affected paths with each log message.\n"
+#~ " With -q, don't print the log message body itself (note that this is\n"
+#~ " compatible with -v).\n"
+#~ "\n"
+#~ " Each log message is printed just once, even if more than one of the\n"
+#~ " affected paths for that revision were explicitly requested. Logs\n"
+#~ " follow copy history by default. Use --stop-on-copy to disable this\n"
+#~ " behavior, which can be useful for determining branchpoints.\n"
+#~ "\n"
+#~ " Examples:\n"
+#~ " svn log\n"
+#~ " svn log foo.c\n"
+#~ " svn log bar.c@42\n"
+#~ " svn log http://www.example.com/repo/project/foo.c\n"
+#~ " svn log http://www.example.com/repo/project foo.c bar.c\n"
+#~ " svn log http://www.example.com/repo/project@50 foo.c bar.c\n"
+#~ msgstr ""
+#~ "Zeigt die Logmeldungen für eine Menge von Revisionen und/oder Dateien.\n"
+#~ "Aufruf: 1. log [PFAD]\n"
+#~ " 2. log URL[@REV] [PFAD...]\n"
+#~ "\n"
+#~ " 1. Gibt die Logmeldungen für einen lokalen PFAD aus (Vorgabe: ».«).\n"
+#~ " Die Vorgabe für den Revisionsbereich ist BASE:1.\n"
+#~ "\n"
+#~ " 2. Gibt die Logmeldungen für die PFADe (Vorgabe: ».«) unterhalb der URL aus.\n"
+#~ " Falls angegeben, bestimmt REV, in welcher Revision die URL zuerst\n"
+#~ " durchsucht wird und der Standardrevisionsbereich ist REV:1. Andernfalls\n"
+#~ " wird die URL in HEAD gesucht und die Vorgabe für den Revisionsbereich\n"
+#~ " ist HEAD:1.\n"
+#~ "\n"
+#~ " Mehrere »-c«- oder »-r«-Optionen dürfen angegeben werden (aber keine\n"
+#~ " Kombination von »-c« und »-r«) und das Mischen von vor- und\n"
+#~ " rückwärtigen Bereichen ist erlaubt.\n"
+#~ "\n"
+#~ " Mit -v werden auch die betroffenen Pfade mit jeder Logmeldung ausgegeben.\n"
+#~ " Mit -q wird die Logmeldung selbst nicht ausgegeben (Hinweis: Diese Option\n"
+#~ " ist kompatibel mit -v).\n"
+#~ "\n"
+#~ " Jede Logmeldung wird nur einmal ausgegeben, selbst wenn mehr als einer\n"
+#~ " der betroffenen Pfade explizit angefragt wurde. Logs folgen per Vorgabe\n"
+#~ " der Historie von Kopien. Benutzen Sie »--stop-on-copy«, um dieses Verhalten,\n"
+#~ " z.B. zum Auffinden von Verzweigungen, zu deaktivieren.\n"
+#~ "\n"
+#~ " Beispiele:\n"
+#~ " svn log\n"
+#~ " svn log foo.c\n"
+#~ " svn log http://www.example.com/repo/projekt/foo.c\n"
+#~ " svn log http://www.example.com/repo/projekt foo.c bar.c\n"
+
+# FIXME: WCPATH oder WC_PATH?
+#, fuzzy
+#~ msgid ""
+#~ "Apply the differences between two sources to a working copy path.\n"
+#~ "usage: 1. merge sourceURL1[@N] sourceURL2[@M] [WCPATH]\n"
+#~ " 2. merge sourceWCPATH1@N sourceWCPATH2@M [WCPATH]\n"
+#~ " 3. merge [-c M[,N...] | -r N:M ...] SOURCE[@REV] [WCPATH]\n"
+#~ "\n"
+#~ " 1. In the first form, the source URLs are specified at revisions\n"
+#~ " N and M. These are the two sources to be compared. The revisions\n"
+#~ " default to HEAD if omitted.\n"
+#~ "\n"
+#~ " 2. In the second form, the URLs corresponding to the source working\n"
+#~ " copy paths define the sources to be compared. The revisions must\n"
+#~ " be specified.\n"
+#~ "\n"
+#~ " 3. In the third form, SOURCE can be either a URL or a working copy\n"
+#~ " path (in which case its corresponding URL is used). SOURCE (in\n"
+#~ " revision REV) is compared as it existed between revisions N and M\n"
+#~ " for each revision range provided. If REV is not specified, HEAD\n"
+#~ " is assumed. '-c M' is equivalent to '-r <M-1>:M', and '-c -M'\n"
+#~ " does the reverse: '-r M:<M-1>'. If no revision ranges are\n"
+#~ " specified, the default range of 0:REV is used. Multiple '-c'\n"
+#~ " and/or '-r' options may be specified, and mixing of forward\n"
+#~ " and reverse ranges is allowed.\n"
+#~ "\n"
+#~ " WCPATH is the working copy path that will receive the changes.\n"
+#~ " If WCPATH is omitted, a default value of '.' is assumed, unless\n"
+#~ " the sources have identical basenames that match a file within '.':\n"
+#~ " in which case, the differences will be applied to that file.\n"
+#~ "\n"
+#~ " For each merged item a line will be printed with characters reporting\n"
+#~ " the action taken. These characters have the following meaning:\n"
+#~ "\n"
+#~ " A Added\n"
+#~ " D Deleted\n"
+#~ " U Updated\n"
+#~ " C Conflict\n"
+#~ " G Merged\n"
+#~ " E Existed\n"
+#~ " R Replaced\n"
+#~ "\n"
+#~ " Characters in the first column report about the item itself.\n"
+#~ " Characters in the second column report about properties of the item.\n"
+#~ " A 'C' in the third column indicates a tree conflict, while a 'C' in\n"
+#~ " the first and second columns indicate textual conflicts in files\n"
+#~ " and in property values, respectively.\n"
+#~ "\n"
+#~ " NOTE: Subversion will only record metadata to track the merge\n"
+#~ " if the two sources are on the same line of history -- if the\n"
+#~ " first source is an ancestor of the second, or vice-versa. This is\n"
+#~ " guaranteed to be the case when using the third form listed above.\n"
+#~ " The --ignore-ancestry option overrides this, forcing Subversion to\n"
+#~ " regard the sources as unrelated and not to track the merge.\n"
+#~ msgstr ""
+#~ "Wendet die Unterschiede zwischen zwei Quellen auf einen Arbeitskopiepfad\n"
+#~ "an.\n"
+#~ "Aufruf: 1. merge QuellURL1[@N] QuellURL2[@M] [AKPfad]\n"
+#~ " 2. merge QuellAKPfad1@N QuellAKPfad2@M [AKPfad]\n"
+#~ " 3. merge [-c M[,N...] | -r N:M ...] QUELLE[@REV] [AKPfad]\n"
+#~ "\n"
+#~ " 1. In der ersten Form werden die Quell-URLs in den Revisionen\n"
+#~ " N und M angegeben. Dies sind die beiden Quellen, die verglichen werden.\n"
+#~ " Die Revisionen entsprechen HEAD, wenn keine Nummern angegeben wurden.\n"
+#~ "\n"
+#~ " 2. In der zweiten Form werden die den Arbeitskopiepfaden entsprechenden\n"
+#~ " URLs miteinander verglichen. Die Revisionen müssen angegeben werden.\n"
+#~ "\n"
+#~ " 3. In der dritten Form kann QUELLE eine URL oder ein Arbeitskopiepfad\n"
+#~ " (in diesem Fall wird die entsprechende URL verwendet) sein. QUELLE\n"
+#~ " (in Revision REV) wird verglichen, wie es zwischen den Revisionen N\n"
+#~ " und M für jeden angegebenen Revisionsbereich existierte. Ohne Angabe\n"
+#~ " von REV wird HEAD verwendet. Die Option »-c M« ist äquivalent zu\n"
+#~ " »-r <M-1>:M« und »-c -M« kehrt dies um: »-r M:<M-1>«. Falls keine\n"
+#~ " Revisionsbereiche angegeben wurden, wird 0:REV verwendet. Mehrere\n"
+#~ " Angaben von »-c« und/oder »-r« sind möglich und das Mischen von\n"
+#~ " vor- und rückwärtigen Bereichen ist erlaubt.\n"
+#~ "\n"
+#~ " AKPfad ist der Arbeitskopiepfad, in den die Änderungen geschrieben werden.\n"
+#~ " Die Vorgabe für AKPfad ist ».«, es sei denn, die Quellen haben einen\n"
+#~ " identischen Basisnamen, der eine Datei unterhalb von ».« beschreibt.\n"
+#~ " In diesem Fall werden die Änderungen auf die gefundene Datei angewandt.\n"
+#~ "\n"
+#~ " ACHTUNG: Subversion wird nur Metadaten zum Verfolgen der Zusammenführung\n"
+#~ " aufzeichnen, falls die zwei Quellen sich in der selben Historienabfolge\n"
+#~ " befinden - falls die erste Quelle ein Vorgänger der zweiten ist oder\n"
+#~ " umgekehrt. Dies ist garantiert der Fall, falls die dritte Form verwendet\n"
+#~ " wird. Die Option --ignore-ancestry überschreibt dies und zwingt Subversion\n"
+#~ " dazu, die Quellen als nicht zueinander bezogen zu betrachten und die\n"
+#~ " Zusammenführung nicht aufzuzeichnen.\n"
+
+#~ msgid ""
+#~ "Display merge-related information.\n"
+#~ "usage: mergeinfo SOURCE[@REV] [TARGET[@REV]]\n"
+#~ "\n"
+#~ " Display information related to merges (or potential merges) between\n"
+#~ " SOURCE and TARGET (default: '.'). If the --show-revs option\n"
+#~ " is not provided, display revisions which have been merged from\n"
+#~ " SOURCE to TARGET; otherwise, display the type of information\n"
+#~ " specified by the --show-revs option.\n"
+#~ msgstr ""
+#~ "Anzeige relevanter Informationen zu Zusammenführungen.\n"
+#~ "Aufruf: mergeinfo QUELLE[@REV] [ZIEL[@REV]]\n"
+#~ "\n"
+#~ " Zeigt Informationen zu Zusammenführungen (oder potentiellen\n"
+#~ " Zusammenführungen) zwischen QUELLE und ZIEL (Standard: ».«) an.\n"
+#~ " Falls die Option --show-revs nicht angegeben wurde, werden\n"
+#~ " Revisionen, die von QUELLE nach ZIEL zusammengeführt wurden,\n"
+#~ " angezeigt. Andernfalls wird die Art der Information angezeigt,\n"
+#~ " die durch die Option --show-revs spezifiziert wurde.\n"
+
+#~ msgid ""
+#~ "Move and/or rename something in working copy or repository.\n"
+#~ "usage: move SRC... DST\n"
+#~ "\n"
+#~ "When moving multiple sources, they will be added as children of DST,\n"
+#~ "which must be a directory.\n"
+#~ "\n"
+#~ " Note: this subcommand is equivalent to a 'copy' and 'delete'.\n"
+#~ " Note: the --revision option has no use and is deprecated.\n"
+#~ "\n"
+#~ " SRC and DST can both be working copy (WC) paths or URLs:\n"
+#~ " WC -> WC: move and schedule for addition (with history)\n"
+#~ " URL -> URL: complete server-side rename.\n"
+#~ " All the SRCs must be of the same type.\n"
+#~ msgstr ""
+#~ "Verschiebt oder benennt etwas in der Arbeitskopie oder\n"
+#~ "im Projektarchiv um.\n"
+#~ "Aufruf: move QUELLE... ZIEL\n"
+#~ "\n"
+#~ "Beim Verschieben mehrerer Quellen, werden sie als Kinder von ZIEL\n"
+#~ "hinzugefügt, was ein Verzeichnis sein muss.\n"
+#~ "\n"
+#~ " Hinweis: Dieser Unterbefehl entspricht der Folge »copy« und »delete«.\n"
+#~ " Hinweis: Die Option --revision bewirkt nichts und wird missbilligt.\n"
+#~ "\n"
+#~ " QUELLE und ZIEL können beides Arbeitskopiepfade (AK) oder URLs sein:\n"
+#~ " AK -> AK: Verschieben und zum Hinzufügen (mit Historie) einplanen\n"
+#~ " URL -> URL: Vollständig serverseitiges Verschieben.\n"
+#~ " Alle QUELLEn müssen vom selben Typ sein.\n"
+
+#~ msgid ""
+#~ "Resolve conflicts on working copy files or directories.\n"
+#~ "usage: resolve --accept=ARG [PATH...]\n"
+#~ "\n"
+#~ " Note: the --accept option is currently required.\n"
+#~ msgstr ""
+#~ "Auflösen von Konflikten in Arbeitskopiedateien oder -verzeichnissen.\n"
+#~ "Aufruf: resolve --accept=PAR [PFAD...]\n"
+#~ "\n"
+#~ " Bemerkung: Die Option --accept wird zurzeit benötigt.\n"
+
+#~ msgid "--reintegrate cannot be used with --ignore-ancestry or --record-only"
+#~ msgstr "--reintegrate kann nicht mit --ignore-ancestry oder --record-only verwendet werden"
+
+#~ msgid "A working copy merge source needs an explicit revision"
+#~ msgstr "Beim Zusammenführen von Arbeitskopien wird eine explizite Revision benötigt"
+
+#~ msgid "Wrong number of arguments"
+#~ msgstr "Falsche Anzahl von Argumenten"
+
+#~ msgid "Target must specify the revision as a number"
+#~ msgstr "Ziel muss die Revision als Zahl angegeben"
+
+#~ msgid "'%s' has lock token, but no lock owner"
+#~ msgstr "»%s« has Sperrmarke, aber keinen Sperreigner"
+
+#~ msgid "'%s' is an URL when it should be a path"
+#~ msgstr "»%s« ist eine URL, obwohl es ein Pfad sein sollte"
+
+#~ msgid ""
+#~ "use format compatible with Subversion versions\n"
+#~ " earlier than 1.4"
+#~ msgstr "Ein mit Subversion-Versionen vor 1.4 kompatibles Format verwenden"
+
+#~ msgid ""
+#~ "use format compatible with Subversion versions\n"
+#~ " earlier than 1.6"
+#~ msgstr "Ein mit Subversion-Versionen vor 1.6 kompatibles Format verwenden"
+
+#~ msgid ""
+#~ "use format compatible with Subversion versions\n"
+#~ " earlier than 1.7"
+#~ msgstr "Ein mit Subversion-Versionen vor 1.7 kompatibles Format verwenden"
+
+#~ msgid ""
+#~ "usage: svnadmin hotcopy REPOS_PATH NEW_REPOS_PATH\n"
+#~ "\n"
+#~ "Makes a hot copy of a repository.\n"
+#~ msgstr ""
+#~ "Aufruf: svnadmin hotcopy ARCHIV_PFAD ARCHIV_PFAD_NEU\n"
+#~ "\n"
+#~ "Erstellt eine Kopie des Projektarchivs im laufenden Betrieb.\n"
+
+#~ msgid "Exactly one property name and one file argument required"
+#~ msgstr "Genau ein Eigenschaftsname und ein Dateiparameter erforderlich"
+
+#~ msgid "Exactly one file argument required"
+#~ msgstr "Genau ein Dateiparameter benötigt"
+
+#~ msgid "Delta property block detected - not supported by svndumpfilter"
+#~ msgstr "Delta Eigenschaftsblock erkannt - wird von svndumpfilter nicht unterstützt"
+
+#~ msgid "Pass contents of file ARG as additional args"
+#~ msgstr ""
+#~ "Inhalt der Datei PAR als zusätzliche Parameter\n"
+#~ " übergeben"
+
+#~ msgid ""
+#~ "Default: '-u'. When Subversion is invoking an\n"
+#~ " external diff program, ARG is simply passed along\n"
+#~ " to the program. But when Subversion is using its\n"
+#~ " default internal diff implementation, or when\n"
+#~ " Subversion is displaying blame annotations, ARG\n"
+#~ " could be any of the following:\n"
+#~ " -u (--unified):\n"
+#~ " Output 3 lines of unified context.\n"
+#~ " -b (--ignore-space-change):\n"
+#~ " Ignore changes in the amount of white space.\n"
+#~ " -w (--ignore-all-space):\n"
+#~ " Ignore all white space.\n"
+#~ " --ignore-eol-style:\n"
+#~ " Ignore changes in EOL style"
+#~ msgstr ""
+#~ "Vorgabe: »-u«. Wenn Subversion ein\n"
+#~ " externes Vergleichsprogramm aufruft, wird PAR nur\n"
+#~ " an das Programm weitergereicht. Wenn Subversion\n"
+#~ " aber sein internes Vergleichsprogramm benutzt\n"
+#~ " oder Annotierungen anzeigt, kann PAR einen der\n"
+#~ " folgenden Werte annehmen:\n"
+#~ " -u (--unified):\n"
+#~ " Gibt 3 Zeilen Standardkontext aus.\n"
+#~ " -b (--ignore-space-change):\n"
+#~ " Ignoriert Änderungen in der Anzahl von\n"
+#~ " Leerzeichen.\n"
+#~ " -w (--ignore-all-space):\n"
+#~ " Ignoriert sämtliche Leerzeichen.\n"
+#~ " --ignore-eol-style:\n"
+#~ " Ignoriert Änderungen im EOL-Stil"
+
+#~ msgid "Missing path argument"
+#~ msgstr "Fehlender Pfad Parameter"
+
+#~ msgid "\"svnrdump load\"'s lock was stolen; can't remove it"
+#~ msgstr "Die Sperre von »svnrump load« wurde gestohlen und konnte nicht entfernt werden"
+
+#~ msgid ""
+#~ "general usage: svnrdump SUBCOMMAND URL [-r LOWER[:UPPER]]\n"
+#~ "Type 'svnrdump help <subcommand>' for help on a specific subcommand.\n"
+#~ "\n"
+#~ "Available subcommands:\n"
+#~ msgstr ""
+#~ "Aufruf: svnrdump UNTERBEFEHL URL [-r [ VON[:BIS]]\n"
+#~ "Geben Sie »svnrdump help <Unterbefehl>« ein, um Hilfe zu einem\n"
+#~ " Unterbefehl zu erhalten.\n"
+#~ "\n"
+#~ "Verfügbare Unterbefehle:\n"
+
+#~ msgid "LOWER cannot be greater than UPPER.\n"
+#~ msgstr "VON kann nicht größer als BIS sein.\n"
+
+# CHECKME
+#~ msgid ""
+#~ "listen port\n"
+#~ " [mode: daemon, service, listen-once]"
+#~ msgstr ""
+#~ "abzuhörender Port\n"
+#~ " [Modus: daemon, service, listen-once]"
+
+#~ msgid ""
+#~ "listen port\n"
+#~ " [mode: daemon, listen-once]"
+#~ msgstr ""
+#~ "abzuhörender Port\n"
+#~ " [Modus: daemon, listen-once]"
+
#~ msgid "Parent(s) of '%s' should have been present."
#~ msgstr "Eltern von »%s« sollten vorhanden sein."
@@ -12536,13 +15357,6 @@
#~ msgid "Can't move source to dest"
#~ msgstr "Kann Quelle nicht nach Ziel verschieben"
-#~ msgid ""
-#~ "set new working copy depth to ARG ('exclude',\n"
-#~ " 'empty', 'files', 'immediates', or 'infinity')"
-#~ msgstr ""
-#~ "setzt neue Tiefe der Arbeitskopie auf PAR (»exclude«,\n"
-#~ " »empty«, »files«, »immediates« oder »infinity«)"
-
#~ msgid "Can't get file perms for file at '%s' (file stat error)"
#~ msgstr "Kann die Berechtigungen für Datei in »%s« nicht holen (Dateistatus)"
@@ -12566,17 +15380,6 @@
#~ msgid ".patch"
#~ msgstr ".patch"
-#~ msgid ""
-#~ "use a different EOL marker than the standard\n"
-#~ " system marker for files with the svn:eol-style\n"
-#~ " property set to 'native'.\n"
-#~ " ARG may be one of 'LF', 'CR', 'CRLF'"
-#~ msgstr ""
-#~ "Verwende eine andere Zeilenendemarke als den\n"
-#~ " Standard für Dateien mit der Eigenschaft\n"
-#~ " »svn:eol-style native«.\n"
-#~ " PAR kann »LF«, »CR« oder »CRLF« sein."
-
#~ msgid "Failed to add file '%s': a file of the same name is already scheduled for addition with history"
#~ msgstr "Konnte Datei »%s« nicht hinzufügen: eine Datei mit dem selben Namen ist bereits zur Übertragung mit Historie eingeplant"
@@ -12687,9 +15490,6 @@
#~ " Die Zusammenführung versuchte »%s« zu löschen\n"
#~ " (möglicherweise als Teil einer Umbenennung).\n"
-#~ msgid "no parent with copyfrom information found above '%s'"
-#~ msgstr "kein Elternteil mit »copyfrom«-Information wurde oberhalb »%s« gefunden"
-
#~ msgid " The update attempted to add '%s'.\n"
#~ msgstr " Die Aktualisierung versuchte »%s« hinzuzufügen.\n"
@@ -12781,15 +15581,6 @@
#~ msgstr "UUID-Fehler: Existierendes Verzeichnis »%s« wurde aus einem anderen Projektarchiv ausgecheckt"
#~ msgid ""
-#~ "specify automatic conflict resolution source\n"
-#~ " ('base', 'working', 'mine-conflict',\n"
-#~ " 'theirs-conflict', 'mine-full', 'theirs-full')"
-#~ msgstr ""
-#~ "automatische Konfliktauflösungsaktion angeben\n"
-#~ " (»base«, »working«, »mine-conflict«,\n"
-#~ " »theirs-conflict«, »mine-full«, »theirs-full«)"
-
-#~ msgid ""
#~ "Apply a patch to a working copy path.\n"
#~ "usage: patch PATCHFILE [WCPATH]\n"
#~ "\n"
@@ -12825,9 +15616,6 @@
#~ msgid "Checksum mismatch for '%s'; recorded: '%s', actual: '%s'"
#~ msgstr "Prüfsummenfehler für »%s«; erwartet: »%s«, tatsächlich: »%s«"
-#~ msgid "Modified: %s\n"
-#~ msgstr "Modifiziert: %s\n"
-
# FIXME: "can't happen" according to source code!
#~ msgid "OPTIONS request (for capabilities) got HTTP response code %d"
#~ msgstr "OPTIONS-Anfrage (für Eigenschaften) führte zu HTTP-Antwort-Code %d"
@@ -12847,13 +15635,6 @@
#~ msgid "Bad type indicator"
#~ msgstr "Falscher Typindikator"
-#~ msgid ""
-#~ "set revision property ARG in new revision\n"
-#~ " using the name[=value] format"
-#~ msgstr ""
-#~ "Revisionseigenschaft PAR in neuer Revision\n"
-#~ " unter Verwendung des Formats name[=Wert] setzen"
-
#~ msgid "Corrupt working copy: '%s' has no default entry"
#~ msgstr "Beschädigte Arbeitskopie: »%s« hat keinen Standardeintrag"
@@ -13050,9 +15831,6 @@
#~ msgid "Added: %s%s"
#~ msgstr "Hinzugefügt: %s%s"
-#~ msgid "Missing 'left' attribute in '%s'"
-#~ msgstr "Fehlendes »left« Attribut für »%s«"
-
#~ msgid "Error modifying entry of '%s'"
#~ msgstr "Fehler beim Bearbeiten des Eintrags von »%s«"
@@ -13080,9 +15858,6 @@
#~ msgid "Couldn't open log"
#~ msgstr "Kann Log-Datei nicht öffnen"
-#~ msgid "Error recording tree conflicts in '%s'"
-#~ msgstr "Fehler beim Aufzeichnen von Baumkonflikten in »%s«"
-
#~ msgid "Expected '%s' to be a file but found a directory"
#~ msgstr "Erwartete, dass »%s« eine Datei ist, es ist aber ein Verzeichnis"
@@ -13095,48 +15870,9 @@
#~ msgid "Checksum mismatch while updating '%s'; expected: '%s', actual: '%s'"
#~ msgstr "Prüfsummenfehler beim Aktualisieren von »%s«; erwartet: »%s«, tatsächlich: »%s«"
-#~ msgid ""
-#~ "Default: '-u'. When Subversion is invoking an\n"
-#~ " external diff program, ARG is simply passed along\n"
-#~ " to the program. But when Subversion is using its\n"
-#~ " default internal diff implementation, or when\n"
-#~ " Subversion is displaying blame annotations, ARG\n"
-#~ " could be any of the following:\n"
-#~ " -u (--unified):\n"
-#~ " Output 3 lines of unified context.\n"
-#~ " -b (--ignore-space-change):\n"
-#~ " Ignore changes in the amount of white space.\n"
-#~ " -w (--ignore-all-space):\n"
-#~ " Ignore all white space.\n"
-#~ " --ignore-eol-style:\n"
-#~ " Ignore changes in EOL style.\n"
-#~ " -p (--show-c-function):\n"
-#~ " Show C function name in diff output."
-#~ msgstr ""
-#~ "Vorgabe: »-u«. Wenn Subversion ein\n"
-#~ " externes Vergleichsprogramm aufruft, wird PAR nur\n"
-#~ " an das Programm weitergereicht. Wenn Subversion\n"
-#~ " aber sein internes Vergleichsprogramm benutzt\n"
-#~ " oder Annotierungen anzeigt, kann PAR einen der\n"
-#~ " folgenden Werte annehmen:\n"
-#~ " -u (--unified):\n"
-#~ " Gibt 3 Zeilen Standardkontext aus.\n"
-#~ " -b (--ignore-space-change):\n"
-#~ " Ignoriert Änderungen in der Anzahl von\n"
-#~ " Leerzeichen.\n"
-#~ " -w (--ignore-all-space):\n"
-#~ " Ignoriert sämtliche Leerzeichen.\n"
-#~ " --ignore-eol-style:\n"
-#~ " Ignoriert Änderungen im Zeilenendestil.\n"
-#~ " -p (--show-c-function):\n"
-#~ " Zeigt C-Funktionsname in Diff-Ausgabe."
-
#~ msgid "Destination directory of add-with-history is missing a URL"
#~ msgstr "Dem Zielverzeichnis von add-with-history fehlt eine URL"
-#~ msgid "Error writing to '%s'"
-#~ msgstr "Fehler beim Schreiben in »%s«"
-
# CHECKME: demselb... oder dem selb...
#~ msgid "Failed to add file '%s': a non-file object of the same name already exists"
#~ msgstr ""
@@ -13173,9 +15909,6 @@
#~ msgid "unexpected kind for revert-base '%s'"
#~ msgstr "Unerwartete Art für revert-base »%s«"
-#~ msgid "Lock file '%s' is not a regular file"
-#~ msgstr "Sperrdatei »%s« ist keine reguläre Datei"
-
#~ msgid "Can't add '%s' to deleted directory; try undeleting its parent directory first"
#~ msgstr ""
#~ "Kann »%s« in gelöschtem Verzeichnis nicht hinzufügen; versuchen Sie zuerst,\n"
@@ -13234,17 +15967,6 @@
#~ msgid "Failed to add file '%s': an unversioned file of the same name already exists"
#~ msgstr "Datei »%s« konnte nicht hinzugefügt werden: eine nicht versionierte Datei mit demselben Namen existiert bereits"
-#~ msgid ""
-#~ "specify automatic conflict resolution action\n"
-#~ " ('postpone', 'base', 'mine-conflict',\n"
-#~ " 'theirs-conflict', 'mine-full', 'theirs-full',\n"
-#~ " 'edit', 'launch')"
-#~ msgstr ""
-#~ "automatische Konfliktauflösungsaktion angeben\n"
-#~ " (»postpone«, »base«, »mine-conflict«,\n"
-#~ " »theirs-conflict«, »mine-full«, »theirs-full«,\n"
-#~ " »edit«, »launch«)"
-
#~ msgid "mark revisions as merged (use with -r)"
#~ msgstr ""
#~ "Revisionen als zusammengeführt markieren (mit -r\n"
@@ -13286,48 +16008,13 @@
#~ msgid ".empty"
#~ msgstr ".leer"
-#~ msgid ""
-#~ "ARG (some commands also take ARG1:ARG2 range)\n"
-#~ " A revision argument can be one of:\n"
-#~ " NUMBER revision number\n"
-#~ " '{' DATE '}' revision at start of the date\n"
-#~ " 'HEAD' latest in repository\n"
-#~ " 'BASE' base rev of item's working copy\n"
-#~ " 'COMMITTED' last commit at or before BASE\n"
-#~ " 'PREV' revision just before COMMITTED"
-#~ msgstr ""
-#~ "PAR (manche Befehle akzeptieren auch einen\n"
-#~ " Wertebereich PAR1:PAR2)\n"
-#~ " Ein Revisionsparameter kann sein:\n"
-#~ " NUMMER Revisionsnummer\n"
-#~ " »{«DATUM»}« Revision zum Startdatum\n"
-#~ " »HEAD« neueste Revision im Projektarchiv\n"
-#~ " »BASE« Basisrevision der Arbeitskopie\n"
-#~ " »COMMITTED« letzte übertragene Revision zu\n"
-#~ " oder vor BASE\n"
-#~ " »PREV« letzte Revision vor COMMITTED"
-
# FIXME: s/on/of/?
#~ msgid "Error getting file size on '%s'"
#~ msgstr "Fehler beim Ermitteln der Dateigröße von »%s«"
-#~ msgid ""
-#~ "the change made by revision ARG (like -r ARG-1:ARG)\n"
-#~ " If ARG is negative this is like -r ARG:ARG-1"
-#~ msgstr ""
-#~ "Änderung stammt aus Revision PAR (wie\n"
-#~ " -r PAR-1:PAR). Falls PAR negativ ist,\n"
-#~ " gleichbedeutend zu -r PAR:PAR-1"
-
-#~ msgid "Checksum mismatch for '%s'; expected: '%s', actual: '%s'"
-#~ msgstr "Prüfsummenfehler für »%s«; erwartet: »%s«, tatsächlich: »%s«"
-
#~ msgid "Target lists to diff may not contain both working copy paths and URLs"
#~ msgstr "Ziellisten für Vergleiche dürfen nicht gleichzeitig Arbeitskopien und URLs enthalten"
-#~ msgid "Error parsing diff options"
-#~ msgstr "Fehler beim Zerlegen der Vergleichsoptionen"
-
# CHECKME: I thought no full stop in error messages are used?
#~ msgid "Parent(s) of '%s' should have repository information."
#~ msgstr "Eltern von »%s« sollten Informationen über das Projektarchiv haben."
@@ -13350,9 +16037,6 @@
#~ "Beschädigte Arbeitskopie: »%s« im Verzeichnis »%s« (welches zum Hinzufügen\n"
#~ "eingeplant ist) ist selbst nicht zum Hinzufügen vorgesehen"
-#~ msgid "'%s' has no ancestry information"
-#~ msgstr "»%s« hat keine Informationen über seine Vorgänger"
-
#~ msgid "Can't replace '%s' in deleted directory; try undeleting its parent directory first"
#~ msgstr ""
#~ "Kann »%s« in gelöschtem Verzeichnis nicht ersetzen; versuchen Sie zuerst,\n"
@@ -13364,10 +16048,6 @@
#~ msgid "Modified: %s%s"
#~ msgstr "Geändert: %s%s"
-# FIXME: Grammar depends on usage!!!!!!! (prepanded by "bei")
-#~ msgid "unknown operation"
-#~ msgstr "Unbekannter Operation"
-
#~ msgid "Missing 'revision' attribute for '%s'"
#~ msgstr "Fehlendes Revisions Attribut für »%s«"
diff --git a/subversion/svn/tree-conflicts.c b/subversion/svn/cl-conflicts.c
similarity index 73%
rename from subversion/svn/tree-conflicts.c
rename to subversion/svn/cl-conflicts.c
index fff6e94..9787ced 100644
--- a/subversion/svn/tree-conflicts.c
+++ b/subversion/svn/cl-conflicts.c
@@ -1,5 +1,5 @@
/*
- * tree-conflicts.c: Tree conflicts.
+ * conflicts.c: Tree conflicts.
*
* ====================================================================
* Licensed to the Apache Software Foundation (ASF) under one
@@ -21,7 +21,7 @@
* ====================================================================
*/
-#include "tree-conflicts.h"
+#include "cl-conflicts.h"
#include "svn_xml.h"
#include "svn_dirent_uri.h"
#include "svn_path.h"
@@ -82,6 +82,14 @@
{ NULL, 0 }
};
+static const svn_token_map_t map_conflict_kind_xml[] =
+{
+ { "text", svn_wc_conflict_kind_text },
+ { "property", svn_wc_conflict_kind_property },
+ { "tree", svn_wc_conflict_kind_tree },
+ { NULL, 0 }
+};
+
/* Return a localized string representation of CONFLICT->action. */
static const char *
action_str(const svn_wc_conflict_description2_t *conflict)
@@ -96,7 +104,6 @@
return _(svn_token__to_word(map_conflict_reason_human, conflict->reason));
}
-
svn_error_t *
svn_cl__get_human_readable_tree_conflict_description(
const char **desc,
@@ -178,11 +185,10 @@
}
-svn_error_t *
-svn_cl__append_tree_conflict_info_xml(
- svn_stringbuf_t *str,
- const svn_wc_conflict_description2_t *conflict,
- apr_pool_t *pool)
+static svn_error_t *
+append_tree_conflict_info_xml(svn_stringbuf_t *str,
+ const svn_wc_conflict_description2_t *conflict,
+ apr_pool_t *pool)
{
apr_hash_t *att_hash = apr_hash_make(pool);
const char *tmp;
@@ -225,3 +231,76 @@
return SVN_NO_ERROR;
}
+svn_error_t *
+svn_cl__append_conflict_info_xml(svn_stringbuf_t *str,
+ const svn_wc_conflict_description2_t *conflict,
+ apr_pool_t *scratch_pool)
+{
+ apr_hash_t *att_hash;
+ const char *kind;
+ if (conflict->kind == svn_wc_conflict_kind_tree)
+ {
+ /* Uses other element type */
+ return svn_error_trace(
+ append_tree_conflict_info_xml(str, conflict, scratch_pool));
+ }
+
+ att_hash = apr_hash_make(scratch_pool);
+
+ apr_hash_set(att_hash, "operation", APR_HASH_KEY_STRING,
+ svn_cl__operation_str_xml(conflict->operation, scratch_pool));
+
+
+ kind = svn_token__to_word(map_conflict_kind_xml, conflict->kind);
+ apr_hash_set(att_hash, "kind", APR_HASH_KEY_STRING, kind);
+
+ /* "<conflict>" */
+ svn_xml_make_open_tag_hash(&str, scratch_pool,
+ svn_xml_normal, "conflict", att_hash);
+
+ if (conflict->src_left_version)
+ SVN_ERR(add_conflict_version_xml(&str,
+ "source-left",
+ conflict->src_left_version,
+ scratch_pool));
+
+ if (conflict->src_right_version)
+ SVN_ERR(add_conflict_version_xml(&str,
+ "source-right",
+ conflict->src_right_version,
+ scratch_pool));
+
+ switch (conflict->kind)
+ {
+ case svn_wc_conflict_kind_text:
+ /* "<prev-base-file> xx </prev-base-file>" */
+ svn_cl__xml_tagged_cdata(&str, scratch_pool, "prev-base-file",
+ conflict->base_abspath);
+
+ /* "<prev-wc-file> xx </prev-wc-file>" */
+ svn_cl__xml_tagged_cdata(&str, scratch_pool, "prev-wc-file",
+ conflict->my_abspath);
+
+ /* "<cur-base-file> xx </cur-base-file>" */
+ svn_cl__xml_tagged_cdata(&str, scratch_pool, "cur-base-file",
+ conflict->their_abspath);
+
+ break;
+
+ case svn_wc_conflict_kind_property:
+ /* "<prop-file> xx </prop-file>" */
+ svn_cl__xml_tagged_cdata(&str, scratch_pool, "prop-file",
+ conflict->their_abspath);
+ break;
+
+ default:
+ case svn_wc_conflict_kind_tree:
+ SVN_ERR_MALFUNCTION(); /* Handled separately */
+ break;
+ }
+
+ /* "</conflict>" */
+ svn_xml_make_close_tag(&str, scratch_pool, "conflict");
+
+ return SVN_NO_ERROR;
+}
diff --git a/subversion/svn/tree-conflicts.h b/subversion/svn/cl-conflicts.h
similarity index 87%
rename from subversion/svn/tree-conflicts.h
rename to subversion/svn/cl-conflicts.h
index 7a01604..156b3b3 100644
--- a/subversion/svn/tree-conflicts.h
+++ b/subversion/svn/cl-conflicts.h
@@ -1,5 +1,5 @@
/*
- * tree-conflicts.h: Tree conflicts.
+ * conflicts.h: Conflicts handling
*
* ====================================================================
* Licensed to the Apache Software Foundation (ASF) under one
@@ -23,8 +23,8 @@
-#ifndef SVN_TREE_CONFLICTS_H
-#define SVN_TREE_CONFLICTS_H
+#ifndef SVN_CONFLICTS_H
+#define SVN_CONFLICTS_H
/*** Includes. ***/
#include <apr_pools.h>
@@ -52,11 +52,11 @@
apr_pool_t *pool);
/**
- * Append to @a str an XML representation of the tree conflict data
+ * Append to @a str an XML representation of the conflict data
* for @a conflict, in a format suitable for 'svn info --xml'.
*/
svn_error_t *
-svn_cl__append_tree_conflict_info_xml(
+svn_cl__append_conflict_info_xml(
svn_stringbuf_t *str,
const svn_wc_conflict_description2_t *conflict,
apr_pool_t *pool);
@@ -65,4 +65,4 @@
}
#endif /* __cplusplus */
-#endif /* SVN_TREE_CONFLICTS_H */
+#endif /* SVN_CONFLICTS_H */
diff --git a/subversion/svn/conflict-callbacks.c b/subversion/svn/conflict-callbacks.c
index 63171e8..b52fd36 100644
--- a/subversion/svn/conflict-callbacks.c
+++ b/subversion/svn/conflict-callbacks.c
@@ -36,7 +36,7 @@
#include "svn_sorts.h"
#include "cl.h"
-#include "tree-conflicts.h"
+#include "cl-conflicts.h"
#include "private/svn_cmdline_private.h"
diff --git a/subversion/svn/info-cmd.c b/subversion/svn/info-cmd.c
index 752c45e..42f708e 100644
--- a/subversion/svn/info-cmd.c
+++ b/subversion/svn/info-cmd.c
@@ -40,7 +40,7 @@
#include "cl.h"
#include "svn_private_config.h"
-#include "tree-conflicts.h"
+#include "cl-conflicts.h"
/*** Code. ***/
@@ -240,47 +240,7 @@
APR_ARRAY_IDX(info->wc_info->conflicts, i,
const svn_wc_conflict_description2_t *);
- switch (conflict->kind)
- {
- case svn_wc_conflict_kind_text:
- /* "<conflict>" */
- svn_xml_make_open_tag(&sb, pool, svn_xml_normal, "conflict",
- NULL);
-
- /* "<prev-base-file> xx </prev-base-file>" */
- svn_cl__xml_tagged_cdata(&sb, pool, "prev-base-file",
- conflict->base_abspath);
-
- /* "<prev-wc-file> xx </prev-wc-file>" */
- svn_cl__xml_tagged_cdata(&sb, pool, "prev-wc-file",
- conflict->my_abspath);
-
- /* "<cur-base-file> xx </cur-base-file>" */
- svn_cl__xml_tagged_cdata(&sb, pool, "cur-base-file",
- conflict->their_abspath);
-
- /* "</conflict>" */
- svn_xml_make_close_tag(&sb, pool, "conflict");
- break;
-
- case svn_wc_conflict_kind_property:
- /* "<conflict>" */
- svn_xml_make_open_tag(&sb, pool, svn_xml_normal, "conflict",
- NULL);
-
- /* "<prop-file> xx </prop-file>" */
- svn_cl__xml_tagged_cdata(&sb, pool, "prop-file",
- conflict->their_abspath);
-
- /* "</conflict>" */
- svn_xml_make_close_tag(&sb, pool, "conflict");
- break;
-
- case svn_wc_conflict_kind_tree:
- SVN_ERR(svn_cl__append_tree_conflict_info_xml(sb, conflict,
- pool));
- break;
- }
+ SVN_ERR(svn_cl__append_conflict_info_xml(sb, conflict, pool));
}
}
@@ -482,12 +442,10 @@
for (i = 0; i < info->wc_info->conflicts->nelts; i++)
{
- const svn_wc_conflict_description2_t *conflict =
- APR_ARRAY_IDX(info->wc_info->conflicts, i,
- const svn_wc_conflict_description2_t *);
- const char *desc;
- const char *src_left_version;
- const char *src_right_version;
+ const svn_wc_conflict_description2_t *conflict =
+ APR_ARRAY_IDX(info->wc_info->conflicts, i,
+ const svn_wc_conflict_description2_t *);
+ const char *desc;
switch (conflict->kind)
{
@@ -526,33 +484,45 @@
svn_cl__get_human_readable_tree_conflict_description(
&desc, conflict, pool));
- src_left_version =
- svn_cl__node_description(conflict->src_left_version,
- info->repos_root_URL, pool);
-
- src_right_version =
- svn_cl__node_description(conflict->src_right_version,
- info->repos_root_URL, pool);
-
SVN_ERR(svn_cmdline_printf(pool, "%s: %s\n",
_("Tree conflict"), desc));
-
- if (src_left_version)
- SVN_ERR(svn_cmdline_printf(pool, " %s: %s\n",
- _("Source left"), /* (1) */
- src_left_version));
- /* (1): Sneaking in a space in "Source left" so that
- * it is the same length as "Source right" while it still
- * starts in the same column. That's just a tiny tweak in
- * the English `svn'. */
-
- if (src_right_version)
- SVN_ERR(svn_cmdline_printf(pool, " %s: %s\n",
- _("Source right"),
- src_right_version));
break;
}
}
+
+ /* We only store one left and right version for all conflicts, which is
+ referenced from all conflicts.
+ Print it after the conflicts to match the 1.6/1.7 output where it is
+ only available for tree conflicts */
+ {
+ const char *src_left_version;
+ const char *src_right_version;
+ const svn_wc_conflict_description2_t *conflict =
+ APR_ARRAY_IDX(info->wc_info->conflicts, 0,
+ const svn_wc_conflict_description2_t *);
+
+ src_left_version =
+ svn_cl__node_description(conflict->src_left_version,
+ info->repos_root_URL, pool);
+
+ src_right_version =
+ svn_cl__node_description(conflict->src_right_version,
+ info->repos_root_URL, pool);
+
+ if (src_left_version)
+ SVN_ERR(svn_cmdline_printf(pool, " %s: %s\n",
+ _("Source left"), /* (1) */
+ src_left_version));
+ /* (1): Sneaking in a space in "Source left" so that
+ * it is the same length as "Source right" while it still
+ * starts in the same column. That's just a tiny tweak in
+ * the English `svn'. */
+
+ if (src_right_version)
+ SVN_ERR(svn_cmdline_printf(pool, " %s: %s\n",
+ _("Source right"),
+ src_right_version));
+ }
}
}
diff --git a/subversion/svn/merge-cmd.c b/subversion/svn/merge-cmd.c
index 40f68ea..03dad3c 100644
--- a/subversion/svn/merge-cmd.c
+++ b/subversion/svn/merge-cmd.c
@@ -386,9 +386,9 @@
if (sourcepath1 && sourcepath2 && strcmp(targetpath, "") == 0)
{
/* If the sourcepath is a URL, it can only refer to a target in
- the current working directory. However, if the sourcepath is
- a local path, it can refer to a target somewhere deeper in
- the directory structure. */
+ the current working directory or which is the current working
+ directory. However, if the sourcepath is a local path, it can
+ refer to a target somewhere deeper in the directory structure. */
if (svn_path_is_url(sourcepath1))
{
const char *sp1_basename = svn_uri_basename(sourcepath1, pool);
@@ -396,12 +396,29 @@
if (strcmp(sp1_basename, sp2_basename) == 0)
{
- svn_node_kind_t kind;
+ const char *target_url;
+ const char *target_base;
- SVN_ERR(svn_io_check_path(sp1_basename, &kind, pool));
- if (kind == svn_node_file)
+ SVN_ERR(svn_client_url_from_path2(&target_url, targetpath, ctx,
+ pool, pool));
+ target_base = svn_uri_basename(target_url, pool);
+
+ /* If the basename of the source is the same as the basename of
+ the cwd assume the cwd is the target. */
+ if (strcmp(sp1_basename, target_base) != 0)
{
- targetpath = sp1_basename;
+ svn_node_kind_t kind;
+
+ /* If the basename of the source differs from the basename
+ of the target. We still might assume the cwd is the
+ target, but first check if there is a file in the cwd
+ with the same name as the source basename. If there is,
+ then assume that file is the target. */
+ SVN_ERR(svn_io_check_path(sp1_basename, &kind, pool));
+ if (kind == svn_node_file)
+ {
+ targetpath = sp1_basename;
+ }
}
}
}
diff --git a/subversion/svn/status.c b/subversion/svn/status.c
index 87dd29e..6ec164a 100644
--- a/subversion/svn/status.c
+++ b/subversion/svn/status.c
@@ -33,7 +33,7 @@
#include "svn_time.h"
#include "cl.h"
#include "svn_private_config.h"
-#include "tree-conflicts.h"
+#include "cl-conflicts.h"
#include "private/svn_wc_private.h"
/* Return the single character representation of STATUS */
diff --git a/subversion/svn/svn.c b/subversion/svn/svn.c
index 3b1fbfb..0a3a75b 100644
--- a/subversion/svn/svn.c
+++ b/subversion/svn/svn.c
@@ -2474,7 +2474,7 @@
}
/* -N has a different meaning depending on the command */
- if (descend == FALSE)
+ if (!descend)
{
if (subcommand->cmd_func == svn_cl__status)
{
diff --git a/subversion/svnadmin/svnadmin.c b/subversion/svnadmin/svnadmin.c
index d3b0ac8..aea22e7 100644
--- a/subversion/svnadmin/svnadmin.c
+++ b/subversion/svnadmin/svnadmin.c
@@ -1150,7 +1150,7 @@
opt_state->uuid_action, opt_state->parent_dir,
opt_state->use_pre_commit_hook,
opt_state->use_post_commit_hook,
- opt_state->bypass_prop_validation ? FALSE : TRUE,
+ !opt_state->bypass_prop_validation,
opt_state->quiet ? NULL : repos_notify_handler,
stdout_stream, check_cancel, NULL, pool);
if (err && err->apr_err == SVN_ERR_BAD_PROPERTY_VALUE)
diff --git a/subversion/svnlook/svnlook.c b/subversion/svnlook/svnlook.c
index cb2bec6..8c6b47c 100644
--- a/subversion/svnlook/svnlook.c
+++ b/subversion/svnlook/svnlook.c
@@ -487,16 +487,20 @@
/*** Tree Printing Routines ***/
/* Recursively print only directory nodes that either a) have property
- mods, or b) contains files that have changed. */
+ mods, or b) contains files that have changed, or c) has added or deleted
+ children. NODE is the root node of the tree delta, so every node in it
+ is either changed or is a directory with a changed node somewhere in the
+ subtree below it.
+ */
static svn_error_t *
print_dirs_changed_tree(svn_repos_node_t *node,
const char *path /* UTF-8! */,
apr_pool_t *pool)
{
svn_repos_node_t *tmp_node;
- int print_me = 0;
+ svn_boolean_t print_me = FALSE;
const char *full_path;
- apr_pool_t *subpool;
+ apr_pool_t *iterpool;
SVN_ERR(check_cancel(NULL));
@@ -509,33 +513,19 @@
/* Got prop mods? Excellent. */
if (node->prop_mod)
- print_me = 1;
+ print_me = TRUE;
- if (! print_me)
+ /* Fly through the list of children, checking for modified files. */
+ tmp_node = node->child;
+ while (tmp_node && (! print_me))
{
- /* Fly through the list of children, checking for modified files. */
- tmp_node = node->child;
- if (tmp_node)
+ if ((tmp_node->kind == svn_node_file)
+ || (tmp_node->action == 'A')
+ || (tmp_node->action == 'D'))
{
- if ((tmp_node->kind == svn_node_file)
- || (tmp_node->text_mod)
- || (tmp_node->action == 'A')
- || (tmp_node->action == 'D'))
- {
- print_me = 1;
- }
- while (tmp_node->sibling && (! print_me ))
- {
- tmp_node = tmp_node->sibling;
- if ((tmp_node->kind == svn_node_file)
- || (tmp_node->text_mod)
- || (tmp_node->action == 'A')
- || (tmp_node->action == 'D'))
- {
- print_me = 1;
- }
- }
+ print_me = TRUE;
}
+ tmp_node = tmp_node->sibling;
}
/* Print the node if it qualifies. */
@@ -550,17 +540,15 @@
return SVN_NO_ERROR;
/* Recursively handle the node's children. */
- subpool = svn_pool_create(pool);
- full_path = svn_dirent_join(path, tmp_node->name, subpool);
- SVN_ERR(print_dirs_changed_tree(tmp_node, full_path, subpool));
- while (tmp_node->sibling)
+ iterpool = svn_pool_create(pool);
+ while (tmp_node)
{
- svn_pool_clear(subpool);
+ svn_pool_clear(iterpool);
+ full_path = svn_dirent_join(path, tmp_node->name, iterpool);
+ SVN_ERR(print_dirs_changed_tree(tmp_node, full_path, iterpool));
tmp_node = tmp_node->sibling;
- full_path = svn_dirent_join(path, tmp_node->name, subpool);
- SVN_ERR(print_dirs_changed_tree(tmp_node, full_path, subpool));
}
- svn_pool_destroy(subpool);
+ svn_pool_destroy(iterpool);
return SVN_NO_ERROR;
}
@@ -576,8 +564,8 @@
{
const char *full_path;
char status[4] = "_ ";
- int print_me = 1;
- apr_pool_t *subpool;
+ svn_boolean_t print_me = TRUE;
+ apr_pool_t *iterpool;
SVN_ERR(check_cancel(NULL));
@@ -596,14 +584,14 @@
else if (node->action == 'R')
{
if ((! node->text_mod) && (! node->prop_mod))
- print_me = 0;
+ print_me = FALSE;
if (node->text_mod)
status[0] = 'U';
if (node->prop_mod)
status[1] = 'U';
}
else
- print_me = 0;
+ print_me = FALSE;
/* Print this node unless told to skip it. */
if (print_me)
@@ -629,17 +617,15 @@
return SVN_NO_ERROR;
/* Recursively handle the node's children. */
- subpool = svn_pool_create(pool);
- full_path = svn_dirent_join(path, node->name, subpool);
- SVN_ERR(print_changed_tree(node, full_path, copy_info, subpool));
- while (node->sibling)
+ iterpool = svn_pool_create(pool);
+ while (node)
{
- svn_pool_clear(subpool);
+ svn_pool_clear(iterpool);
+ full_path = svn_dirent_join(path, node->name, iterpool);
+ SVN_ERR(print_changed_tree(node, full_path, copy_info, iterpool));
node = node->sibling;
- full_path = svn_dirent_join(path, node->name, subpool);
- SVN_ERR(print_changed_tree(node, full_path, copy_info, subpool));
}
- svn_pool_destroy(subpool);
+ svn_pool_destroy(iterpool);
return SVN_NO_ERROR;
}
diff --git a/subversion/svnsync/svnsync.c b/subversion/svnsync/svnsync.c
index 1d33940..dc8ad85 100644
--- a/subversion/svnsync/svnsync.c
+++ b/subversion/svnsync/svnsync.c
@@ -531,7 +531,7 @@
/* Copy all properties:
- not matching the exclude pattern if provided OR
- matching the include pattern if provided */
- if (!filter || filter(propname) == FALSE)
+ if (!filter || !filter(propname))
{
apr_hash_set(filtered, propname, APR_HASH_KEY_STRING, propval);
}
diff --git a/subversion/tests/cmdline/basic_tests.py b/subversion/tests/cmdline/basic_tests.py
index 55fa9a9..5ad0a50 100755
--- a/subversion/tests/cmdline/basic_tests.py
+++ b/subversion/tests/cmdline/basic_tests.py
@@ -2525,22 +2525,22 @@
# Checkout with jrandom
exit_code, output, errput = svntest.main.run_command(
- svntest.main.svn_binary, None, 1, 'co', sbox.repo_url, wc_dir,
+ svntest.main.svn_binary, None, True, 'co', sbox.repo_url, wc_dir,
'--username', 'jrandom', '--password', 'rayjandom',
'--config-dir', config_dir)
exit_code, output, errput = svntest.main.run_command(
- svntest.main.svn_binary, None, 1, 'co', sbox.repo_url, wc_dir,
+ svntest.main.svn_binary, None, True, 'co', sbox.repo_url, wc_dir,
'--username', 'jrandom', '--non-interactive', '--config-dir', config_dir)
# Checkout with jconstant
exit_code, output, errput = svntest.main.run_command(
- svntest.main.svn_binary, None, 1, 'co', sbox.repo_url, wc_dir,
+ svntest.main.svn_binary, None, True, 'co', sbox.repo_url, wc_dir,
'--username', 'jconstant', '--password', 'rayjandom',
'--config-dir', config_dir)
exit_code, output, errput = svntest.main.run_command(
- svntest.main.svn_binary, None, 1, 'co', sbox.repo_url, wc_dir,
+ svntest.main.svn_binary, None, True, 'co', sbox.repo_url, wc_dir,
'--username', 'jconstant', '--non-interactive',
'--config-dir', config_dir)
@@ -2548,7 +2548,7 @@
# a password and the above cached password belongs to jconstant
expected_err = ["authorization failed: Could not authenticate to server:"]
exit_code, output, errput = svntest.main.run_command(
- svntest.main.svn_binary, expected_err, 1, 'co', sbox.repo_url, wc_dir,
+ svntest.main.svn_binary, expected_err, True, 'co', sbox.repo_url, wc_dir,
'--username', 'jrandom', '--non-interactive', '--config-dir', config_dir)
def basic_add_svn_format_file(sbox):
diff --git a/subversion/tests/cmdline/copy_tests.py b/subversion/tests/cmdline/copy_tests.py
index 8882cbc..e835b4e 100755
--- a/subversion/tests/cmdline/copy_tests.py
+++ b/subversion/tests/cmdline/copy_tests.py
@@ -769,9 +769,11 @@
svntest.actions.run_and_verify_svn(None, None, [], 'move',
E_path, F_path)
expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
- expected_status.tweak('A/B/E', 'A/B/E/alpha', 'A/B/E/beta', status='D ')
+ expected_status.tweak('A/B/E/alpha', 'A/B/E/beta', status='D ')
+ expected_status.tweak('A/B/E', status='D ', moved_to='A/B/F/E')
expected_status.add({
- 'A/B/F/E' : Item(status='A ', wc_rev='-', copied='+'),
+ 'A/B/F/E' : Item(status='A ', wc_rev='-', copied='+',
+ moved_from='A/B/E'),
'A/B/F/E/alpha' : Item(status=' ', wc_rev='-', copied='+'),
'A/B/F/E/beta' : Item(status=' ', wc_rev='-', copied='+'),
})
@@ -781,6 +783,7 @@
svntest.actions.run_and_verify_svn(None, None, [], 'revert', '--recursive',
new_E_path)
expected_status.remove('A/B/F/E', 'A/B/F/E/alpha', 'A/B/F/E/beta')
+ expected_status.tweak('A/B/E', moved_to=None)
svntest.actions.run_and_verify_status(wc_dir, expected_status)
@@ -2420,7 +2423,8 @@
# Check expected status before commit
expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
expected_status.add({
- 'A/D/G/rho' : Item(status='R ', copied='+', wc_rev='-'),
+ 'A/D/G/rho' : Item(status='R ', copied='+', wc_rev='-',
+ moved_from='A/D/G/rho', moved_to='A/D/G/rho'),
})
svntest.actions.run_and_verify_status(wc_dir, expected_status)
@@ -2463,7 +2467,8 @@
# Verify that the status indicates a replace with history
expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
expected_status.add({
- 'A/D' : Item(status='R ', copied='+', wc_rev='-'),
+ 'A/D' : Item(status='R ', copied='+', wc_rev='-',
+ moved_from='A/D', moved_to='A/D'),
'A/D/G' : Item(status=' ', copied='+', wc_rev='-'),
'A/D/G/pi' : Item(status=' ', copied='+', wc_rev='-'),
'A/D/G/rho' : Item(status=' ', copied='+', wc_rev='-'),
@@ -2860,8 +2865,9 @@
expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
expected_status.add({
- 'beta' : Item(status='A ', copied='+', wc_rev='-'),
- 'A/B/E/beta' : Item(status='D ', wc_rev='1')
+ 'beta' : Item(status='A ', copied='+', wc_rev='-',
+ moved_from='A/B/E/beta'),
+ 'A/B/E/beta' : Item(status='D ', wc_rev='1', moved_to='beta')
})
svntest.actions.run_and_verify_status(wc_dir, expected_status)
@@ -2882,8 +2888,9 @@
expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
expected_status.add({
- 'A/B/F/beta' : Item(status='A ', copied='+', wc_rev='-'),
- 'A/B/E/beta' : Item(status='D ', wc_rev='1')
+ 'A/B/F/beta' : Item(status='A ', copied='+', wc_rev='-',
+ moved_from='A/B/E/beta'),
+ 'A/B/E/beta' : Item(status='D ', wc_rev='1', moved_to='A/B/F/beta')
})
svntest.actions.run_and_verify_status(wc_dir, expected_status)
@@ -4436,22 +4443,27 @@
sbox.ospath('A/B_tmp'))
expected_status = svntest.actions.get_virginal_state(sbox.wc_dir, 1)
- expected_status.tweak('A/B',
- 'A/B/E',
+ expected_status.tweak('A/B', status='D ', moved_to='A/B_tmp')
+ expected_status.tweak('A/B/E',
'A/B/E/alpha',
'A/B/E/beta',
'A/B/F',
'A/B/lambda',
status='D ')
expected_status.add({
- 'A/B_tmp' : Item(status='A ', copied='+', wc_rev='-'),
+ 'A/B_tmp' : Item(status='A ', copied='+', wc_rev='-',
+ moved_from='A/B'),
# alpha has a revision that isn't reported by status.
'A/B_tmp/E' : Item(status=' ', copied='+', wc_rev='-'),
- 'A/B_tmp/E/alpha' : Item(status='D ', copied='+', wc_rev='-'),
- 'A/B_tmp/E/alpha_moved' : Item(status='A ', copied='+', wc_rev='-'),
+ 'A/B_tmp/E/alpha' : Item(status='D ', copied='+', wc_rev='-',
+ moved_to='A/B_tmp/E/alpha_moved'),
+ 'A/B_tmp/E/alpha_moved' : Item(status='A ', copied='+', wc_rev='-',
+ moved_from='A/B_tmp/E/alpha'),
'A/B_tmp/E/beta' : Item(status=' ', copied='+', wc_rev='-'),
- 'A/B_tmp/F' : Item(status='D ', copied='+', wc_rev='-'),
- 'A/B_tmp/F_moved' : Item(status='A ', copied='+', wc_rev='-'),
+ 'A/B_tmp/F' : Item(status='D ', copied='+', wc_rev='-',
+ moved_to='A/B_tmp/F_moved'),
+ 'A/B_tmp/F_moved' : Item(status='A ', copied='+', wc_rev='-',
+ moved_from='A/B_tmp/F'),
'A/B_tmp/lambda' : Item(status=' ', copied='+', wc_rev='-'),
})
@@ -4460,6 +4472,7 @@
svntest.actions.run_and_verify_svn(None, None, [], 'mv',
sbox.ospath('A/B_tmp'),
sbox.ospath('A/B_moved'))
+ expected_status.tweak('A/B', moved_to='A/B_moved')
expected_status.remove('A/B_tmp',
'A/B_tmp/E',
'A/B_tmp/E/alpha',
@@ -4469,13 +4482,18 @@
'A/B_tmp/F_moved',
'A/B_tmp/lambda')
expected_status.add({
- 'A/B_moved' : Item(status='A ', copied='+', wc_rev='-'),
+ 'A/B_moved' : Item(status='A ', copied='+', wc_rev='-',
+ moved_from='A/B'),
'A/B_moved/E' : Item(status=' ', copied='+', wc_rev='-'),
- 'A/B_moved/E/alpha' : Item(status='D ', copied='+', wc_rev='-'),
- 'A/B_moved/E/alpha_moved' : Item(status='A ', copied='+', wc_rev='-'),
+ 'A/B_moved/E/alpha' : Item(status='D ', copied='+', wc_rev='-',
+ moved_to='A/B_moved/E/alpha_moved'),
+ 'A/B_moved/E/alpha_moved' : Item(status='A ', copied='+', wc_rev='-',
+ moved_from='A/B_moved/E/alpha'),
'A/B_moved/E/beta' : Item(status=' ', copied='+', wc_rev='-'),
- 'A/B_moved/F' : Item(status='D ', copied='+', wc_rev='-'),
- 'A/B_moved/F_moved' : Item(status='A ', copied='+', wc_rev='-'),
+ 'A/B_moved/F' : Item(status='D ', copied='+', wc_rev='-',
+ moved_to='A/B_moved/F_moved'),
+ 'A/B_moved/F_moved' : Item(status='A ', copied='+', wc_rev='-',
+ moved_from='A/B_moved/F'),
'A/B_moved/lambda' : Item(status=' ', copied='+', wc_rev='-'),
})
@@ -4505,6 +4523,8 @@
'A/B/lambda',
'A/B_moved/E/alpha',
'A/B_moved/F')
+ expected_status.tweak('A/B_moved', 'A/B_moved/E/alpha_moved',
+ 'A/B_moved/F_moved', moved_from=None)
svntest.actions.run_and_verify_commit(sbox.wc_dir,
expected_output,
expected_status,
@@ -5148,8 +5168,8 @@
expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
expected_status.add({
- 'iota' : Item(status='D ', wc_rev=1),
- 'IOTA' : Item(status='A ', copied='+', wc_rev='-'),
+ 'iota' : Item(status='D ', wc_rev=1, moved_to='IOTA'),
+ 'IOTA' : Item(status='A ', copied='+', wc_rev='-', moved_from='iota'),
})
svntest.actions.run_and_verify_status(wc_dir, expected_status)
@@ -5211,15 +5231,16 @@
# Create expected status.
expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
expected_status.add({
- 'iota' : Item(status='D ', wc_rev=1),
- 'IoTa' : Item(status='A ', copied='+', wc_rev='-'),
- 'A/B' : Item(status='D ', wc_rev='1'),
+
+ 'iota' : Item(status='D ', wc_rev=1, moved_to='IoTa'),
+ 'IoTa' : Item(status='A ', copied='+', wc_rev='-', moved_from='iota'),
+ 'A/B' : Item(status='D ', wc_rev='1', moved_to='A/b'),
'A/B/lambda' : Item(status='D ', wc_rev='1'),
'A/B/E' : Item(status='D ', wc_rev='1'),
'A/B/E/alpha' : Item(status='D ', wc_rev='1'),
'A/B/E/beta' : Item(status='D ', wc_rev='1'),
'A/B/F' : Item(status='D ', wc_rev='1'),
- 'A/b' : Item(status='A ', copied='+', wc_rev='-'),
+ 'A/b' : Item(status='A ', copied='+', wc_rev='-', moved_from='A/B'),
'A/b/E' : Item(status=' ', copied='+', wc_rev='-'),
'A/b/E/beta' : Item(status=' ', copied='+', wc_rev='-'),
'A/b/E/alpha' : Item(status=' ', copied='+', wc_rev='-'),
diff --git a/subversion/tests/cmdline/getopt_tests.py b/subversion/tests/cmdline/getopt_tests.py
index 6ecb565..09ae242 100755
--- a/subversion/tests/cmdline/getopt_tests.py
+++ b/subversion/tests/cmdline/getopt_tests.py
@@ -172,7 +172,7 @@
exit_code, actual_stdout, actual_stderr = svntest.main.run_svn(1, *varargs)
else:
exit_code, actual_stdout, actual_stderr = svntest.main.run_command(svntest.main.svn_binary,
- 1, 0, *varargs)
+ 1, False, *varargs)
# Delete and perform search and replaces on the lines from the
# actual and expected output that may differ between build
diff --git a/subversion/tests/cmdline/import_tests.py b/subversion/tests/cmdline/import_tests.py
index c13df17..89dba41 100755
--- a/subversion/tests/cmdline/import_tests.py
+++ b/subversion/tests/cmdline/import_tests.py
@@ -354,10 +354,13 @@
# eol styl of test.dsp is CRLF, so diff will use that too. Make sure we
# define CRLF in a platform independent way.
+ # CRLF is a string that will match a CRLF sequence read from a text file.
+ # ### On Windows, we assume CRLF will be read as LF, so it's a poor test.
if os.name == 'nt':
crlf = '\n'
else:
crlf = '\r\n'
+
expected_output = [
"Index: test.dsp\n",
"===================================================================\n",
diff --git a/subversion/tests/cmdline/merge_tests.py b/subversion/tests/cmdline/merge_tests.py
index e29f319..034a04b 100755
--- a/subversion/tests/cmdline/merge_tests.py
+++ b/subversion/tests/cmdline/merge_tests.py
@@ -3626,6 +3626,8 @@
mu_path = sbox.ospath('A/mu')
+ # CRLF is a string that will match a CRLF sequence read from a text file.
+ # ### On Windows, we assume CRLF will be read as LF, so it's a poor test.
if os.name == 'nt':
crlf = '\n'
else:
@@ -3765,6 +3767,8 @@
mu_path = sbox.ospath('A/mu')
+ # CRLF is a string that will match a CRLF sequence read from a text file.
+ # ### On Windows, we assume CRLF will be read as LF, so it's a poor test.
if os.name == 'nt':
crlf = '\n'
else:
@@ -16423,9 +16427,12 @@
None, 1)
#----------------------------------------------------------------------
-# Test for issue #3756 'subtree merge can inherit invalid working mergeinfo'.
+# Test for issue #3756 'subtree merge can inherit invalid working mergeinfo',
+# issue #3668 'inheritance can result in self-referential mergeinfo', and
+# issue #3669 'inheritance can result in mergeinfo describing nonexistent
+# sources'.
@XFail()
-@Issue(3756)
+@Issue(3756,3668,3669)
def subtree_merges_inherit_invalid_working_mergeinfo(sbox):
"don't inherit bogus working mergeinfo"
@@ -16474,7 +16481,7 @@
# resulting mergeinfo on 'A_COPY/C/nu' should be only '/A/C/nu:9'.
#
# Currently this test is marked as XFail because the resulting mergeinfo is
- # '/A/C/nu:3,9' and thus includes a non-existent path-rev.
+ # '/A/C/nu:3,7,9' and thus includes a non-existent path-rev.
svntest.actions.run_and_verify_svn(
"Merge failed unexpectedly",
svntest.verify.AnyOutput, [], 'merge', sbox.repo_url + '/A',
diff --git a/subversion/tests/cmdline/patch_tests.py b/subversion/tests/cmdline/patch_tests.py
index 536fc28..d7d0513 100755
--- a/subversion/tests/cmdline/patch_tests.py
+++ b/subversion/tests/cmdline/patch_tests.py
@@ -1584,12 +1584,14 @@
patch_file_path = make_patch_path(sbox)
mu_path = sbox.ospath('A/mu')
+ # CRLF is a string that will match a CRLF sequence read from a text file.
+ # ### On Windows, we assume CRLF will be read as LF, so it's a poor test.
if os.name == 'nt':
crlf = '\n'
else:
crlf = '\r\n'
- eols = [crlf, '\015', '\n', '\012']
+ eols = [crlf, '\015', '\n', '\012']
for target_eol in eols:
for patch_eol in eols:
mu_contents = [
@@ -1687,7 +1689,8 @@
patch_file_path = make_patch_path(sbox)
mu_path = sbox.ospath('A/mu')
-
+ # CRLF is a string that will match a CRLF sequence read from a text file.
+ # ### On Windows, we assume CRLF will be read as LF, so it's a poor test.
if os.name == 'nt':
crlf = '\n'
else:
@@ -1801,7 +1804,8 @@
patch_file_path = make_patch_path(sbox)
mu_path = sbox.ospath('A/mu')
-
+ # CRLF is a string that will match a CRLF sequence read from a text file.
+ # ### On Windows, we assume CRLF will be read as LF, so it's a poor test.
if os.name == 'nt':
crlf = '\n'
else:
@@ -3597,9 +3601,11 @@
expected_disk.remove('A/mu')
expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
- expected_status.add({'A/mu2' : Item(status='A ', copied='+', wc_rev='-')})
+ expected_status.add({
+ 'A/mu2' : Item(status='A ', copied='+', wc_rev='-', moved_from='A/mu'),
+ })
- expected_status.tweak('A/mu', status='D ', wc_rev=2)
+ expected_status.tweak('A/mu', status='D ', wc_rev=2, moved_to='A/mu2')
expected_skip = wc.State('', { })
diff --git a/subversion/tests/cmdline/revert_tests.py b/subversion/tests/cmdline/revert_tests.py
index 96b2da5..dc7836a 100755
--- a/subversion/tests/cmdline/revert_tests.py
+++ b/subversion/tests/cmdline/revert_tests.py
@@ -398,9 +398,10 @@
# svn st
expected_status = actions.get_virginal_state(wc_dir, 1)
expected_status.add({
- 'iota_moved' : Item(status='A ', copied='+', wc_rev='-'),
+ 'iota_moved' : Item(status='A ', copied='+', wc_rev='-',
+ moved_from='iota'),
})
- expected_status.tweak('iota', status='D ')
+ expected_status.tweak('iota', status='D ', moved_to='iota_moved')
actions.run_and_verify_unquiet_status(wc_dir, expected_status)
@@ -411,7 +412,8 @@
iota)
# svn st
- expected_status.tweak('iota', status=' ')
+ expected_status.tweak('iota', status=' ', moved_to=None)
+ expected_status.tweak('iota_moved', moved_from=None)
actions.run_and_verify_unquiet_status(wc_dir, expected_status)
diff --git a/subversion/tests/cmdline/svnadmin_tests.py b/subversion/tests/cmdline/svnadmin_tests.py
index ba806eb..9436649 100755
--- a/subversion/tests/cmdline/svnadmin_tests.py
+++ b/subversion/tests/cmdline/svnadmin_tests.py
@@ -201,7 +201,7 @@
dump = [ dump ]
exit_code, output, errput = svntest.main.run_command_stdin(
- svntest.main.svnadmin_binary, expected_stderr, 0, 1, dump,
+ svntest.main.svnadmin_binary, expected_stderr, 0, True, dump,
'load', '--quiet', sbox.repo_dir, *varargs)
if expected_stdout:
diff --git a/subversion/tests/cmdline/svndumpfilter_tests.py b/subversion/tests/cmdline/svndumpfilter_tests.py
index 459b7b6..3604424 100755
--- a/subversion/tests/cmdline/svndumpfilter_tests.py
+++ b/subversion/tests/cmdline/svndumpfilter_tests.py
@@ -71,7 +71,7 @@
expected_errput = svntest.verify.AnyOutput
## TODO: Should we handle exit_code?
exit_code, output, errput = svntest.main.run_command_stdin(
- svntest.main.svndumpfilter_binary, expected_errput, bufsize, 1,
+ svntest.main.svndumpfilter_binary, expected_errput, bufsize, True,
dump, *varargs)
# Since we call svntest.main.run_command_stdin() in binary mode,
diff --git a/subversion/tests/cmdline/svnlook_tests.py b/subversion/tests/cmdline/svnlook_tests.py
index 607afee..8d526a8 100755
--- a/subversion/tests/cmdline/svnlook_tests.py
+++ b/subversion/tests/cmdline/svnlook_tests.py
@@ -48,10 +48,12 @@
# Convenience functions to make writing more tests easier
def run_svnlook(*varargs):
- """Run svnlook with VARARGS, returns stdout as list of lines.
- Raises Failure if any stderr messages."""
+ """Run svnlook with VARARGS, returns exit code as int; stdout, stderr as
+ list of lines (including line terminators).
+ Raises Failure if any stderr messages.
+ """
exit_code, output, dummy_errput = svntest.main.run_command(
- svntest.main.svnlook_binary, 0, 0, *varargs)
+ svntest.main.svnlook_binary, 0, False, *varargs)
return output
@@ -98,7 +100,7 @@
# give the repo a new UUID
uuid = "01234567-89ab-cdef-89ab-cdef01234567"
- svntest.main.run_command_stdin(svntest.main.svnadmin_binary, None, 0, 1,
+ svntest.main.run_command_stdin(svntest.main.svnadmin_binary, None, 0, True,
["SVN-fs-dump-format-version: 2\n",
"\n",
"UUID: ", uuid, "\n",
@@ -504,6 +506,8 @@
repo_dir = sbox.repo_dir
wc_dir = sbox.wc_dir
+ # CRLF is a string that will match a CRLF sequence read from a text file.
+ # ### On Windows, we assume CRLF will be read as LF, so it's a poor test.
if os.name == 'nt':
crlf = '\n'
else:
diff --git a/subversion/tests/cmdline/svntest/actions.py b/subversion/tests/cmdline/svntest/actions.py
index 15f82f0..1bc5abb 100644
--- a/subversion/tests/cmdline/svntest/actions.py
+++ b/subversion/tests/cmdline/svntest/actions.py
@@ -333,11 +333,11 @@
expected_stderr = []
if bypass_prop_validation:
exit_code, output, errput = main.run_command_stdin(
- main.svnadmin_binary, expected_stderr, 0, 1, dump_file_content,
+ main.svnadmin_binary, expected_stderr, 0, True, dump_file_content,
'load', '--force-uuid', '--quiet', '--bypass-prop-validation', repo_dir)
else:
exit_code, output, errput = main.run_command_stdin(
- main.svnadmin_binary, expected_stderr, 0, 1, dump_file_content,
+ main.svnadmin_binary, expected_stderr, 0, True, dump_file_content,
'load', '--force-uuid', '--quiet', repo_dir)
verify.verify_outputs("Unexpected stderr output", None, errput,
@@ -1475,7 +1475,7 @@
exit_code, output, errput = main.run_svn(None, 'status', '-v', '-u', '-q',
wc_dir_name)
- actual = tree.build_tree_from_status(output)
+ actual = tree.build_tree_from_status(output, wc_dir_name=wc_dir_name)
# Verify actual output against expected output.
try:
@@ -1514,7 +1514,7 @@
exit_code, output, errput = main.run_svn(None, 'status', '-v',
'-u', wc_dir_name)
- actual = tree.build_tree_from_status(output)
+ actual = tree.build_tree_from_status(output, wc_dir_name=wc_dir_name)
# Verify actual output against expected output.
try:
@@ -2024,7 +2024,7 @@
else:
revprop_options = []
# Not using run_svn because binary_mode must be set
- exit_code, out, err = main.run_command(main.svn_binary, None, 1, 'pg',
+ exit_code, out, err = main.run_command(main.svn_binary, None, True, 'pg',
'--strict', name, path,
'--config-dir',
main.default_config_dir,
diff --git a/subversion/tests/cmdline/svntest/main.py b/subversion/tests/cmdline/svntest/main.py
index 7dc9c2d..8a4e7c9 100644
--- a/subversion/tests/cmdline/svntest/main.py
+++ b/subversion/tests/cmdline/svntest/main.py
@@ -343,7 +343,7 @@
return included
# Run any binary, logging the command line and return code
-def run_command(command, error_expected, binary_mode=0, *varargs):
+def run_command(command, error_expected, binary_mode=False, *varargs):
"""Run COMMAND with VARARGS. Return exit code as int; stdout, stderr
as lists of lines (including line terminators). See run_command_stdin()
for details. If ERROR_EXPECTED is None, any stderr output will be
@@ -451,17 +451,20 @@
logger.info("CMD: %s exited with %d" % (command_string, exit_code))
return stdout_lines, stderr_lines, exit_code
-def spawn_process(command, bufsize=-1, binary_mode=0, stdin_lines=None,
+def spawn_process(command, bufsize=-1, binary_mode=False, stdin_lines=None,
*varargs):
"""Run any binary, supplying input text, logging the command line.
+
BUFSIZE dictates the pipe buffer size used in communication with the
- subprocess: 0 means unbuffered, 1 means line buffered, any other
- positive value means use a buffer of (approximately) that size.
- A negative bufsize means to use the system default, which usually
- means fully buffered. The default value for bufsize is 0 (unbuffered).
+ subprocess: quoting from subprocess.Popen(), "0 means unbuffered,
+ 1 means line buffered, any other positive value means use a buffer of
+ (approximately) that size. A negative bufsize means to use the system
+ default, which usually means fully buffered."
+
Normalize Windows line endings of stdout and stderr if not BINARY_MODE.
Return exit code as int; stdout, stderr as lists of lines (including
- line terminators)."""
+ line terminators).
+ """
if stdin_lines and not isinstance(stdin_lines, list):
raise TypeError("stdin_lines should have list type")
@@ -484,7 +487,7 @@
return exit_code, stdout_lines, stderr_lines
-def run_command_stdin(command, error_expected, bufsize=-1, binary_mode=0,
+def run_command_stdin(command, error_expected, bufsize=-1, binary_mode=False,
stdin_lines=None, *varargs):
"""Run COMMAND with VARARGS; input STDIN_LINES (a list of strings
which should include newline characters) to program via stdin - this
@@ -659,45 +662,45 @@
non-zero exit code will raise an exception. If
you're just checking that something does/doesn't come out of
stdout/stderr, you might want to use actions.run_and_verify_svn()."""
- return run_command(svn_binary, error_expected, 0,
+ return run_command(svn_binary, error_expected, False,
*(_with_auth(_with_config_dir(varargs))))
# For running svnadmin. Ignores the output.
def run_svnadmin(*varargs):
"""Run svnadmin with VARARGS, returns exit code as int; stdout, stderr as
list of lines (including line terminators)."""
- return run_command(svnadmin_binary, 1, 0, *varargs)
+ return run_command(svnadmin_binary, 1, False, *varargs)
# For running svnlook. Ignores the output.
def run_svnlook(*varargs):
"""Run svnlook with VARARGS, returns exit code as int; stdout, stderr as
list of lines (including line terminators)."""
- return run_command(svnlook_binary, 1, 0, *varargs)
+ return run_command(svnlook_binary, 1, False, *varargs)
def run_svnrdump(stdin_input, *varargs):
"""Run svnrdump with VARARGS, returns exit code as int; stdout, stderr as
list of lines (including line terminators). Use binary mode for output."""
if stdin_input:
- return run_command_stdin(svnrdump_binary, 1, 1, 1, stdin_input,
+ return run_command_stdin(svnrdump_binary, 1, 1, True, stdin_input,
*(_with_auth(_with_config_dir(varargs))))
else:
- return run_command(svnrdump_binary, 1, 1,
+ return run_command(svnrdump_binary, 1, True,
*(_with_auth(_with_config_dir(varargs))))
def run_svnsync(*varargs):
"""Run svnsync with VARARGS, returns exit code as int; stdout, stderr as
list of lines (including line terminators)."""
- return run_command(svnsync_binary, 1, 0, *(_with_config_dir(varargs)))
+ return run_command(svnsync_binary, 1, False, *(_with_config_dir(varargs)))
def run_svnversion(*varargs):
"""Run svnversion with VARARGS, returns exit code as int; stdout, stderr
as list of lines (including line terminators)."""
- return run_command(svnversion_binary, 1, 0, *varargs)
+ return run_command(svnversion_binary, 1, False, *varargs)
def run_svnmucc(*varargs):
"""Run svnmucc with VARARGS, returns exit code as int; stdout, stderr as
list of lines (including line terminators). Use binary mode for output."""
- return run_command(svnmucc_binary, 1, 1,
+ return run_command(svnmucc_binary, 1, True,
*(_with_auth(_with_config_dir(varargs))))
def run_entriesdump(path):
@@ -705,7 +708,7 @@
# use spawn_process rather than run_command to avoid copying all the data
# to stdout in verbose mode.
exit_code, stdout_lines, stderr_lines = spawn_process(entriesdump_binary,
- 0, 0, None, path)
+ 0, False, None, path)
if exit_code or stderr_lines:
### report on this? or continue to just skip it?
return None
@@ -721,7 +724,7 @@
# use spawn_process rather than run_command to avoid copying all the data
# to stdout in verbose mode.
exit_code, stdout_lines, stderr_lines = spawn_process(entriesdump_binary,
- 0, 0, None, '--subdirs', path)
+ 0, False, None, '--subdirs', path)
return map(lambda line: line.strip(), filter_dbg(stdout_lines))
def run_atomic_ra_revprop_change(url, revision, propname, skel, want_error):
@@ -730,7 +733,7 @@
# use spawn_process rather than run_command to avoid copying all the data
# to stdout in verbose mode.
#exit_code, stdout_lines, stderr_lines = spawn_process(entriesdump_binary,
- # 0, 0, None, path)
+ # 0, False, None, path)
# This passes HTTP_LIBRARY in addition to our params.
return run_command(atomic_ra_revprop_change_binary, True, False,
@@ -752,7 +755,7 @@
def youngest(repos_path):
"run 'svnlook youngest' on REPOS_PATH, returns revision as int"
- exit_code, stdout_lines, stderr_lines = run_command(svnlook_binary, None, 0,
+ exit_code, stdout_lines, stderr_lines = run_command(svnlook_binary, None, False,
'youngest', repos_path)
if exit_code or stderr_lines:
raise Failure("Unexpected failure of 'svnlook youngest':\n%s" % stderr_lines)
@@ -832,7 +835,7 @@
opts += ("--compatible-version=1.%d" % (minor_version),)
if options.fs_type is not None:
opts += ("--fs-type=" + options.fs_type,)
- exit_code, stdout, stderr = run_command(svnadmin_binary, 1, 0, "create",
+ exit_code, stdout, stderr = run_command(svnadmin_binary, 1, False, "create",
path, *opts)
# Skip tests if we can't create the repository.
@@ -1296,7 +1299,7 @@
if options.http_proxy:
args.append('--http-proxy=' + options.http_proxy)
- result, stdout_lines, stderr_lines = spawn_process(command, 0, 0, None,
+ result, stdout_lines, stderr_lines = spawn_process(command, 0, False, None,
*args)
self.results.append((index, result, stdout_lines, stderr_lines))
diff --git a/subversion/tests/cmdline/svntest/tree.py b/subversion/tests/cmdline/svntest/tree.py
index 1118930..b621b4c 100644
--- a/subversion/tests/cmdline/svntest/tree.py
+++ b/subversion/tests/cmdline/svntest/tree.py
@@ -834,10 +834,11 @@
# IFF columns non-empty.
#
-def build_tree_from_status(lines):
+def build_tree_from_status(lines, wc_dir_name=None):
"Return a tree derived by parsing the output LINES from 'st -vuq'."
- return svntest.wc.State.from_status(lines).old_tree()
+ return svntest.wc.State.from_status(lines,
+ wc_dir_name=wc_dir_name).old_tree()
# Parse merge "skipped" output
diff --git a/subversion/tests/cmdline/svntest/wc.py b/subversion/tests/cmdline/svntest/wc.py
index e958ee0..f261dec 100644
--- a/subversion/tests/cmdline/svntest/wc.py
+++ b/subversion/tests/cmdline/svntest/wc.py
@@ -94,6 +94,11 @@
'((?P<wc_rev>\d+|-|\?) +(\d|-|\?)+ +(\S+) +)?'
'(?P<path>.+)$')
+_re_parse_status_ex = re.compile('^ ('
+ '( \> moved (from (?P<moved_from>.+)|to (?P<moved_to>.*)))'
+ '|(\> (?P<tc>.+))'
+ ')$')
+
_re_parse_skipped = re.compile("^(Skipped[^']*) '(.+)'( --.*)?\n")
_re_parse_summarize = re.compile("^([MAD ][M ]) (.+)\n")
@@ -254,8 +259,11 @@
base = to_relpath(os.path.normpath(self.wc_dir))
+ # TODO: We should probably normalize the paths in moved_from and moved_to.
+
desc = dict([(repos_join(base, path), item)
for path, item in self.desc.items()])
+
return State('', desc)
def compare(self, other):
@@ -362,6 +370,8 @@
item.writelocked = 'K'
elif item.writelocked == 'O':
item.writelocked = None
+ item.moved_from = None
+ item.moved_to = None
def old_tree(self):
"Return an old-style tree (for compatibility purposes)."
@@ -397,7 +407,7 @@
return not self.__eq__(other)
@classmethod
- def from_status(cls, lines):
+ def from_status(cls, lines, wc_dir_name=None):
"""Create a State object from 'svn status' output."""
def not_space(value):
@@ -406,6 +416,7 @@
return None
desc = { }
+ last = None
for line in lines:
if line.startswith('DBG:'):
continue
@@ -418,6 +429,25 @@
match = _re_parse_status.search(line)
if not match or match.group(10) == '-':
+
+ ex_match = _re_parse_status_ex.search(line)
+
+ if ex_match:
+ if ex_match.group('moved_from'):
+ path = ex_match.group('moved_from')
+ if wc_dir_name and path.startswith(wc_dir_name + os.path.sep):
+ path = path[len(wc_dir_name) + 1:]
+
+ last.tweak(moved_from = to_relpath(path))
+ elif ex_match.group('moved_to'):
+ path = ex_match.group('moved_to')
+ if wc_dir_name and path.startswith(wc_dir_name + os.path.sep):
+ path = path[len(wc_dir_name) + 1:]
+
+ last.tweak(moved_to = to_relpath(path))
+
+ # Parse TC description?
+
# ignore non-matching lines, or items that only exist on repos
continue
@@ -430,6 +460,7 @@
wc_rev=not_space(match.group('wc_rev')),
)
desc[to_relpath(match.group('path'))] = item
+ last = item
return cls('', desc)
@@ -647,7 +678,7 @@
status=None, verb=None, wc_rev=None,
entry_rev=None, entry_status=None,
locked=None, copied=None, switched=None, writelocked=None,
- treeconflict=None):
+ treeconflict=None, moved_from=None, moved_to=None):
# provide an empty prop dict if it wasn't provided
if props is None:
props = { }
@@ -680,6 +711,9 @@
self.writelocked = writelocked
# Value 'C' or ' ', or None as an expected status meaning 'do not check'.
self.treeconflict = treeconflict
+ # Relative paths to the move locations
+ self.moved_from = moved_from
+ self.moved_to = moved_to
def copy(self):
"Make a deep copy of self."
@@ -731,6 +765,10 @@
atts['writelocked'] = self.writelocked
if self.treeconflict is not None:
atts['treeconflict'] = self.treeconflict
+ if self.moved_from is not None:
+ atts['moved_from'] = self.moved_from
+ if self.moved_to is not None:
+ atts['moved_to'] = self.moved_to
return (os.path.normpath(path), self.contents, self.props, atts)
diff --git a/subversion/tests/cmdline/update_tests.py b/subversion/tests/cmdline/update_tests.py
index c153b97..095e1b1 100755
--- a/subversion/tests/cmdline/update_tests.py
+++ b/subversion/tests/cmdline/update_tests.py
@@ -1731,6 +1731,8 @@
mu_path = sbox.ospath('A/mu')
+ # CRLF is a string that will match a CRLF sequence read from a text file.
+ # ### On Windows, we assume CRLF will be read as LF, so it's a poor test.
if os.name == 'nt':
crlf = '\n'
else:
@@ -1862,6 +1864,8 @@
mu_path = sbox.ospath('A/mu')
+ # CRLF is a string that will match a CRLF sequence read from a text file.
+ # ### On Windows, we assume CRLF will be read as LF, so it's a poor test.
if os.name == 'nt':
crlf = '\n'
else:
@@ -5574,11 +5578,12 @@
})
expected_status = svntest.actions.get_virginal_state(wc_dir, 2)
expected_status.tweak('A/B/E', 'A/B/E/alpha', 'A/B/E/beta', status='D ')
- expected_status.tweak('A/B/E', treeconflict='C')
+ expected_status.tweak('A/B/E', treeconflict='C', moved_to='A/B/E2')
expected_status.add({
'A/B/E/foo' : Item(status='D ', wc_rev='2'),
'A/B/E/foo/bar' : Item(status='D ', wc_rev='2'),
- 'A/B/E2' : Item(status='A ', copied='+', wc_rev='-'),
+ 'A/B/E2' : Item(status='A ', copied='+', wc_rev='-',
+ moved_from='A/B/E'),
'A/B/E2/beta' : Item(status=' ', copied='+', wc_rev='-'),
'A/B/E2/alpha' : Item(status=' ', copied='+', wc_rev='-'),
})
@@ -5629,11 +5634,13 @@
})
expected_status = svntest.actions.get_virginal_state(wc_dir, 2)
expected_status.remove('A/B/E/alpha')
- expected_status.tweak('A/B/E', status='D ', treeconflict='C')
+ expected_status.tweak('A/B/E', status='D ', treeconflict='C',
+ moved_to='A/B/E2')
expected_status.tweak('A/B/E/beta', status='D ')
expected_status.add({
'A/B/F/alpha' : Item(status=' ', wc_rev='2'),
- 'A/B/E2' : Item(status='A ', copied='+', wc_rev='-'),
+ 'A/B/E2' : Item(status='A ', copied='+', wc_rev='-',
+ moved_from='A/B/E'),
'A/B/E2/alpha' : Item(status=' ', copied='+', wc_rev='-'),
'A/B/E2/beta' : Item(status=' ', copied='+', wc_rev='-'),
})
@@ -5810,6 +5817,87 @@
'--parents',
sbox.ospath('A/B'))
+@Issue(4288)
+def update_edit_delete_obstruction(sbox):
+ "obstructions shouldn't cause update failures"
+
+ sbox.build()
+ wc_dir = sbox.wc_dir
+
+ # r2
+ sbox.simple_rm('A/B','iota')
+ svntest.main.file_append(sbox.ospath('A/mu'), "File change")
+ sbox.simple_propset('key', 'value', 'A/D', 'A/D/G')
+ sbox.simple_commit()
+
+ # r3
+ #sbox.simple_mkdir('iota')
+ #sbox.simple_copy('A/D/gamma', 'A/B')
+ #sbox.simple_commit()
+
+ sbox.simple_update('', 1)
+
+ # Create obstructions
+ svntest.main.safe_rmtree(sbox.ospath('A/B'))
+ svntest.main.file_append(sbox.ospath('A/B'), "Obstruction")
+
+ svntest.main.safe_rmtree(sbox.ospath('A/D'))
+ svntest.main.file_append(sbox.ospath('A/D'), "Obstruction")
+
+ os.remove(sbox.ospath('iota'))
+ os.mkdir(sbox.ospath('iota'))
+
+ os.remove(sbox.ospath('A/mu'))
+ os.mkdir(sbox.ospath('A/mu'))
+
+ expected_status = svntest.wc.State(wc_dir, {
+ '' : Item(status=' ', wc_rev='2'),
+ 'A' : Item(status=' ', wc_rev='2'),
+ 'A/mu' : Item(status='~ ', treeconflict='C', wc_rev='2'),
+ 'A/D' : Item(status='~ ', treeconflict='C', wc_rev='2'),
+ 'A/D/G' : Item(status='! ', wc_rev='2'),
+ 'A/D/G/pi' : Item(status='! ', wc_rev='2'),
+ 'A/D/G/tau' : Item(status='! ', wc_rev='2'),
+ 'A/D/G/rho' : Item(status='! ', wc_rev='2'),
+ 'A/D/H' : Item(status='! ', wc_rev='2'),
+ 'A/D/H/omega' : Item(status='! ', wc_rev='2'),
+ 'A/D/H/chi' : Item(status='! ', wc_rev='2'),
+ 'A/D/H/psi' : Item(status='! ', wc_rev='2'),
+ 'A/D/gamma' : Item(status='! ', wc_rev='2'),
+ 'A/C' : Item(status=' ', wc_rev='2'),
+ 'A/B' : Item(status='~ ', treeconflict='C', wc_rev='-'),
+ 'A/B/F' : Item(status='! ', wc_rev='-'),
+ 'A/B/E' : Item(status='! ', wc_rev='-'),
+ 'A/B/E/beta' : Item(status='! ', wc_rev='-'),
+ 'A/B/E/alpha' : Item(status='! ', wc_rev='-'),
+ 'A/B/lambda' : Item(status='! ', wc_rev='-'),
+ 'iota' : Item(status='~ ', treeconflict='C', wc_rev='-'),
+ })
+ expected_disk = svntest.wc.State('', {
+ 'A/D' : Item(contents="Obstruction", props={'key':'value'}),
+ 'A/C' : Item(),
+ 'A/B' : Item(contents="Obstruction"),
+ 'A/mu' : Item(),
+ 'iota' : Item(),
+ })
+
+ expected_output = svntest.wc.State(wc_dir, {
+ 'iota' : Item(status=' ', treeconflict='C'),
+ 'A/mu' : Item(status=' ', treeconflict='C'),
+ 'A/D' : Item(status=' ', treeconflict='C'),
+ 'A/D/G' : Item(status=' ', treeconflict='U'),
+ 'A/B' : Item(status=' ', treeconflict='C'),
+ })
+
+ # And now update to delete B and iota
+ svntest.actions.run_and_verify_update(wc_dir,
+ expected_output,
+ expected_disk,
+ expected_status,
+ None, None, None,
+ None, None, 1,
+ '-r', '2', wc_dir)
+
#######################################################################
# Run the tests
@@ -5885,6 +5973,7 @@
update_move_text_mod,
update_nested_move_text_mod,
update_with_parents_and_exclude,
+ update_edit_delete_obstruction,
]
if __name__ == '__main__':
diff --git a/subversion/tests/cmdline/wc_tests.py b/subversion/tests/cmdline/wc_tests.py
index a9bbfdb..8af5d4b 100755
--- a/subversion/tests/cmdline/wc_tests.py
+++ b/subversion/tests/cmdline/wc_tests.py
@@ -191,6 +191,15 @@
"st", sbox.wc_dir)
+@Issue(4267)
+def cleanup_below_wc_root(sbox):
+ """cleanup from directory below WC root"""
+
+ sbox.build(read_only = True)
+ svntest.actions.lock_admin_dir(sbox.ospath(""), True)
+ svntest.actions.run_and_verify_svn("Cleanup below wc root", None, [],
+ "cleanup", sbox.ospath("A"))
+
########################################################################
# Run the tests
@@ -208,6 +217,7 @@
status_without_wc_db,
status_without_wc_db_and_entries,
status_with_missing_wc_db_and_maybe_valid_entries,
+ cleanup_below_wc_root,
]
if __name__ == '__main__':
diff --git a/subversion/tests/libsvn_subr/mergeinfo-test.c b/subversion/tests/libsvn_subr/mergeinfo-test.c
index 2ef2701..397b667 100644
--- a/subversion/tests/libsvn_subr/mergeinfo-test.c
+++ b/subversion/tests/libsvn_subr/mergeinfo-test.c
@@ -1117,7 +1117,7 @@
SVN_ERR(svn_rangelist_to_string(&output, result, pool));
- if (svn_string_compare(expected, output) != TRUE)
+ if (!svn_string_compare(expected, output))
return fail(pool, "Rangelist string not what we expected");
return SVN_NO_ERROR;
@@ -1134,7 +1134,7 @@
SVN_ERR(svn_mergeinfo_to_string(&output, info1, pool));
- if (svn_string_compare(expected, output) != TRUE)
+ if (!svn_string_compare(expected, output))
return fail(pool, "Mergeinfo string not what we expected");
/* Manually construct some mergeinfo with relative path
@@ -1150,7 +1150,7 @@
apr_hash_get(info1, "/trunk", APR_HASH_KEY_STRING));
SVN_ERR(svn_mergeinfo_to_string(&output, info2, pool));
- if (svn_string_compare(expected, output) != TRUE)
+ if (!svn_string_compare(expected, output))
return fail(pool, "Mergeinfo string not what we expected");
return SVN_NO_ERROR;
diff --git a/subversion/tests/libsvn_subr/stream-test.c b/subversion/tests/libsvn_subr/stream-test.c
index 63a5d76..c8dba13 100644
--- a/subversion/tests/libsvn_subr/stream-test.c
+++ b/subversion/tests/libsvn_subr/stream-test.c
@@ -490,7 +490,7 @@
/* File should be writable */
SVN_ERR(svn_io_stat(&finfo, path, wanted, pool));
SVN_ERR(svn_io__is_finfo_read_only(&read_only, &finfo, pool));
- SVN_TEST_ASSERT(read_only == FALSE);
+ SVN_TEST_ASSERT(!read_only);
/* Set read only */
SVN_ERR(svn_io_set_file_read_only(path, FALSE, pool));
@@ -506,7 +506,7 @@
/* File should be writable */
SVN_ERR(svn_io_stat(&finfo, path, wanted, pool));
SVN_ERR(svn_io__is_finfo_read_only(&read_only, &finfo, pool));
- SVN_TEST_ASSERT(read_only == FALSE);
+ SVN_TEST_ASSERT(!read_only);
return SVN_NO_ERROR;
}
diff --git a/subversion/tests/libsvn_subr/string-test.c b/subversion/tests/libsvn_subr/string-test.c
index 8359313..773d30e 100644
--- a/subversion/tests/libsvn_subr/string-test.c
+++ b/subversion/tests/libsvn_subr/string-test.c
@@ -479,7 +479,7 @@
svn_stringbuf_strip_whitespace(a);
- if (svn_stringbuf_compare(a, b) == TRUE)
+ if (svn_stringbuf_compare(a, b))
return SVN_NO_ERROR;
else
return fail(pool, "test failed");
diff --git a/subversion/tests/libsvn_subr/subst_translate-test.c b/subversion/tests/libsvn_subr/subst_translate-test.c
index 0ca444b..fdf713f 100644
--- a/subversion/tests/libsvn_subr/subst_translate-test.c
+++ b/subversion/tests/libsvn_subr/subst_translate-test.c
@@ -123,8 +123,8 @@
source_string, NULL, FALSE,
pool, pool));
SVN_TEST_STRING_ASSERT(new_value->data, "\xc3\x86");
- SVN_TEST_ASSERT(translated_to_utf8 == TRUE);
- SVN_TEST_ASSERT(translated_line_endings == FALSE);
+ SVN_TEST_ASSERT(translated_to_utf8);
+ SVN_TEST_ASSERT(!translated_line_endings);
}
return SVN_NO_ERROR;
diff --git a/subversion/tests/libsvn_wc/db-test.c b/subversion/tests/libsvn_wc/db-test.c
index 4e7c9b8..79a5ed5 100644
--- a/subversion/tests/libsvn_wc/db-test.c
+++ b/subversion/tests/libsvn_wc/db-test.c
@@ -421,7 +421,7 @@
SVN_TEST_ASSERT(checksum == NULL);
SVN_TEST_ASSERT(target == NULL);
SVN_TEST_ASSERT(lock == NULL);
- SVN_TEST_ASSERT(had_props == FALSE);
+ SVN_TEST_ASSERT(!had_props);
SVN_TEST_ASSERT(apr_hash_count(props) == 0);
/* SVN_TEST_ASSERT(update_root == ???); */
@@ -862,12 +862,12 @@
SVN_TEST_STRING_ASSERT(original_root_url, ROOT_TWO);
SVN_TEST_STRING_ASSERT(original_uuid, UUID_TWO);
SVN_TEST_ASSERT(original_revnum == 2);
- SVN_TEST_ASSERT(had_props == FALSE);
- SVN_TEST_ASSERT(props_mod == FALSE);
- SVN_TEST_ASSERT(have_base == TRUE);
+ SVN_TEST_ASSERT(!had_props);
+ SVN_TEST_ASSERT(!props_mod);
+ SVN_TEST_ASSERT(have_base);
/* SVN_TEST_ASSERT(have_more_work...); */
- SVN_TEST_ASSERT(have_work == TRUE);
- SVN_TEST_ASSERT(conflicted == FALSE);
+ SVN_TEST_ASSERT(have_work);
+ SVN_TEST_ASSERT(!conflicted);
SVN_TEST_ASSERT(lock == NULL);
/* SVN_TEST_ASSERT(last_mod_time...); */
/* SVN_TEST_ASSERT(op_root...); */
diff --git a/subversion/tests/libsvn_wc/op-depth-test.c b/subversion/tests/libsvn_wc/op-depth-test.c
index 067deaf..1427e18 100644
--- a/subversion/tests/libsvn_wc/op-depth-test.c
+++ b/subversion/tests/libsvn_wc/op-depth-test.c
@@ -45,6 +45,7 @@
#include "../../libsvn_wc/wc.h"
#include "../../libsvn_wc/wc_db.h"
#include "../../libsvn_wc/workqueue.h"
+#include "../../libsvn_wc/conflicts.h"
#define SVN_WC__I_AM_WC_DB
#include "../../libsvn_wc/wc_db_private.h"
@@ -5164,6 +5165,10 @@
sbox_file_write(&b, "A/B/C/f", "r1 content\nr2 content\n");
SVN_ERR(sbox_wc_commit(&b, ""));
+ /* r3: Create 'X' */
+ SVN_ERR(sbox_wc_mkdir(&b, "X"));
+ SVN_ERR(sbox_wc_commit(&b, ""));
+
SVN_ERR(sbox_wc_update(&b, "", 1));
SVN_ERR(sbox_wc_move(&b, "A", "A2"));
@@ -5222,6 +5227,31 @@
SVN_ERR(check_db_rows(&b, "", nodes));
}
+ /* Update A to r3 brings no changes but updates the revisions. */
+ SVN_ERR(sbox_wc_update(&b, "A", 3));
+ {
+ nodes_row_t nodes[] = {
+ {0, "", "normal", 2, ""},
+ {0, "A", "normal", 3, "A"},
+ {0, "A/B", "normal", 3, "A/B"},
+ {0, "A/B/C", "normal", 3, "A/B/C"},
+ {0, "A/B/C/f", "normal", 3, "A/B/C/f"},
+ {1, "A", "base-deleted", NO_COPY_FROM, "A2"},
+ {1, "A/B", "base-deleted", NO_COPY_FROM},
+ {1, "A/B/C", "base-deleted", NO_COPY_FROM},
+ {1, "A/B/C/f", "base-deleted", NO_COPY_FROM},
+ {1, "A2", "normal", 3, "A", MOVED_HERE},
+ {1, "A2/B", "normal", 3, "A/B", MOVED_HERE},
+ {1, "A2/B/C", "normal", 3, "A/B/C", MOVED_HERE},
+ {1, "A2/B/C/f", "normal", 3, "A/B/C/f", MOVED_HERE},
+ {3, "A2/B/C", "base-deleted", NO_COPY_FROM, "A2/B/C2"},
+ {3, "A2/B/C/f", "base-deleted", NO_COPY_FROM},
+ {3, "A2/B/C2", "normal", 3, "A/B/C", MOVED_HERE},
+ {3, "A2/B/C2/f", "normal", 3, "A/B/C/f", MOVED_HERE},
+ {0}
+ };
+ SVN_ERR(check_db_rows(&b, "", nodes));
+ }
return SVN_NO_ERROR;
}
@@ -5390,6 +5420,204 @@
expected_from, moved_from);
}
+ return SVN_NO_ERROR;
+}
+
+static svn_error_t *
+nested_move_update2(const svn_test_opts_t *opts, apr_pool_t *pool)
+{
+ svn_test__sandbox_t b;
+
+ SVN_ERR(svn_test__sandbox_create(&b, "nested_move_update2", opts, pool));
+
+ SVN_ERR(sbox_wc_mkdir(&b, "A"));
+ SVN_ERR(sbox_wc_mkdir(&b, "A/B"));
+ SVN_ERR(sbox_wc_mkdir(&b, "P"));
+ SVN_ERR(sbox_wc_mkdir(&b, "P/Q"));
+ SVN_ERR(sbox_wc_commit(&b, ""));
+ SVN_ERR(sbox_wc_mkdir(&b, "X"));
+ SVN_ERR(sbox_wc_commit(&b, ""));
+ SVN_ERR(sbox_wc_update(&b, "", 1));
+ SVN_ERR(sbox_wc_move(&b, "A", "A2"));
+ SVN_ERR(sbox_wc_move(&b, "P", "A"));
+ SVN_ERR(sbox_wc_move(&b, "A2", "P"));
+ SVN_ERR(sbox_wc_move(&b, "A/Q", "A/Q2"));
+ SVN_ERR(sbox_wc_move(&b, "P/B", "P/B2"));
+
+ {
+ nodes_row_t nodes[] = {
+ {0, "", "normal", 1, ""},
+ {0, "A", "normal", 1, "A"},
+ {0, "A/B", "normal", 1, "A/B"},
+ {0, "P", "normal", 1, "P"},
+ {0, "P/Q", "normal", 1, "P/Q"},
+ {1, "A", "normal", 1, "P", FALSE, "P", TRUE},
+ {1, "A/B", "base-deleted", NO_COPY_FROM},
+ {1, "A/Q", "normal", 1, "P/Q", MOVED_HERE},
+ {1, "P", "normal", 1, "A", FALSE, "A", TRUE},
+ {1, "P/Q", "base-deleted", NO_COPY_FROM},
+ {1, "P/B", "normal", 1, "A/B", MOVED_HERE},
+ {2, "A/Q", "base-deleted", NO_COPY_FROM, "A/Q2"},
+ {2, "A/Q2", "normal", 1, "P/Q", MOVED_HERE},
+ {2, "P/B", "base-deleted", NO_COPY_FROM, "P/B2"},
+ {2, "P/B2", "normal", 1, "A/B", MOVED_HERE},
+ {0}
+ };
+ SVN_ERR(check_db_rows(&b, "", nodes));
+ }
+
+ /* Update A bumps revisions but only for moves originating in A. In
+ particular A/Q to A/Q2 does not get bumped. */
+ SVN_ERR(sbox_wc_update(&b, "A", 2));
+ {
+ nodes_row_t nodes[] = {
+ {0, "", "normal", 1, ""},
+ {0, "A", "normal", 2, "A"},
+ {0, "A/B", "normal", 2, "A/B"},
+ {0, "P", "normal", 1, "P"},
+ {0, "P/Q", "normal", 1, "P/Q"},
+ {1, "A", "normal", 1, "P", FALSE, "P", TRUE},
+ {1, "A/B", "base-deleted", NO_COPY_FROM},
+ {1, "A/Q", "normal", 1, "P/Q", MOVED_HERE},
+ {1, "P", "normal", 2, "A", FALSE, "A", TRUE},
+ {1, "P/Q", "base-deleted", NO_COPY_FROM},
+ {1, "P/B", "normal", 2, "A/B", MOVED_HERE},
+ {2, "A/Q", "base-deleted", NO_COPY_FROM, "A/Q2"},
+ {2, "A/Q2", "normal", 1, "P/Q", MOVED_HERE},
+ {2, "P/B", "base-deleted", NO_COPY_FROM, "P/B2"},
+ {2, "P/B2", "normal", 2, "A/B", MOVED_HERE},
+ {0}
+ };
+ SVN_ERR(check_db_rows(&b, "", nodes));
+ }
+
+ return SVN_NO_ERROR;
+}
+
+static svn_error_t *
+check_tree_conflict_repos_path(svn_test__sandbox_t *b,
+ const char *wc_path,
+ const char *repos_path1,
+ const char *repos_path2)
+{
+ svn_skel_t *conflict;
+ svn_wc_operation_t operation;
+ const apr_array_header_t *locations;
+ svn_boolean_t text_conflicted, prop_conflicted, tree_conflicted;
+
+ SVN_ERR(svn_wc__db_read_conflict(&conflict, b->wc_ctx->db,
+ sbox_wc_path(b, wc_path),
+ b->pool, b->pool));
+
+ SVN_ERR(svn_wc__conflict_read_info(&operation, &locations,
+ &text_conflicted, &prop_conflicted,
+ &tree_conflicted,
+ b->wc_ctx->db, b->wc_abspath,
+ conflict, b->pool, b->pool));
+
+ SVN_ERR_ASSERT(tree_conflicted);
+
+ if (repos_path1)
+ {
+ svn_wc_conflict_version_t *version
+ = APR_ARRAY_IDX(locations, 0, svn_wc_conflict_version_t *);
+
+ SVN_ERR_ASSERT(!strcmp(version->path_in_repos, repos_path1));
+ }
+
+ if (repos_path2)
+ {
+ svn_wc_conflict_version_t *version
+ = APR_ARRAY_IDX(locations, 1, svn_wc_conflict_version_t *);
+
+ SVN_ERR_ASSERT(!strcmp(version->path_in_repos, repos_path2));
+ }
+
+ return SVN_NO_ERROR;
+}
+
+static svn_error_t *
+move_update_conflicts(const svn_test_opts_t *opts, apr_pool_t *pool)
+{
+ svn_test__sandbox_t b;
+
+ SVN_ERR(svn_test__sandbox_create(&b, "move_update_conflicts", opts, pool));
+
+ SVN_ERR(sbox_wc_mkdir(&b, "X"));
+ SVN_ERR(sbox_wc_mkdir(&b, "X/A"));
+ SVN_ERR(sbox_wc_mkdir(&b, "X/A/B"));
+ SVN_ERR(sbox_wc_mkdir(&b, "X/A/B/C"));
+ SVN_ERR(sbox_wc_mkdir(&b, "X/A/B/C/D"));
+ SVN_ERR(sbox_wc_commit(&b, ""));
+ SVN_ERR(sbox_wc_mkdir(&b, "X/A/B/C/D/E"));
+ SVN_ERR(sbox_wc_mkdir(&b, "X/A/B/F"));
+ SVN_ERR(sbox_wc_commit(&b, ""));
+ SVN_ERR(sbox_wc_switch(&b, "/X"));
+ SVN_ERR(sbox_wc_update(&b, "", 1));
+ SVN_ERR(sbox_wc_move(&b, "A", "A2"));
+ SVN_ERR(sbox_wc_move(&b, "A2/B/C", "A2/B/C2"));
+ sbox_file_write(&b, "A2/B/F", "obstruction\n");
+
+ {
+ nodes_row_t nodes[] = {
+ {0, "", "normal", 1, "X"},
+ {0, "A", "normal", 1, "X/A"},
+ {0, "A/B", "normal", 1, "X/A/B"},
+ {0, "A/B/C", "normal", 1, "X/A/B/C"},
+ {0, "A/B/C/D", "normal", 1, "X/A/B/C/D"},
+ {1, "A", "base-deleted", NO_COPY_FROM, "A2"},
+ {1, "A/B", "base-deleted", NO_COPY_FROM},
+ {1, "A/B/C", "base-deleted", NO_COPY_FROM},
+ {1, "A/B/C/D", "base-deleted", NO_COPY_FROM},
+ {1, "A2", "normal", 1, "X/A", MOVED_HERE},
+ {1, "A2/B", "normal", 1, "X/A/B", MOVED_HERE},
+ {1, "A2/B/C", "normal", 1, "X/A/B/C", MOVED_HERE},
+ {1, "A2/B/C/D", "normal", 1, "X/A/B/C/D", MOVED_HERE},
+ {3, "A2/B/C", "base-deleted", NO_COPY_FROM, "A2/B/C2"},
+ {3, "A2/B/C/D", "base-deleted", NO_COPY_FROM},
+ {3, "A2/B/C2", "normal", 1, "X/A/B/C", MOVED_HERE},
+ {3, "A2/B/C2/D", "normal", 1, "X/A/B/C/D", MOVED_HERE},
+ {0}
+ };
+ SVN_ERR(check_db_rows(&b, "", nodes));
+ }
+
+ SVN_ERR(sbox_wc_update(&b, "A", 2));
+ SVN_ERR(check_tree_conflict_repos_path(&b, "A", "X/A", "X/A"));
+ SVN_ERR(sbox_wc_resolve(&b, "A", svn_wc_conflict_choose_mine_conflict));
+ {
+ nodes_row_t nodes[] = {
+ {0, "", "normal", 1, "X"},
+ {0, "A", "normal", 2, "X/A"},
+ {0, "A/B", "normal", 2, "X/A/B"},
+ {0, "A/B/C", "normal", 2, "X/A/B/C"},
+ {0, "A/B/C/D", "normal", 2, "X/A/B/C/D"},
+ {0, "A/B/C/D/E", "normal", 2, "X/A/B/C/D/E"},
+ {0, "A/B/F", "normal", 2, "X/A/B/F"},
+ {1, "A", "base-deleted", NO_COPY_FROM, "A2"},
+ {1, "A/B", "base-deleted", NO_COPY_FROM},
+ {1, "A/B/C", "base-deleted", NO_COPY_FROM},
+ {1, "A/B/C/D", "base-deleted", NO_COPY_FROM},
+ {1, "A/B/C/D/E", "base-deleted", NO_COPY_FROM},
+ {1, "A/B/F", "base-deleted", NO_COPY_FROM},
+ {1, "A2", "normal", 2, "X/A", MOVED_HERE},
+ {1, "A2/B", "normal", 2, "X/A/B", MOVED_HERE},
+ {1, "A2/B/C", "normal", 2, "X/A/B/C", MOVED_HERE},
+ {1, "A2/B/C/D", "normal", 2, "X/A/B/C/D", MOVED_HERE},
+ {1, "A2/B/C/D/E", "normal", 2, "X/A/B/C/D/E", MOVED_HERE},
+ {1, "A2/B/F", "normal", 2, "X/A/B/F", MOVED_HERE},
+ {3, "A2/B/C", "base-deleted", NO_COPY_FROM, "A2/B/C2"},
+ {3, "A2/B/C/D", "base-deleted", NO_COPY_FROM},
+ {3, "A2/B/C/D/E", "base-deleted", NO_COPY_FROM},
+ {3, "A2/B/C2", "normal", 1, "X/A/B/C", MOVED_HERE},
+ {3, "A2/B/C2/D", "normal", 1, "X/A/B/C/D", MOVED_HERE},
+ {0}
+ };
+ SVN_ERR(check_db_rows(&b, "", nodes));
+ }
+
+ SVN_ERR(check_tree_conflict_repos_path(&b, "A2/B/C", "X/A/B/C", "X/A/B/C"));
+ SVN_ERR(check_tree_conflict_repos_path(&b, "A2/B/F", NULL, "X/A/B/F"));
return SVN_NO_ERROR;
}
@@ -5497,5 +5725,9 @@
"nested_move_update"),
SVN_TEST_OPTS_XFAIL(nested_move_commit,
"nested_move_commit"),
+ SVN_TEST_OPTS_PASS(nested_move_update2,
+ "nested_move_update2"),
+ SVN_TEST_OPTS_PASS(move_update_conflicts,
+ "move_update_conflicts"),
SVN_TEST_NULL
};
diff --git a/subversion/tests/libsvn_wc/utils.c b/subversion/tests/libsvn_wc/utils.c
index d78efd6..61a92e7 100644
--- a/subversion/tests/libsvn_wc/utils.c
+++ b/subversion/tests/libsvn_wc/utils.c
@@ -334,6 +334,25 @@
}
svn_error_t *
+sbox_wc_switch(svn_test__sandbox_t *b, const char *url)
+{
+ svn_client_ctx_t *ctx;
+ svn_revnum_t result_rev;
+ svn_opt_revision_t head_rev = { svn_opt_revision_head, {0} };
+
+ url = apr_pstrcat(b->pool, b->repos_url, url, (char*)NULL);
+ SVN_ERR(svn_client_create_context2(&ctx, NULL, b->pool));
+ ctx->wc_ctx = b->wc_ctx;
+ return svn_client_switch3(&result_rev, sbox_wc_path(b, ""), url,
+ &head_rev, &head_rev, svn_depth_infinity,
+ FALSE /* depth_is_sticky */,
+ TRUE /* ignore_externals */,
+ FALSE /* allow_unver_obstructions */,
+ TRUE /* ignore_ancestry */,
+ ctx, b->pool);
+}
+
+svn_error_t *
sbox_wc_resolved(svn_test__sandbox_t *b, const char *path)
{
return sbox_wc_resolve(b, path, svn_wc_conflict_choose_merged);
diff --git a/subversion/tests/libsvn_wc/utils.h b/subversion/tests/libsvn_wc/utils.h
index 10aadc2..dc2082c 100644
--- a/subversion/tests/libsvn_wc/utils.h
+++ b/subversion/tests/libsvn_wc/utils.h
@@ -130,6 +130,9 @@
svn_error_t *
sbox_wc_update(svn_test__sandbox_t *b, const char *path, svn_revnum_t revnum);
+svn_error_t *
+sbox_wc_switch(svn_test__sandbox_t *b, const char *url);
+
/* */
svn_error_t *
sbox_wc_resolved(svn_test__sandbox_t *b, const char *path);
diff --git a/tools/client-side/svn-bench/svn-bench.c b/tools/client-side/svn-bench/svn-bench.c
index 4022844..65dfc87 100644
--- a/tools/client-side/svn-bench/svn-bench.c
+++ b/tools/client-side/svn-bench/svn-bench.c
@@ -798,7 +798,7 @@
}
/* -N has a different meaning depending on the command */
- if (descend == FALSE)
+ if (!descend)
opt_state.depth = svn_depth_files;
err = svn_config_get_config(&(ctx->config),
diff --git a/tools/dev/fsfs-access-map.c b/tools/dev/fsfs-access-map.c
index 7d30ee6..b5d66bc 100644
--- a/tools/dev/fsfs-access-map.c
+++ b/tools/dev/fsfs-access-map.c
@@ -65,7 +65,7 @@
* (i.e. number of non-zero entries in read_map). */
apr_int64_t unique_clusters_read;
- /* cluster -> read count mapping (1 byte per cluster, saturated at 255) */
+ /* cluster -> read count mapping (1 word per cluster, saturated at 64k) */
apr_array_header_t *read_map;
} file_stats_t;
@@ -90,6 +90,7 @@
/* useful typedef */
typedef unsigned char byte;
+typedef unsigned short word;
/* global const char * file name -> *file_info_t map */
static apr_hash_t *files = NULL;
@@ -121,17 +122,17 @@
/* auto-expand access map in case the file later shrunk or got deleted */
while (handle_info->file->read_map->nelts <= last_cluster)
- APR_ARRAY_PUSH(handle_info->file->read_map, byte) = 0;
+ APR_ARRAY_PUSH(handle_info->file->read_map, word) = 0;
/* accumulate the accesses per cluster. Saturate and count first
* (i.e. disjoint) accesses clusters */
handle_info->file->clusters_read += last_cluster - first_cluster + 1;
for (i = first_cluster; i <= last_cluster; ++i)
{
- byte *count = &APR_ARRAY_IDX(handle_info->file->read_map, i, byte);
+ word *count = &APR_ARRAY_IDX(handle_info->file->read_map, i, word);
if (*count == 0)
handle_info->file->unique_clusters_read++;
- if (*count < 255)
+ if (*count < 0xffff)
++*count;
}
}
@@ -173,7 +174,7 @@
cluster_count = (apr_size_t)(1 + (file->size - 1) / cluster_size);
file->read_map = apr_array_make(pool, file->size
? cluster_count
- : 1, sizeof(byte));
+ : 1, sizeof(word));
while (file->read_map->nelts < cluster_count)
APR_ARRAY_PUSH(file->read_map, byte) = 0;
@@ -247,7 +248,7 @@
* there will probably be a real I/O seek on the following read.
*/
if ( handle_info->file->read_map->nelts <= cluster
- || APR_ARRAY_IDX(handle_info->file->read_map, cluster, byte) == 0)
+ || APR_ARRAY_IDX(handle_info->file->read_map, cluster, word) == 0)
handle_info->file->uncached_seek_count++;
}
}
@@ -402,33 +403,38 @@
/* Return the BMP-encoded 24 bit COLOR for the given value.
*/
static void
-select_color(byte color[3], byte value)
+select_color(byte color[3], word value)
{
+ enum { COLOR_COUNT = 10 };
+
/* value -> color table. Missing values get interpolated.
* { count, B - G - R } */
- byte table[7][4] =
+ word table[COLOR_COUNT][4] =
{
- { 0, 255, 255, 255 }, /* unread -> white */
- { 1, 128, 128, 0 }, /* read once -> turquoise */
- { 2, 0, 128, 0 }, /* twice -> green */
- { 4, 0, 192, 192 }, /* 4x -> yellow */
- { 16, 0, 0, 192 }, /* 16x -> red */
- { 64, 192, 0, 128 }, /* 64x -> purple */
- { 255, 0, 0, 0 } /* max -> black */
+ { 0, 255, 255, 255 }, /* unread -> white */
+ { 1, 64, 128, 0 }, /* read once -> turquoise */
+ { 2, 0, 128, 0 }, /* twice -> green */
+ { 8, 0, 192, 192 }, /* 8x -> yellow */
+ { 64, 0, 0, 192 }, /* 64x -> red */
+ { 256, 64, 32, 230 }, /* 256x -> bright red */
+ { 512, 192, 0, 128 }, /* 512x -> purple */
+ { 1024, 96, 32, 96 }, /* 1024x -> UV purple */
+ { 4096, 32, 16, 32 }, /* 4096x -> EUV purple */
+ { 65535, 0, 0, 0 } /* max -> black */
};
/* find upper limit entry for value */
int i;
- for (i = 0; i < 7; ++i)
+ for (i = 0; i < COLOR_COUNT; ++i)
if (table[i][0] >= value)
break;
/* exact match? */
if (table[i][0] == value)
{
- color[0] = table[i][1];
- color[1] = table[i][2];
- color[2] = table[i][3];
+ color[0] = (byte)table[i][1];
+ color[1] = (byte)table[i][2];
+ color[2] = (byte)table[i][3];
}
else
{
@@ -445,10 +451,11 @@
}
}
-/* write the cluster read map for all files in INFO as BMP image to FILE.
+/* Writes a BMP image header to FILE for a 24-bit color picture of the
+ * given XSIZE and YSIZE dimension.
*/
static void
-write_bitmap(apr_array_header_t *info, apr_file_t *file)
+write_bitmap_header(apr_file_t *file, int xsize, int ysize)
{
/* BMP file header (some values need to filled in later)*/
byte header[54] =
@@ -470,7 +477,28 @@
0, 0, 0, 0, /* no colors in palette */
0, 0, 0, 0 /* no colors to import */
};
-
+
+ apr_size_t written;
+
+ /* rows in BMP files must be aligned to 4 bytes */
+ int row_size = APR_ALIGN(xsize * 3, 4);
+
+ /* write numbers to header */
+ write_number(header + 2, ysize * row_size + 54);
+ write_number(header + 18, xsize);
+ write_number(header + 22, ysize);
+ write_number(header + 38, ysize * row_size);
+
+ /* write header to file */
+ written = sizeof(header);
+ apr_file_write(file, header, &written);
+}
+
+/* write the cluster read map for all files in INFO as BMP image to FILE.
+ */
+static void
+write_bitmap(apr_array_header_t *info, apr_file_t *file)
+{
int ysize = info->nelts;
int xsize = 0;
int x, y;
@@ -493,15 +521,8 @@
row_size = APR_ALIGN(xsize * 3, 4);
padding = row_size - xsize * 3;
- /* write numbers to header */
- write_number(header + 2, ysize * row_size + 54);
- write_number(header + 18, xsize);
- write_number(header + 22, ysize);
- write_number(header + 38, ysize * row_size);
-
/* write header to file */
- written = sizeof(header);
- apr_file_write(file, header, &written);
+ write_bitmap_header(file, xsize, ysize);
/* write all rows */
for (y = 0; y < ysize; ++y)
@@ -512,7 +533,7 @@
byte color[3] = { 128, 128, 128 };
if (x < file_info->read_map->nelts)
{
- byte count = APR_ARRAY_IDX(file_info->read_map, x, byte);
+ word count = APR_ARRAY_IDX(file_info->read_map, x, word);
select_color(color, count);
}
@@ -529,6 +550,35 @@
}
}
+/* write a color bar with (roughly) logarithmic scale as BMP image to FILE.
+ */
+static void
+write_scale(apr_file_t *file)
+{
+ int x;
+ word value = 0, inc = 1;
+
+ /* write header to file */
+ write_bitmap_header(file, 64, 1);
+
+ for (x = 0; x < 64; ++x)
+ {
+ apr_size_t written;
+ byte color[3] = { 128, 128, 128 };
+
+ select_color(color, value);
+ if (value + (int)inc < 0x10000)
+ {
+ value += inc;
+ if (value >= 8 * inc)
+ inc *= 2;
+ }
+
+ written = sizeof(color);
+ apr_file_write(file, color, &written);
+ }
+}
+
/* Write a summary of the I/O ops to stdout.
* Use POOL for temporaries.
*/
@@ -618,5 +668,11 @@
write_bitmap(get_rev_files(pool), file);
apr_file_close(file);
+ apr_file_open(&file, "scale.bmp",
+ APR_WRITE | APR_CREATE | APR_TRUNCATE | APR_BUFFERED,
+ APR_OS_DEFAULT, pool);
+ write_scale(file);
+ apr_file_close(file);
+
return 0;
}
\ No newline at end of file
diff --git a/tools/server-side/fsfs-reorg.c b/tools/dev/fsfs-reorg.c
similarity index 100%
rename from tools/server-side/fsfs-reorg.c
rename to tools/dev/fsfs-reorg.c
diff --git a/tools/server-side/fsfs-stats.c b/tools/server-side/fsfs-stats.c
index 14536ee..7ea51c7 100644
--- a/tools/server-side/fsfs-stats.c
+++ b/tools/server-side/fsfs-stats.c
@@ -1566,13 +1566,13 @@
{
svn_error_clear(svn_stream_printf(ostream, pool,
"\n"
- "Usage: %s <repo> <cachesize>\n"
+ "Usage: %s <repo> [cachesize]\n"
"\n"
"Read the repository at local path <repo> starting at revision 0,\n"
"count statistical information and write that data to stdout.\n"
- "Use up to <cachesize> MB of memory for caching. This does not include\n"
+ "Use up to [cachesize] MB of memory for caching. This does not include\n"
"temporary representation of the repository structure, i.e. the actual\n"
- "memory may be considerably higher.\n",
+ "memory may be considerably higher. If not given, defaults to 100 MB.\n",
progname));
}
@@ -1584,7 +1584,7 @@
svn_error_t *svn_err;
const char *repo_path = NULL;
svn_revnum_t start_revision = 0;
- apr_size_t memsize = 0;
+ apr_size_t memsize = 100;
apr_uint64_t temp = 0;
fs_fs_t *fs;
@@ -1600,22 +1600,26 @@
return 2;
}
- if (argc != 3)
+ if (argc < 2 || argc > 3)
{
print_usage(ostream, argv[0], pool);
return 2;
}
- svn_err = svn_cstring_strtoui64(&temp, argv[2], 0, APR_SIZE_MAX, 10);
- if (svn_err)
+ if (argc == 3)
{
- print_usage(ostream, argv[0], pool);
- svn_error_clear(svn_err);
- return 2;
+ svn_err = svn_cstring_strtoui64(&temp, argv[2], 0, APR_SIZE_MAX, 10);
+ if (svn_err)
+ {
+ print_usage(ostream, argv[0], pool);
+ svn_error_clear(svn_err);
+ return 2;
+ }
+
+ memsize = (apr_size_t)temp;
}
- memsize = (apr_size_t)temp;
- repo_path = argv[1];
+ repo_path = svn_dirent_canonicalize(argv[1], pool);
start_revision = 0;
printf("Reading revisions\n");