¿Se compromete al cambiar el formatting de origen?

¿Es una práctica aceptada comprometerse incluso cuando solo está cambiando cosas como el espacio en blanco, el formatting del código, etc.?

Sí. Si necesita hacer cambios en el espacio en blanco, hacerlo en una confirmación separada que contenga solo este tipo de limpieza es la mejor práctica. Esto evita problemas al tratar de ver qué parte de una diferencia gigante es el cambio real del código, y qué parte son los cambios de formatting (cosméticos).

Dicho esto, debe intentar mantener este tipo de cambios al mínimo, y solo hacerlo cuando sea necesario y compatible con los estándares de encoding que se usen en su empresa / comunidad / proyecto / etc.

¡Sí! ¡Sí! Como un compromiso separado, por favor! (Este tipo de ediciones tiende a tocar una gran cantidad de código, y la gente necesita saber si existe un commit / changeset / patch / whatever solo por razones de reformateo, sin cambios destinados al código real).

Gday,

Sí. Pero, por favor, hazlo como un compromiso dedicado con un post que indique que has

  • cambio de formatting,
  • ejecutar el código a través de un formateador de código, por ejemplo, Perltidy, con una nota sobre la configuration realmente utilizada,
  • etc.

¡Nada peor que tener cambios de formateo combinados con actualizaciones funcionales, por lo que hacer una diferencia entre versiones proporciona una relación S / N pobre!

Como comentario, me pregunto por qué estás haciendo cambios en el formatting del código existente. ¡No debería haberse registrado si estaba mal formateado en primer lugar!

No hay nada peor que trabajar con alguien que pasa por cambiar la fuente bien formateada por ninguna otra razón que no sea la siguiente:

  • creen que las llaves pertenecen a la línea de la statement "si", o
  • No les gustan los "els abrazados", o
  • etc.
  • etc.

Tales expresiones religiosas de "el único estilo verdadero" usualmente desmienten la falta de experiencia y experiencia en la encoding al trabajar en equipo.

HTH

aclamaciones,

Sí, siempre que exista cierta coinheritance entre los diversos repositorys involucrados, de lo contrario, eso haría que la fusión fuera mucho más difícil debido al conflicto debido al formatting.
Al less un compromiso por separado ayuda a identificar la fuente real de conflicto potencial durante esa fusión futura.

Si no es "su" código (es decir, algún otro repository con algún otro estándar de formatting tendrá que fusionar lo que está haciendo), puede aprovechar el controller de filter de atributo git y su mecanismo de borrado / limpieza.

mancha

(Fuente: libro de Pro Git : Personalización de Git – Atributos de Git )

Puede aplicar su formatting al código durante el paso de borrado y volver a aplicar el estándar de formatting común durante el paso de borrado.

Las respuestas que se encuentran aquí hacen un buen trabajo explicando por qué puede ser un problema para realizar cambios de formatting. Creo que una solución sería la compatibilidad con el editor para permitir que uno vea el código formateado al mismo time que minimiza los cambios de formatting al save el file.

He hecho una pregunta relacionada sobre esto en …

  • ¿Hay algún editor de text que "imprima bien" para mostrar sin cambiar el text subyacente?

Si surge alguna buena respuesta, los espectadores de esta pregunta también pueden estar interesados.