Annotation of embedaddon/php/README.SVN-RULES, revision 1.1

1.1     ! misho       1: ====================
        !             2:   SVN Commit Rules
        !             3: ====================
        !             4: 
        !             5: This is the first file you should be reading after you get your SVN account.
        !             6: We'll assume you're basically familiar with SVN, but feel free to post
        !             7: your questions on the mailing list. Please have a look at
        !             8: http://svnbook.red-bean.com/ for more detailed information on SVN.
        !             9: 
        !            10: PHP is developed through the efforts of a large number of people.
        !            11: Collaboration is a Good Thing(tm), and SVN lets us do this. Thus, following
        !            12: some basic rules with regards to SVN usage will::
        !            13: 
        !            14:    a. Make everybody happier, especially those responsible for maintaining
        !            15:       the SVN itself.
        !            16: 
        !            17:    b. Keep the changes consistently well documented and easily trackable.
        !            18: 
        !            19:    c. Prevent some of those 'Oops' moments.
        !            20: 
        !            21:    d. Increase the general level of good will on planet Earth.
        !            22: 
        !            23: Having said that, here are the organizational rules::
        !            24: 
        !            25:    1. Respect other people working on the project.
        !            26: 
        !            27:    2. Discuss any significant changes on the list before committing and get
        !            28:       confirmation from the release manager for the given branch.
        !            29: 
        !            30:    3. Look at EXTENSIONS file to see who is the primary maintainer of
        !            31:       the code you want to contribute to.
        !            32: 
        !            33:    4. If you "strongly disagree" about something another person did, don't
        !            34:       start fighting publicly - take it up in private email.
        !            35: 
        !            36:    5. If you don't know how to do something, ask first!
        !            37: 
        !            38:    6. Test your changes before committing them. We mean it. Really.
        !            39:       To do so use "make test".
        !            40: 
        !            41:    7. For development use the --enable-maintainer-zts switch to ensure your
        !            42:       code handles TSRM correctly and doesn't break for those who need that.
        !            43: 
        !            44: Currently we have the following branches in use::
        !            45: 
        !            46:   trunk             Will become PHP 6.0. This CVS branch is for active development.
        !            47: 
        !            48:   branches/PHP_5_3  Is used to release the PHP 5.3.x series. It still allows for
        !            49:                     larger enhancements.
        !            50: 
        !            51:   branches/PHP_5_2  Is used to release the PHP 5.2.x series. Only bugfixes are permitted
        !            52:                     on this branch (Consult the releasemaster prior to commit).
        !            53: 
        !            54:   branches/PHP_5_1  This branch is closed.
        !            55: 
        !            56:   branches/PHP_4_4  This branch is closed.
        !            57: 
        !            58: The next few rules are more of a technical nature::
        !            59: 
        !            60:    1. All changes should first go to trunk and then get merged from trunk
        !            61:       (aka MFH'ed) to all other relevant branches.
        !            62: 
        !            63:    2. DO NOT TOUCH ChangeLog! It is automagically updated from the commit
        !            64:       messages every day. Woe be to those who attempt to mess with it.
        !            65: 
        !            66:    3. All news updates intended for public viewing, such as new features,
        !            67:       bug fixes, improvements, etc., should go into the NEWS file of the
        !            68:       *first* to be released version with the given change. In other words
        !            69:       any NEWS file change only needs to done in one branch.
        !            70: 
        !            71:       NB! Lines, starting with @ will go automagically into NEWS file, but
        !            72:       this is NOT recommended, though. Please, add news entries directly to
        !            73:       NEWS file and don't forget to keep them adjusted and sorted.
        !            74: 
        !            75:    4. Do not commit multiple file and dump all messages in one commit. If you
        !            76:       modified several unrelated files, commit each group separately and
        !            77:       provide a nice commit message for each one. See example below.
        !            78: 
        !            79:    5. Do write your commit message in such a way that it makes sense even
        !            80:       without the corresponding diff. One should be able to look at it, and
        !            81:       immediately know what was modified. Definitely include the function name
        !            82:       in the message as shown below.
        !            83: 
        !            84:    6. In your commit messages, keep each line shorter than 80 characters. And
        !            85:       try to align your lines vertically, if they wrap. It looks bad otherwise.
        !            86: 
        !            87:    7. If you modified a function that is callable from PHP, prepend PHP to
        !            88:       the function name as shown below.
        !            89: 
        !            90: 
        !            91: The format of the commit messages is pretty simple.
        !            92: 
        !            93: Use a - to start a new item in your commit message.
        !            94: 
        !            95: If a line begins with #, it is taken to be a comment and will not appear
        !            96: in the ChangeLog. Everything else goes into the ChangeLog.
        !            97: 
        !            98: It is important to note that if your comment or news logline spans multiple
        !            99: lines, you have to put # at the beginning of **every** such line.
        !           100: 
        !           101: Example. Say you modified two files, datetime.c and string.c. In datetime.c you
        !           102: added a new format option for the date() function, and in string.c you fixed a
        !           103: memory leak in php_trim(). Don't commit both of these at once. Commit them
        !           104: separately and try to make sure your commit messages look something like the
        !           105: following.
        !           106: 
        !           107: For datetime.c::
        !           108: 
        !           109:   - Added new 'K' format modifier to date() for printing out number of days
        !           110:     until New Year's Eve.
        !           111: 
        !           112: For string.c::
        !           113: 
        !           114:   - Fixed a memory leak in php_trim() resulting from improper use of zval_dtor().
        !           115:   #- Man, that thing was leaking all over the place!
        !           116: 
        !           117: The # lines will be omitted from the ChangeLog automagically.
        !           118: 
        !           119: Use the [DOC] tag in your log message whenever you feel that your changes
        !           120: imply a documentation modification. The php-doc team will automatically
        !           121: get notified about your commit through the php-doc mailing list.
        !           122: 
        !           123: If you fix some bugs, you should note the bug ID numbers in your
        !           124: commit message. Bug ID should be prefixed by "#" for easier access to
        !           125: bug report when developers are browsing CVS via LXR or Bonsai.
        !           126: 
        !           127: Example::
        !           128: 
        !           129:   Fixed bug #14016 (pgsql notice handler double free crash bug.)
        !           130: 
        !           131: If you don't see your messages in ChangeLog right away, don't worry!
        !           132: These files are updated once a day, so your stuff will not show up until
        !           133: somewhat later.
        !           134: 
        !           135: When you change the NEWS file for a bug fix, then please keep the bugs
        !           136: sorted in decreasing order under the fixed version.
        !           137: 
        !           138: You can use LXR (http://lxr.php.net/) and Bonsai (http://bonsai.php.net/)
        !           139: to look at PHP SVN repository in various ways.
        !           140: 
        !           141: To receive daily updates to ChangeLog and NEWS, send an empty message to
        !           142: php-cvs-daily-subscribe@lists.php.net.
        !           143: 
        !           144: Happy hacking,
        !           145: 
        !           146: PHP Team

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>