Saltar al contenido

Cómo eliminar un archivo / carpeta de un repositorio SVN y agregarlo a la lista de ignorados

Solución:

Hay dos formas de subversion, una es específica para el usuario y la otra se mantiene en el repositorio y, por lo tanto, afecta a todos.

Para obtener una lista de archivos ignorados globalmente (exclusivo para cada usuario / máquina), debe editar el archivo de configuración de subversión y modificar el ignora global directiva en el miscelánea sección. El archivo de configuración está documentado y la sintaxis es muy simple. Por ejemplo:

global-ignores = *.o

En un sistema UNIX, el archivo de configuración se encuentra en ~/.subversion/config. En un sistema Windows, el archivo de configuración se encuentra en %APPDATA%Subversionconfig o en el registro bajo HKCUSoftwareTigris.orgSubversionConfig.

Una vez que configure esto, nunca agregará accidentalmente estos archivos a su repositorio, ni los archivos aparecerán como ? en tus svn stat comandos. Si su repositorio ya tiene estos archivos, probablemente no le hará daño dejarlos como están, pero los cambios y modificaciones a los archivos se ignorarán en el futuro.

Para configurar esto por proyecto (lo que afectará a cualquiera que revise el proyecto), debe agregar la propiedad svn: ignore a los directorios del proyecto donde es probable que se almacenen los archivos. Por ejemplo, para excluir un directorio llamado build desde el nivel superior de su proyecto, haría algo como esto:

svn propset svn:ignore 'build' .
svn commit -m 'project ignores build directory' .

A partir de ahora, subversion ignorará el directorio de compilación de su proyecto. Para obtener más información sobre esto, consulte la documentación en http://subversion.tigris.org/ o emita el svn help comando para obtener más información.

___EDIT: Se agregaron más según el comentario. No sé cómo me perdí esa parte de la pregunta original. Perdón.

Desafortunadamente, eliminar los archivos que ahora desea ignorar del repositorio es un proceso manual, aunque, si sabe exactamente qué archivos son, puede escribir un pequeño script que las personas que tengan este problema puedan ejecutar (en el futuro, el svn: ignorar la propiedad evitaría que tengan que repetirla, y tiene la ventaja de poder modificarse fácilmente cuando surja la necesidad).

Para eliminar los archivos que no desea del repositorio, pero mantener los archivos locales, siga estos pasos:

  1. Cree su entrada global-ignores o agregue la propiedad svn: ignore a su repositorio y confirme.
  2. Para cada archivo que desee eliminar del repositorio, emita este comando: svn rm --keep-local filename
  3. Una vez que haya emitido el svn rm comando para cada archivo, confirme su copia de trabajo.

Debido a que esto puede tener el efecto secundario de eliminar archivos de las copias de trabajo actuales de las personas si no han actualizado sus archivos de configuración, recomiendo usar la propiedad svn: ignore en los directorios del repositorio. De esa manera, cuando las personas actualicen, no se eliminarán inesperadamente los archivos porque no han modificado su global-ignores parámetro todavía.

Pude hacer esto usando la herramienta TortoiseSVN. Proporcionan una opción de clic derecho en la GUI llamada: “Eliminar y agregar a la lista de ignorados”.

svn remove filename

Postergación:

svn propset svn:ignore filename|pattern

Ver también Cómo … Hacer que Subversion ignore archivos y carpetas .

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *