Me gustaría usar el formateador de Eclipse para arreglar un código mal diseñado, pero hay un gran inconveniente en matar todos los metadatos en el repositorio sobre quién es responsable de qué. ¿Alguna idea de cómo evitar esto? Tal vez es completamente imposible ...estilo de limpieza que no pisotea svn culpa?
Respuesta
Se puede decir que la culpa para ignorar los cambios de espacio en blanco:
svn blame -x -w file/path
Por supuesto que sólo funciona si tu dosis de estilo no cambia más de espacios en blanco.
La historia sigue ahí, solo tendrá que echarle la culpa antes de la revisión de limpieza.
Esta es una buena razón para tener un estándar de estilo. Los cambios de sangría pueden causar una gran cantidad de conflictos de fusión, etc. "Malo estilo" a uno está bien escrito en otro.
lamentablemente, hay una gran base de código mal diseñado para comenzar. Supongo que un punto de dolor es que las anotaciones de eclipse solo muestran el cambio más reciente. Y la gente los usa bastante. – Jacob
Al reformatear el código, generalmente solo arreglo la sangría. Hay demasiados casos en los que el formateador automático arruina una sección cuidadosamente formateada a mano.
Otra solución sería agregar un enlace precompromiso que compare el archivo confirmado con su versión formateada. Si no hay diferencia, la confirmación es aceptada.
De lo contrario, un mensaje simple "Código no formateado: confirmación rechazada" informaría a los desarrolladores que deben modificar el estilo de sus archivos modificados antes de la confirmación.
Combinado con la respuesta de Stefan, aún puede utilizar la opción -w y, además, no anula los nombres del desarrollador.
Una desventaja es que no podrá diseñar su repositorio completo en una sola pasada. Los archivos se diseñarán según se modifiquen. A menudo, los archivos usados se diseñarán rápidamente, mientras que otros nunca se actualizarán.
- 1. ¿Cualquier equivalente de svn culpa para clearcase?
- 2. Perforce culpa
- 3. Línea de SVN que termina Estilo
- 4. Cobertura de código y culpa
- 5. SVN: ¿conserva una fusión el autor para que la culpa sea correcta?
- 6. Ejecutando limpieza de SVN desde el símbolo del sistema
- 7. git culpa - ignorar los cambios no confirmados
- 8. git: cambiar el estilo (espacios en blanco) sin cambiar la propiedad/culpa?
- 9. PHP culpa seg programación
- 10. Limpiar una comprobación svn (eliminar archivos que no sean svn)
- 11. Compromiso de Git que no anula a los autores originales en culpa de git
- 12. Archivo fuente de culpa desde el estudio visual
- 13. Limpieza de código en netbeans
- 14. intellij - código de limpieza
- 15. FizzBuzz limpieza
- 16. Limpieza de señal GPS y red de carreteras que coinciden
- 17. ¿Por qué sigo recibiendo 'SVN: copia de trabajo XXXX bloqueado; intente realizar 'limpieza'?
- 18. ¿Qué es lo que realmente hace una limpieza de TortoiseSVN?
- 19. SVN externos cambios de subcarpetas que no se muestran en el registro de visualización (tortuga svn)
- 20. Limpieza de cadenas para que sean valores JSON válidos
- 21. ¿Dónde está git-culpa en SourceTree
- 22. No mostrar svn: externals en estado svn
- 23. Limpieza de Popen de Python
- 24. Comprueba que no existe una url de repositorio svn
- 25. Limpieza del servidor después de que un cliente se desconecta
- 26. Android - Los datos de usuario de limpieza AVD no funcionan
- 27. Auto-limpieza para TortoiseSVN
- 28. `svn merge` produce resultados diferentes que` diff` SVN
- 29. Error de SVN - No es una copia de trabajo
- 30. error de falta de memoria, es culpa de mi aplicación?
Esto se ve genial, pero no funciona para mí. ¿Cuál es la magia? ¿Qué cliente y plataforma estás usando actualmente? – atikat
Tortoise svn ignora los cambios de espacio en blanco por defecto (hay una casilla de verificación para cambiar esto). – fschmitt
Si quiere que también ignore los cambios en las líneas nuevas (CRLF vs. LF), use 'svn blame -x -w -x --ignore-eol-style'. Ver 'svn help blame' y [esta pregunta] (https://stackoverflow.com/questions/7449503/how-can-i-ignore-eol-changes-and-all-white-space-in-svn). –