Skip to content

bof/php-src

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
foobar
May 24, 2007
3bec201 · May 24, 2007
May 18, 2007
May 24, 2007
Apr 16, 2007
May 24, 2007
May 19, 2007
Jan 1, 2007
Oct 12, 2006
May 21, 2007
Jan 12, 2007
May 18, 2007
May 2, 2007
May 20, 2007
Dec 22, 2005
Apr 22, 2002
May 24, 2007
Apr 13, 2001
Apr 13, 2001
Jan 6, 2002
Jan 2, 2003
Jan 1, 2004
Jan 10, 2005
Jan 1, 2006
Apr 20, 2007
Jan 10, 2007
Jan 1, 2006
May 24, 2007
Jan 4, 2007
Apr 11, 2007
Apr 23, 2007
May 21, 2006
Oct 11, 2001
Jun 29, 2003
Aug 30, 2006
May 23, 2007
Aug 15, 2005
Aug 24, 2004
Apr 7, 1999
Oct 23, 2002
Mar 4, 2003
Dec 22, 2003
Apr 15, 2004
Mar 25, 2003
Jan 10, 2007
Jan 19, 2007
Jul 3, 2003
May 18, 2007
Dec 23, 2003
Feb 8, 2004
Dec 6, 2005
Nov 20, 2005
Dec 11, 2005
May 28, 2004
Jun 8, 2000
May 24, 2007
Nov 29, 2005
Dec 2, 2003
Nov 29, 2005
Nov 29, 2005
May 24, 2007
Mar 14, 2004
Dec 19, 2003
Feb 20, 2003
Nov 8, 2005
Jan 1, 2006
Nov 29, 2005
May 12, 2006
Jan 10, 2007
Mar 7, 2006
May 22, 2007
May 22, 2007
Jan 17, 2004
May 20, 2007
Sep 19, 2005
Mar 8, 2006
Dec 30, 1999
Nov 21, 1999
Dec 1, 2000
Mar 3, 2006
Aug 11, 2005
Jan 19, 2007
Jan 18, 2007

Repository files navigation

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.

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:

   a. Make everybody happier, especially those responsible for maintaining
      the CVS 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.


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. 

   3. Look at EXTENSIONS file to see who is the primary maintainer of
      the code you want to contribute to.

   4. If you "strongly disagree" about something another person did, don't
      start fighting publicly - take it up in private email.

   5. If you don't know how to do something, ask first!

   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  Is used to release the PHP 5.1.x series. Only bugfixes are permitted
         on this branch (Consult the releasemaster prior to commit).
PHP_5_0  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.

The next few rules are more of a technical nature.

   1. 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. 
	  
      NB! Lines, starting with @ will go automagically into NEWS file, but
      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
      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
      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
      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
      the function name as shown below.


The format of the commit messages is pretty simple.

Use a - to start a new item in your commit message.

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. 

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
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 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.

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:

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. 

You can use LXR (http://lxr.php.net/) and Bonsai (http://bonsai.php.net/)
to look at PHP CVS repository in various ways.

To receive daily updates to ChangeLog and NEWS, send an empty message to
[email protected].

Happy hacking,

PHP Team

About

The PHP Interpreter

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 63.2%
  • PHP 31.3%
  • C++ 4.7%
  • Shell 0.4%
  • Diff 0.1%
  • JavaScript 0.1%
  • Other 0.2%