tutorial tortoise subir repositorio español desvincular con como comandos clonar carpeta archivos list svn repository remote-access

list - subir - tortoise svn server



¿Cómo listar todos los archivos en un repositorio SVN remoto? (5)

Esto lista todos los archivos recursivamente:

svn ls -R URL-OF-REPO

Accedo a un gran repositorio SVN remoto. Como por lo general solo necesito un pequeño subconjunto de su contenido, hice un "pago disperso":

svn checkout --depth empty svn+ssh://... src

Cada vez que necesito una carpeta del repositorio, puedo hacerlo

svn up folder

Y cuando ya no lo necesito lo uso.

svn up --set-depth exclude folder

Pero ahora necesito una lista completa de todos los archivos en el repositorio y no quiero hacer una comprobación completa solo para obtener los nombres de archivos y carpetas.

Ya probé svn ls -R que de hecho enumera algunos archivos que no revisé, pero aún faltan algunos. Lo sé porque muestra todo en el directorio actual. Ahora podría ejecutar semi-manualmente svn ls y svn up --depth empty para cada directorio nuevo, pero me pregunto si hay alguna alternativa mejor.

A diferencia de ¿Cómo enumero todos los archivos comprometidos en el repositorio? Solo me interesa el contenido actual del repositorio y no tengo acceso a svnadmin . Tampoco puedo instalar software en el servidor de repositorio.



Si desea obtener una lista completa de todos los archivos y no las carpetas, puede canalizar svn list y el comando grep de la siguiente manera:

svn list -R svn://url/to/your/main/folder/on/repo | grep ''[^//]$''

la ruta a las carpetas listadas por

svn list -R svn: // url / to / your / main / folder / on / repo

siempre termina con "/" mientras que la ruta del archivo no lo hace. La salida se pasa como una entrada a

grep ''[^ / /] $''

que excluye todos los caminos que tienen un "/" al final; Las rutas restantes solo están relacionadas con archivos.

Ejemplo: supongamos que tenemos un repositorio llamado myrepo en my.svnserver.com como dominio, y queremos obtener todos los archivos listados en un subdirectorio de myrepo, es decir, mysubdir : el comando es

svn list -R svn://my.svnserver.com/myrepo/mysubdir | grep ''[^//]$''

Además, si canaliza el resultado al comando wc -l (que imprime el número de nuevas líneas, ya que cada línea de salida contiene solo una ruta), puede obtener el número de todos los archivos en mysubdir , como este

svn list -R svn://my.svnserver.com/myrepo/mysubdir | grep ''[^//]$'' | wc -l


Sin URL

svn list --recursive -r HEAD


svn list --recursive https://myrespository.my.com/Myproject

Creo que funciona para los subdirectorios actuales y todos los que he probado. Éste también enumera todas las ramas y etiquetas, y todos sus subdirectorios y archivos.