X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=README.commits;h=f6e830a2ce734803ba8eb0035055f9a0ae043152;hb=651723b4d48c276dc9d5467941f11f5dd7015675;hp=4eeeaa5016da0f5372d0cb1a17d5c3992e5dd06e;hpb=5e853d88dd1c45b32c4320ad4c3f7577ebaf5768;p=~andy%2Fgtk diff --git a/README.commits b/README.commits index 4eeeaa501..f6e830a2c 100644 --- a/README.commits +++ b/README.commits @@ -1,11 +1,11 @@ -GTK+ is part of the GNOME Subversion repository. At the current time, any +GTK+ is part of the GNOME git repository. At the current time, any person with write access to the GNOME repository, can make changes to GTK+. This is a good thing, in that it encourages many people to work on GTK+, and progress can be made quickly. However, GTK+ is a fairly large and complicated package that many other things depend on, so to avoid unnecessary breakage, and to take advantage of the knowledge -about GTK+ that has been built up over the last 4 years, we'd like -to ask people commiting to GTK+ to follow a few rules: +about GTK+ that has been built up over the years, we'd like to ask +people committing to GTK+ to follow a few rules: 0) Ask first. If your changes are major, or could possibly break existing code, you should always ask. If your change is minor and you've @@ -14,9 +14,9 @@ to ask people commiting to GTK+ to follow a few rules: somebody may know a better way to do things. If you are making changes to GTK+, you should be subscribed - to gtk-devel-list@gnome.org. (Subscription address: + to gtk-devel-list@gnome.org. (Subscription address: gtk-devel-list-request@gnome.org.) This is a good place to ask - about intended changes. + about intended changes. #gtk+ on GIMPNet (irc.gimp.org, irc.us.gimp.org, irc.eu.gimp.org, ...) is also a good place to find GTK+ developers to discuss changes with, @@ -25,30 +25,48 @@ to ask people commiting to GTK+ to follow a few rules: 1) Ask _first_. -2) There must be a ChangeLog for every commit. (If you discover that - you only committed half the files you meant to and need to fix that - up, or something, you don't need a new ChangeLog entry. But in general, - ChangeLog entries are mandatory.) Changes without ChangeLog entries - will be reverted. - -3) There _must_ be a ChangeLog for every commit. +2) With git, we no longer maintain a ChangeLog file, but you are expected + to produce a meaningful commit message. Changes without a sufficient + commit message will be reverted. See below for the expected format + of commit messages. Notes: -* If you are going to be changing many files in an experimental fashion, - it probably is a good idea to create a separate branch for your changes. +* When developing larger features or complicated bug fixes, it is + advisable to work in a branch in your own cloned GTK+ repository. + You may even consider making your repository publically available + so that others can easily test and review your changes. + +* The expected format for git commit messages is as follows: + +=== begin example commit === +Short explanation of the commit + +Longer explanation explaining exactly what's changed, whether any +external or private interfaces changed, what bugs were fixed (with bug +tracker reference if applicable) and so forth. Be concise but not too brief. +=== end example commit === -* The ChangeLog entries should preferably match in date format - with the existing entries. You can set how emacs does this - by using customize mode: + - Always add a brief description of the commit to the _first_ line of + the commit and terminate by two newlines (it will work without the + second newline, but that is not nice for the interfaces). - - M-x customize - - set Programming/Tools/ChangeLog/Add Log Time Format to - 'Old Format' + - First line (the brief description) must only be one sentence and + should start with a capital letter unless it starts with a lowercase + symbol or identifier. Don't use a trailing period either. Don't exceed + 72 characters. + + - The main description (the body) is normal prose and should use normal + punctuation and capital letters where appropriate. Normally, for patches + sent to a mailing list it's copied from there. + + - When committing code on behalf of others use the --author option, e.g. + git commit -a --author "Joe Coder " and --signoff. - Or, set the add-log-time-format to 'current-time-string in - your .emacs file. Owen Taylor 13 Aug 1998 17 Apr 2001 + +Matthias Clasen +31 Mar 2009