2009-10-02 9 views
5

Me preguntaba cómo la gente normalmente separa los múltiples comentarios en una única confirmación. ¿Estrellas? ¿Comas? ¿Líneas separadas? Solo me pregunto qué es lo mejor para ti.En git, ¿cuáles son algunas buenas convenciones para formatear múltiples comentarios en una única confirmación

estoy usando esto ahora cuando agrego comentarios a través de Emacs, pero no está seguro me gusta:

Added error messaging 
Cleaned up sign-up UI 
Added recaptcha 

# Please enter the commit message for your changes. Lines starting 
# with '#' will be ignored, and an empty message aborts the commit. 
# 
# Committer: Conrad Chu <[email protected]> 
# 
# On branch master 
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
# 
#  modified: app/controllers/api_controller.rb 
#  modified: app/controllers/users_controller.rb 
#  modified: app/models/user.rb 
#  modified: app/views/users/new.html.erb 
#  modified: app/views/users/show.html.erb 
#  modified: config/environment.rb 
#  modified: db/migrate/20090923001219_create_users.rb 
#  modified: db/schema.rb 
#  modified: doc/README 
#  modified: public/stylesheets/master.css 
#  new file: vendor/plugins/recaptcha/.gitignore 
#  new file: vendor/plugins/recaptcha/CHANGELOG 

Respuesta

18

Git tiene muy fuertes convenciones sobre los mensajes de registro, pero las reglas son simples:

  1. primera línea es un resumen de la confirmación
  2. Primera línea puede tener una descripción del alcance del prefijo "módulo:"
  3. Segunda línea está vacía
  4. Luego sigue una discusión en los párrafos, con tal de que necesita ser

Como punto de partida se debe utilizar estas convenciones, como las herramientas de presentación aún dependen de ellos (La segunda línea está vacía es importante, y en muchas situaciones, solo verá el resumen de la primera línea.)

Con git, las confirmaciones deben ser pequeñas, por lo que la primera respuesta es, por supuesto, no modificar muchas cosas en una confirmación. Deberías tener tres commits, no uno.

Pero, puedes escribir un ensayo completo en el registro de compromiso, y allí puedes describir sus cambios con todo detalle (motivación, diseños desechados, ideas). Si los tres cambios realmente pertenecen juntos, este texto dejará en claro por qué.

Encontré more instructions describiendo las mismas convenciones de mensajes de Git Commit, con ejemplos para los cuales los comandos de git dependen del formato particular. (La mayor parte se basa en una convención existente: parches enviados por correo electrónico).

3

Tengo que estar de acuerdo con @ kaizer.se. Usa la habilidad de git para organizar las modificaciones en 3 commits diferentes. De esta manera, tienes una idea clara de lo que es cada modificación y los comentarios de tu compromiso te darán el por qué. Al fusionar de nuevo en su rama principal (suponiendo que esté utilizando las ramas para las modificaciones de características), puede acumular estas asignaciones más pequeñas en una combinación.

3

me esfuerzo para no cometer los cambios que requieren demasiados comentarios, pero si hay una necesidad de ella que suelo hacer algo como esto:

Multiple changes: 

- done this 
- fixed that 
- removed other 

Maybe some additional explanations. 

tratar de mantener sus confirmaciones atómica, por lo que características se refiere . Paso etapas o líneas de código para eso cuando me olvido de comprometerme realmente después de cada función completada.

Cuestiones relacionadas