Generalmente se usa Subversion (SVN) para compartir proyectos de software entre equipos de trabajo. Para configurar Subversion en su servidor consulte el artículo Subversion con Apache y Virtualhost.
Así como también es común que se descargue una version fresca de la aplicación mediante crontab diariamente, con eso tenemos un ambiente de pruebas sincronizado y facilitamos las tareas del equipo de QA de una forma automática.
Sin embargo, observando el log pude ver que el sitio que trataba de actualizar desde el SVN estaba generando el siguiente error:
[sourcecode lang=»bash»]
[user@host.fware.pro]$ svn update /var/www/project_folder/
svn: Failed to add directory ‘directory/folder’: an unversioned directory of the same name already exists
[/sourcecode]
No tengo muy claro el origen de esta condición pero si tengo claro que no se esta modificando código en el sitio donde se publica la aplicación, de tal forma que sin importar la razón de esta condición la versión que esta en el SVN siempre será la más reciente.
Teniendo eso claro procedí a modificar el comando agregando la opción –force
[sourcecode lang=»bash»]
[user@host.fware.pro]$ svn update –force /var/www/project_folder/
[/sourcecode]
Thank you for posting this. It dtiinfeely helped.I believe I figured out why this happens. I was merging from branch to trunk. I noticed some conflicts and realized I hadn’t done something in my branch that I wanted to before I merged. So I svn revert all the merge changes (so I did not commit/chick in the merge). Then I made the change I needed in my branch.I merged from branch to trunk again and this time I got that skipped error on a file (file1.cs). When I found your post here I realized what happened.When I reverted the files instead of merging, it reverted all the files that existed in the trunk already, but it did not revert/remove the new file that came from the branch (file1.cs). So svn was seeing that file there but wasn’t sure what it was. So I had to browse to the file, right-click, and svn add the file manually.So svn skipped the file because it was already in the trunk folder, but it wasn’t a conflict/merge because it wasn’t an svn file yet (it had never been checked in to the trunk).I hope that made sense, and I hope that helps clarify a little more what the skipped error means.