Cómo resolver el error svn "La input para 'xxx está marcada como' copyda 'pero no está progtwigda para sumr."

Cuando bash enviar un file específico (xxx.java) aparece el siguiente error:

svn: Entry for 'C:\aaa/bbb/ccc/xxx.java' is marked as 'copied' but is not itself scheduled for addition. Perhaps you're committing a target that is inside an unversioned (or not-yet-versioned) directory? 

¿Cómo resolver este error SVN?

Lo resolví con los siguientes pasos:

  1. Haz una copy de security de tus cambios en la carpeta "ccc"
  2. eliminar la carpeta "ccc".
  3. ejecuta "SVN UPDATE" en la carpeta superior "aaa"
  4. rehacer los cambios en el file xxx.java
  5. Comprometerse de nuevo

Entonces el compromiso funcionó.

Si está desprotegido de un tree fuente grande y quiere evitar tener que actualizar todo, he encontrado otra solución para este problema. Dado que la alternativa es volar todo lo demás de todos modos, al less vale la pena intentarlo (funcionó para mí).

Dentro de la carpeta .svn, verás que tienes un file de 'inputs'. Si abres uno de estos types en la carpeta .svn donde se encuentra XXX.java, verás un montón de banderas 'copydas' dentro del text. No estoy muy seguro de cómo llegó el tuyo, pero el mío vino de jugar con VisaulSVN.

Descubrí que la eliminación de estos indicadores copydos de estos files de inputs hará que el error desaparezca y te permita volver a cometer. Un par de notas:

  • tenga en count que el file de inputs es inicialmente un file ReadOnly y deberá desmarcarlo para realizar el cambio y volver a verificarlo cuando haya terminado.
  • Esta bandera copyda puede estar en un par de áreas del tree fuente, por lo que puede terminar teniendo que arreglar varios de estos files de inputs.
  • Tenga cuidado de mantener los mismos numbers de línea y simplemente elimine el text 'copydo' del file.