]> granicus.if.org Git - php/commitdiff
MFH: cvs->svn
authorDavid Soria Parra <dsp@php.net>
Tue, 14 Jul 2009 09:57:09 +0000 (09:57 +0000)
committerDavid Soria Parra <dsp@php.net>
Tue, 14 Jul 2009 09:57:09 +0000 (09:57 +0000)
README.SVN-RULES [moved from README.CVS-RULES with 59% similarity]

similarity index 59%
rename from README.CVS-RULES
rename to README.SVN-RULES
index e0837b388add33cc950aaffa1c113e4d37d0589a..2b3cb8036a5fbca205152f974cd1b2ac5e78fa85 100644 (file)
@@ -1,24 +1,31 @@
-This is the first file you should be reading after you get your CVS account.
-We'll assume you're basically familiar with CVS, but feel free to post
-your questions on the mailing list. Please have a look at 
-http://cvsbook.red-bean.com/ for more detailed information on CVS.
+====================
+  SVN Commit Rules
+====================
+
+This is the first file you should be reading after you get your SVN account.
+We'll assume you're basically familiar with SVN, but feel free to post
+your questions on the mailing list. Please have a look at
+http://svnbook.red-bean.com/ for more detailed information on SVN.
 
 PHP is developed through the efforts of a large number of people.
-Collaboration is a Good Thing(tm), and CVS lets us do this. Thus, following
-some basic rules with regards to CVS usage will:
+Collaboration is a Good Thing(tm), and SVN lets us do this. Thus, following
+some basic rules with regards to SVN usage will::
 
    a. Make everybody happier, especially those responsible for maintaining
-      the CVS itself.
+      the SVN itself.
+
    b. Keep the changes consistently well documented and easily trackable.
+
    c. Prevent some of those 'Oops' moments.
-   d. Increase the general level of good will on planet Earth.
 
+   d. Increase the general level of good will on planet Earth.
 
-Having said that, here are the organizational rules:
+Having said that, here are the organizational rules::
 
    1. Respect other people working on the project.
 
-   2. Discuss any significant changes on the list before committing. 
+   2. Discuss any significant changes on the list before committing and get
+      confirmation from the release manager for the given branch.
 
    3. Look at EXTENSIONS file to see who is the primary maintainer of
       the code you want to contribute to.
@@ -30,45 +37,54 @@ Having said that, here are the organizational rules:
 
    6. Test your changes before committing them. We mean it. Really.
       To do so use "make test".
-   
+
    7. For development use the --enable-maintainer-zts switch to ensure your
       code handles TSRM correctly and doesn't break for thos who need that.
 
-Currently we have the following branches in use:
-HEAD     Will become PHP 6.0. This CVS branch is for active development.
-PHP_5_2  Is used to release the PHP 5.2.x series. Only minor feature
-         enhancements may go in here, but please keep that as infrequent as
-         possible.
-PHP_5_1  This branch is closed.
-PHP_4_4  Is used to release the PHP 4.4.x series. Only bugfixes are permitted
-         on this branch (Consult the releasemaster prior to commit).
-PHP_4_3  This branch is closed.
+Currently we have the following branches in use::
+
+  trunk             Will become PHP 6.0. This CVS branch is for active development.
+
+  branches/PHP_5_3  Is used to release the PHP 5.3.x series. It still allows for
+                    larger enhancements.
 
-The next few rules are more of a technical nature.
+  branches/PHP_5_2  Is used to release the PHP 5.2.x series. Only bugfixes are permitted
+                    on this branch (Consult the releasemaster prior to commit).
 
