我想知道人们通常如何在一次提交中分离多个评论。明星?逗号?单独的线?只是想知道你发现什么是最好的。
当我通过Emacs添加评论时,我现在正在使用它,但不确定我喜欢它:
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 <chuboy@conradlaptop.local>
#
# 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
答案 0 :(得分:18)
Git对日志消息有很强的约定,但规则很简单:
首先,您应该使用这些约定,因为演示工具甚至依赖于它们(第二行是空的很重要,在许多情况下,您只会看到第一行摘要。)
使用git,提交应该很小,所以第一个答案当然是,你不应该在一次提交中修改很多东西。你应该有三个提交,而不是一个。
但是,你可以在提交日志中写一篇完整的文章,在那里你可以描述他们所有细节的变化(动机,丢弃的设计,想法)。如果这三个变化真正属于一起,那么本文将明确原因。
我发现more instructions描述了相同的Git Commit消息约定,其中git命令依赖于特定格式。 (大部分都是基于现有的惯例:通过电子邮件发送的补丁。)
答案 1 :(得分:3)
我必须同意@ kaizer.se。使用git的能力将修改分为3个不同的提交。通过这种方式,您可以清楚地了解每个修改的内容,并且您的提交注释将为您提供原因。在合并回主分支(假设您正在使用功能模块的分支)时,您可以将这些较小的提交汇总到一个合并中。
答案 2 :(得分:3)
我努力不提交需要太多评论的更改,但如果有需要,我通常会这样做:
Multiple changes:
- done this
- fixed that
- removed other
Maybe some additional explanations.
就功能而言,尽量保持提交的原子性。当我忘记在每个完成的功能之后忘记实际提交时,我会为这个或者代码排序。
答案 3 :(得分:1)
在这里查看,http://progit.org/book/ch5-2.html,有提交指南和示例提交。