Can anyone explain this special handling of items scheduled for addition
*without history*, in "svn update"'s "add file" code path?
It seems to me that if a file to be added is obstructed by a file on
disk, it wouldn't matter whether it's being added with or without
history.
subversion/libsvn_wc/update_editor.c
('kind' is the on-disk node kind.)
[[[
@@ -2541,8 +2540,6 @@ add_file(const char *path,
/* When adding, there should be nothing with this name unless unversioned
obstructions are permitted or the obstruction is scheduled for addition
(or replacement) without history. */
/* ### " or the obstruction is scheduled for addition
without history." ??? */
if (kind != svn_node_none)
{
if (eb->allow_unver_obstructions
|| (entry && ((entry->schedule == svn_wc_schedule_add
|| entry->schedule == svn_wc_schedule_replace))))
{
/* ### now detected as a tree conflict instead.
if (entry && entry->copied)
{
return svn_error_createf(SVN_ERR_WC_OBSTRUCTED_UPDATE,
NULL,
_("Failed to add file '%s': a "
"file of the same name is "
"already scheduled for addition "
"with history"),
svn_path_local_style(fb->path,
pool));
}
*/
...
]]]
- Julian
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-10-29 13:21:31 CET