-   1. DO NOT TOUCH ChangeLog! It is automagically updated from the commit
+  branches/PHP_5_1  This branch is closed.
+
+  branches/PHP_4_4  This branch is closed.
+
+The next few rules are more of a technical nature::
+
+   1. All changes should first go to trunk and then get merged from trunk
+      (aka MFH'ed) to all other relevant branches.
+
+   2. DO NOT TOUCH ChangeLog! It is automagically updated from the commit
       messages every day. Woe be to those who attempt to mess with it.
 
-   2. All news updates intended for public viewing, such as new features,
-      bug fixes, improvements, etc., should go into the NEWS file. 
-         
+   3. All news updates intended for public viewing, such as new features,
+      bug fixes, improvements, etc., should go into the NEWS file of the
+      *first* to be released version with the given change. In other words
+      any NEWS file change only needs to done in one branch.
+
       NB! Lines, starting with @ will go automagically into NEWS file, but
-      this is NOT recommended, though. Please, add news entries directly to 
+      this is NOT recommended, though. Please, add news entries directly to
       NEWS file and don't forget to keep them adjusted and sorted.
 
-   3. Do not commit multiple file and dump all messages in one commit. If you
+   4. Do not commit multiple file and dump all messages in one commit. If you
       modified several unrelated files, commit each group separately and
       provide a nice commit message for each one. See example below.
 
-   4. Do write your commit message in such a way that it makes sense even
+   5. Do write your commit message in such a way that it makes sense even
       without the corresponding diff. One should be able to look at it, and
       immediately know what was modified. Definitely include the function name
       in the message as shown below.
 
-   5. In your commit messages, keep each line shorter than 80 characters. And
+   6. In your commit messages, keep each line shorter than 80 characters. And
       try to align your lines vertically, if they wrap. It looks bad otherwise.
 
-   6. If you modified a function that is callable from PHP, prepend PHP to
+   7. If you modified a function that is callable from PHP, prepend PHP to
       the function name as shown below.
 
 
@@ -80,7 +96,7 @@ If a line begins with #, it is taken to be a comment and will not appear
 in the ChangeLog. Everything else goes into the ChangeLog.
 
 It is important to note that if your comment or news logline spans multiple
-lines, you have to put # at the beginning of _every_ such line. 
+lines, you have to put # at the beginning of **every** such line.
 
 Example. Say you modified two files, datetime.c and string.c. In datetime.c you
 added a new format option for the date() function, and in string.c you fixed a
@@ -88,13 +104,15 @@ memory leak in php_trim(). Don't commit both of these at once. Commit them
 separately and try to make sure your commit messages look something like the
 following.
 
-For datetime.c:
-- Added new 'K' format modifier to date() for printing out number of days until
-  New Year's Eve.
+For datetime.c::
+
+  - Added new 'K' format modifier to date() for printing out number of days
+    until New Year's Eve.
 
-For string.c:
-- Fixed a memory leak in php_trim() resulting from improper use of zval_dtor().
-#- Man, that thing was leaking all over the place!
+For string.c::
+
+  - Fixed a memory leak in php_trim() resulting from improper use of zval_dtor().
+  #- Man, that thing was leaking all over the place!
 
 The # lines will be omitted from the ChangeLog automagically.
 
@@ -106,16 +124,19 @@ If you fix some bugs, you should note the bug ID numbers in your
 commit message. Bug ID should be prefixed by "#" for easier access to
 bug report when developers are browsing CVS via LXR or Bonsai.
 
-Example:
+Example::
 
-Fixed bug #14016 (pgsql notice handler double free crash bug.)
+  Fixed bug #14016 (pgsql notice handler double free crash bug.)
 
 If you don't see your messages in ChangeLog right away, don't worry!
 These files are updated once a day, so your stuff will not show up until
-somewhat later. 
+somewhat later.
+
+When you change the NEWS file for a bug fix, then please keep the bugs
+sorted in decreasing order under the fixed version.
 
 You can use LXR (http://lxr.php.net/) and Bonsai (http://bonsai.php.net/)
-to look at PHP CVS repository in various ways.
+to look at PHP SVN repository in various ways.
 
 To receive daily updates to ChangeLog and NEWS, send an empty message to
 php-cvs-daily-subscribe@lists.php.net.