Hi All,

I'm encountering some strange behaviour with replacing a symlink with a real file in the repository and wanted to know if what I was seeing is a bug or whether I'm doing something wrong. I'd like to replace the file in one commit, but Subversion objects to changing the file type:

% ls -l trunk/memory_ddr3.v
lrwxrwxrwx 1 mclaughl eng 74 Jul 19 11:51 trunk/memory_ddr3.v -> /proj/ddr3/s39/s39a0c2762e5ac7f7
% svn status trunk/memory_ddr3.v
% svn rm trunk/memory_ddr3.v
D         trunk/memory_ddr3.v
% cp /proj/ddr3/s39/s39a0c2762e5ac7f7 trunk/memory_ddr3.v
% svn add trunk/memory_ddr3.v
A         trunk/memory_ddr3.v
% svn status trunk/memory_ddr3.v
R       trunk/memory_ddr3.v
% svn ci -m "Correcting link" trunk/memory_ddr3.v
svn: Commit failed (details follow):
svn: Entry '/home/mclaughl/nobackup/trunk/memory_ddr3.v' has unexpectedly changed special status
% svn --version
svn, version 1.6.15 (r1038135)
   compiled Jan  5 2011, 17:03:40

Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.apache.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).

The following repository access (RA) modules are available:

* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
  - handles 'http' scheme
  - handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
  - with Cyrus SASL authentication
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme

Server version:

% svn --version
svn, version 1.6.11 (r934486)
   compiled Apr 28 2010, 10:26:48

Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).

The following repository access (RA) modules are available:

* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
  - handles 'http' scheme
  - handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme


I can work around this by doing the replace in two transactions (delete, commit, add, commit), but shouldn't I be able to replace this file in one?

Does this warrant a bug report or is this user error?

--Mattius McLaughlin


Reply via email to