¿Debo realizar cambios cosméticos?

Hay cambios de coding style menores que a menudo deseo comprometer con el control de origen, pero ahora el logging de cambios está lleno de esos cambios que no afectan la funcionalidad del código.

¿Qué debo hacer la próxima vez que tenga que arreglar cosas menores como:

  • Eliminar y orderar los usos (en .NET, importaciones en python, incluye en c ++)
  • Corrección de sangría, espaciado y saltos de línea

Si está cambiando el file de código, realmente no veo por qué no desea comprometer y compartir esos cambios. Si no lo hace, corre el riesgo de que alguien más lo arregle y luego colisione con el suyo.

Si no se trata de cambios que otros usuarios desean en la base de código, quizás deba preguntarse por qué está gastando time en escribirlos.

Compromételos, con el comentario de confirmación marcado adecuadamente para que sea más fácil ignorarlo al pasar por una list de cambios.

No los comprometa en la misma operación como un cambio a la funcionalidad. De esta forma, si rompes algo, es más fácil networkingucir lo que se rompió y es fácil revertir solo la refactorización si es necesario.

No los comprometa con correcciones no relacionadas.

Los comprometería, pero agrego alguna palabra key pnetworkingefinida al post de confirmación. Los posts con esta palabra key podrían ignorarse al generar loggings de cambios.

Podría usar un prefijo como [cleanup] por ejemplo.

 [cleanup] Removed some whitespace [cleanup] Changed format Fixed some major bug. [cleanup] Corrected indentation 

En los proyectos en los que soy el único desarrollador, tiendo a hacer este tipo de reparaciones junto con otros cambios de código.

En proyectos donde hay un equipo de nosotros, tiendo a intentar y comprometer estos cambios por sí mismos para que no oscurezcan el "trabajo real".

Siento que es importante arreglar todo lo que está "mal" con una base de código, incluso si se trata de cosas menores como la sangría.

Creo que esto depende de su entorno de trabajo y de cómo otros que trabajan en el mismo proyecto quieren lidiar con lo que probablemente difiera.

Por lo tanto, mi sugerencia general sería pedirle a las personas que trabajan con el mismo código y elaborar una guía para casos como ese. Es posible que descubra que a las personas no les molesta el check-in debido a cambios cosméticos o que preferirían vivir con un poco de "falta de pretensiones" en lugar de lidiar con loggings de cambios desorderados.

Una guía definitiva que sea transparente para todos es la mejor manera de abordar estas preguntas y evitar confusiones en el futuro.

Personalmente, me gusta el código orderado y no me importaría el check-in debido a cambios puramente cosméticos. Sin embargo, si solo se trata de un poco de espacio y saltos de línea, probablemente lo dejaría solo y solo lo cambiaría si estuviera trabajando en el mismo file de código de todos modos. A menudo elimino y clasifico los usos porque me resulta confuso si hay un montón de usos que no tienen sentido, pero así soy yo.

Creo que cuando tienes un equipo de desarrolladores trabajando en el mismo código, lo más importante es acordar un estilo cosmético para el código. Por lo tanto, su primera tarea es intentar que todo su equipo acuerde un coding style.

Buena suerte.

Una vez que haya hecho eso, realice cambios cosméticos tan a menudo como lo desee, para recordarle a las personas que se adhieran al estilo.

Hay una gran sección en Code Complete sobre los méritos de los diferentes styles de encoding. Si puede hacer que su equipo lea la sección antes de su reunión de coding style, podría ayudar a sacarlos de la reunión con vida enfoca la discusión

Hay un par de problemas.

Primero, no hagas cambios en el código porque estás aburrido y no tienes suficientes tareas reales. Si este es el caso, ve a hablar con tu gerente de proyecto y consigue algunas tareas reales asignadas a ti, algo con valor.

En otras palabras, no vaya a cambiar el código por el bien del cambio. Siempre agregue algo de valor al código en el process.

Ahora, si esos cambios están contribuyendo a que el código sea más fácil de manejar, usted y otros, entonces hágalo. Cosas como asegurar el cumplimiento de los estándares de nomenclatura, refactorizar el código seguro, etc. Pero obtenga una tarea para que su jefe de proyecto pueda decir "Sí, esto es bueno, dedique 2 horas a esto y vuelva a consultarme".

Confirme los cambios cuando haya terminado con ellos. No los junte con la tarea real que haya terminado justo antes de ellos, o la próxima, hará que la fusión de las correcciones de errores entre sucursales, revisiones de código y solo la exploración general de códigos, sea difícil de seguir.

"Ok, entonces corrigió el error 7711, y también cambió alnetworkingedor de otros 100 files. Bien, entonces, ¿cuál es en realidad la corrección de error aquí?"

Definitivamente cometerlos. Si los compromete con cambios de código reales y tiene que deshacer esos cambios, entonces pierde sus correcciones estéticas.

Idealmente, las confirmaciones deberían ser como las transactions de la database: un fragment de código de trabajo relacionado que se puede revertir sin afectar el rest del sistema.

Si los cambios se refieren a cosas que podrían ser de alguna manera controvertidas (position de los corchetes, por ejemplo), asegúrese de haber acordado un estilo de código con el rest de su equipo. No lo cambie solo a su estilo preferido y luego instálelo. De lo contrario, alguien más podría volver a cambiarlo y verificar sus cambios, luego lo cambiará de nuevo a su manera …

¿Son estos arreglos "menores" de cosas? Si es así, compromételos. Si no, no.

Realmente, depende de lo que tú y tu equipo consideren importante.

me gusta comprometerme a menudo Ciertamente, cada vez que hay un cambio apreciable. Es fácil de esa manera. Si comienzas a compartimentar los fragments de código y tratas de comprometerlos más pronto que tarde, eventualmente te olvidarás de cometer algo muy importante.

En resumen: comprométase a menudo y SIEMPRE documente el cambio. Cuando hay un cambio ENORME, márquelo.

No te comprometas solo por el compromiso. Normalmente los agrego para el código en el que estoy trabajando. Por ejemplo, si estoy corrigiendo un error en el método AI, asegúrese de hacer también todos los cambios cosméticos.

OMI, ustedes están perdiendo herramientas de encoding como PMD, JIndent, etc. que se ocupan de estos problemas mientras codifica. Algunos IDE como Netebeans muestran estos "problemas" como advertencias. Entonces, no es un cambio aleatorio / personal siguiendo los estándares.

Compromételos con el próximo gran cambio como nota al margen. Al less eso es lo que haría.