No mostrar svn: externos en estado svn

He hecho un svn:external en mi repository. Todo funciona bien, excepto la salida del command svn status . En el resultado hay mucha información que no necesito:

 $ svn st X lib Performing status on external item at 'lib' 

Puedo ejecutar svn st --ignore-externals -q y puedo colocar esta línea en un pequeño script, pero tal vez haya una mejor solución. ¿Cómo puedo ver el estado de mi copy de trabajo sin ver información sobre externos?

Esa parece ser la forma correcta de ignorar las externalidades que aparecen en el resultado del svn status .

Referencia:

http://svnbook.networking-bean.com/en/1.4/svn.ref.svn.html

La búsqueda muestra una implementación inteligente del script Bash que anula el command svn con un script. Sin embargo, quería hacer algo similar en Windows. Elimine el directory svn de su PATH , luego cree un script por lotes llamado svn.bat y svn.bat en algún lugar de su PATH (como C:\Windows ):

 @echo off setlocal if (%1)==(st) goto :match if (%1)==(stat) goto :match if (%1)==(status) goto :match :: If not running Status command, just pass the args along "C:\Program Files\SlikSvn\bin\svn" %* goto :eof :match :: Init variables set svnargs1= set svnargs2=--ignore-externals :: Loop through arguments :loop if "%~1"=="" goto :cont :: Look for ignore externals flag if "%~1"=="--examine-externals" ( set svnargs2= ) else ( if "%~1"=="-h" ( set svnargs2= ) set svnargs1=%svnargs1% %1% ) shift & goto :loop :cont :: Call svn "C:\Program Files\SlikSvn\bin\svn" %svnargs1% %svnargs2% 

Creo que todavía no hay respuesta que resuelva el problema en el sentido de que si se han realizado cambios en una parte de svn: externals, por supuesto deberían mostrarse. Esto, de manera propagable, no tiene sentido para los repositorys realmente externos. Pero utilizo svn: externals para agregar una carpeta de compilation general desde el mismo repository en proyectos (porque no existe una jerarquía general de los modules). Y no quiero usar las opciones --ignore-externals -q ya que pierdo información sobre files no agregados y cambios en el script de compilation general que he hecho en este proyecto (que podría querer confirmar). Mi solución fue parchar la implementación de la línea de command de subversion java svnkit .

 AbstractSVNCommand.registerCommand(new SVNStatusCommand()); final ByteArrayOutputStream bos = new ByteArrayOutputStream(); final PrintStream stream = new PrintStream(bos); final SVNCommandLine commandLine = new SVNCommandLine(); commandLine.init(new String[] { "status", "PATH..." }); final SVNCommandEnvironment env = new SVNCommandEnvironment("mySvn", stream, stream, System.in); env.init(commandLine); env.initClientManager(); final SVNStatusCommand svnStatusCall = new SVNStatusCommand(); svnStatusCall.init(env); svnStatusCall.run(); stream.flush(); String result = new String(bos.toByteArray()); StringBuffer buffer = new StringBuffer(); Scanner scanner = new Scanner(result); while (scanner.hasNextLine()) { String line = scanner.nextLine(); if (line.startsWith("X") || line.startsWith("Performing status on external item at")) { // ignore this output } else if (line.trim().isEmpty() == false) { buffer.append(line + "\n"); } } System.out.println(buffer.toString()); 

Esto resuelve el problema porque los cambios en los externos también están marcados con 'M' para modificar …