Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 152 lines (100 sloc) 5.991 kB
87dfd00 - MFH
Lukas Smith authored
1 ====================
758eca1 @dsp MFH: - cvs->svn
dsp authored
2 SVN Commit Rules
87dfd00 - MFH
Lukas Smith authored
3 ====================
4
758eca1 @dsp MFH: - cvs->svn
dsp authored
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
87dfd00 - MFH
Lukas Smith authored
7 your questions on the mailing list. Please have a look at
758eca1 @dsp MFH: - cvs->svn
dsp authored
8 http://svnbook.red-bean.com/ for more detailed information on SVN.
3652bc0 New files.
Andrei Zmievski authored
9
10 PHP is developed through the efforts of a large number of people.
758eca1 @dsp MFH: - cvs->svn
dsp authored
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::
3652bc0 New files.
Andrei Zmievski authored
13
14 a. Make everybody happier, especially those responsible for maintaining
758eca1 @dsp MFH: - cvs->svn
dsp authored
15 the SVN itself.
87dfd00 - MFH
Lukas Smith authored
16
3652bc0 New files.
Andrei Zmievski authored
17 b. Keep the changes consistently well documented and easily trackable.
87dfd00 - MFH
Lukas Smith authored
18
3652bc0 New files.
Andrei Zmievski authored
19 c. Prevent some of those 'Oops' moments.
20
87dfd00 - MFH
Lukas Smith authored
21 d. Increase the general level of good will on planet Earth.
3652bc0 New files.
Andrei Zmievski authored
22
87dfd00 - MFH
Lukas Smith authored
23 Having said that, here are the organizational rules::
3652bc0 New files.
Andrei Zmievski authored
24
25 1. Respect other people working on the project.
26
87dfd00 - MFH
Lukas Smith authored
27 2. Discuss any significant changes on the list before committing and get
28 confirmation from the release manager for the given branch.
3652bc0 New files.
Andrei Zmievski authored
29
aab966a @jparise MAINTAINERS has become EXTENSIONS
jparise authored
30 3. Look at EXTENSIONS file to see who is the primary maintainer of
3652bc0 New files.
Andrei Zmievski authored
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.
abcee63 - Update
Marcus Boerger authored
39 To do so use "make test".
87dfd00 - MFH
Lukas Smith authored
40
abcee63 - Update
Marcus Boerger authored
41 7. For development use the --enable-maintainer-zts switch to ensure your
42 code handles TSRM correctly and doesn't break for thos who need that.
5d0281d - Changed to reflect "current practise"
Derick Rethans authored
43
87dfd00 - MFH
Lukas Smith authored
44 Currently we have the following branches in use::
45
240653b @smalyshev update the branches list
smalyshev authored
46 trunk The active development branch.
87dfd00 - MFH
Lukas Smith authored
47
d752342 @smalyshev no large changes for 5.4 anymore
smalyshev authored
48 branches/PHP_5_4 Is used to release the PHP 5.4.x series. In release
49 process, only bugfixes and very small changes approved
50 by RMs are allowed.
3652bc0 New files.
Andrei Zmievski authored
51
240653b @smalyshev update the branches list
smalyshev authored
52 branches/PHP_5_3 Is used to release the PHP 5.3.x series. This is current
53 stable version and is open for bugfixes and small
54 improvements (check with RMs if in doubt).
55
56 branches/PHP_5_2 Is used to release the PHP 5.2.x series. It is closed for
57 changes now.
87dfd00 - MFH
Lukas Smith authored
58
758eca1 @dsp MFH: - cvs->svn
dsp authored
59 branches/PHP_5_1 This branch is closed.
87dfd00 - MFH
Lukas Smith authored
60
758eca1 @dsp MFH: - cvs->svn
dsp authored
61 branches/PHP_4_4 This branch is closed.
87dfd00 - MFH
Lukas Smith authored
62
63 The next few rules are more of a technical nature::
3652bc0 New files.
Andrei Zmievski authored
64
758eca1 @dsp MFH: - cvs->svn
dsp authored
65 1. All changes should first go to trunk and then get merged from trunk
6092e3a MFH
Lukas Smith authored
66 (aka MFH'ed) to all other relevant branches.
67
68 2. DO NOT TOUCH ChangeLog! It is automagically updated from the commit
3652bc0 New files.
Andrei Zmievski authored
69 messages every day. Woe be to those who attempt to mess with it.
70
6092e3a MFH
Lukas Smith authored
71 3. All news updates intended for public viewing, such as new features,
72 bug fixes, improvements, etc., should go into the NEWS file of the
73 *first* to be released version with the given change. In other words
74 any NEWS file change only needs to done in one branch.
87dfd00 - MFH
Lukas Smith authored
75
5a10841 @tony2001 remove all references to @ thing, as it's not recommended.
tony2001 authored
76 NB! Lines, starting with @ will go automagically into NEWS file, but
87dfd00 - MFH
Lukas Smith authored
77 this is NOT recommended, though. Please, add news entries directly to
5a10841 @tony2001 remove all references to @ thing, as it's not recommended.
tony2001 authored
78 NEWS file and don't forget to keep them adjusted and sorted.
3652bc0 New files.
Andrei Zmievski authored
79
6092e3a MFH
Lukas Smith authored
80 4. Do not commit multiple file and dump all messages in one commit. If you
3652bc0 New files.
Andrei Zmievski authored
81 modified several unrelated files, commit each group separately and
82 provide a nice commit message for each one. See example below.
83
6092e3a MFH
Lukas Smith authored
84 5. Do write your commit message in such a way that it makes sense even
3652bc0 New files.
Andrei Zmievski authored
85 without the corresponding diff. One should be able to look at it, and
86 immediately know what was modified. Definitely include the function name
87 in the message as shown below.
88
6092e3a MFH
Lukas Smith authored
89 6. In your commit messages, keep each line shorter than 80 characters. And
85575e9 More information on how to use the special prefixes and the frequency
Andrei Zmievski authored
90 try to align your lines vertically, if they wrap. It looks bad otherwise.
3652bc0 New files.
Andrei Zmievski authored
91
6092e3a MFH
Lukas Smith authored
92 7. If you modified a function that is callable from PHP, prepend PHP to
3652bc0 New files.
Andrei Zmievski authored
93 the function name as shown below.
94
95
96 The format of the commit messages is pretty simple.
97
5d0281d - Changed to reflect "current practise"
Derick Rethans authored
98 Use a - to start a new item in your commit message.
99
27e5fab - Bah, Jani needs to be clearer next time ;P
Derick Rethans authored
100 If a line begins with #, it is taken to be a comment and will not appear
5a10841 @tony2001 remove all references to @ thing, as it's not recommended.
tony2001 authored
101 in the ChangeLog. Everything else goes into the ChangeLog.
85575e9 More information on how to use the special prefixes and the frequency
Andrei Zmievski authored
102
27e5fab - Bah, Jani needs to be clearer next time ;P
Derick Rethans authored
103 It is important to note that if your comment or news logline spans multiple
53c7b1c - MFH
Lukas Smith authored
104 lines, you have to put # at the beginning of **every** such line.
3652bc0 New files.
Andrei Zmievski authored
105
5d0281d - Changed to reflect "current practise"
Derick Rethans authored
106 Example. Say you modified two files, datetime.c and string.c. In datetime.c you
107 added a new format option for the date() function, and in string.c you fixed a
108 memory leak in php_trim(). Don't commit both of these at once. Commit them
3652bc0 New files.
Andrei Zmievski authored
109 separately and try to make sure your commit messages look something like the
110 following.
111
87dfd00 - MFH
Lukas Smith authored
112 For datetime.c::
113
114 - Added new 'K' format modifier to date() for printing out number of days
115 until New Year's Eve.
116
117 For string.c::
3652bc0 New files.
Andrei Zmievski authored
118
87dfd00 - MFH
Lukas Smith authored
119 - Fixed a memory leak in php_trim() resulting from improper use of zval_dtor().
120 #- Man, that thing was leaking all over the place!
3652bc0 New files.
Andrei Zmievski authored
121
5a10841 @tony2001 remove all references to @ thing, as it's not recommended.
tony2001 authored
122 The # lines will be omitted from the ChangeLog automagically.
3f6108b More emphasis on ChangeLog and NEWS daily updates.
Andrei Zmievski authored
123
43bbbe8 @johannes MFH: - Mention [DOC] tag in the README
johannes authored
124 Use the [DOC] tag in your log message whenever you feel that your changes
125 imply a documentation modification. The php-doc team will automatically
126 get notified about your commit through the php-doc mailing list.
127
1c12a65 Added how to put bug ID in commit message.
Yasuo Ohgaki authored
128 If you fix some bugs, you should note the bug ID numbers in your
129 commit message. Bug ID should be prefixed by "#" for easier access to
43bbbe8 @johannes MFH: - Mention [DOC] tag in the README
johannes authored
130 bug report when developers are browsing CVS via LXR or Bonsai.
1c12a65 Added how to put bug ID in commit message.
Yasuo Ohgaki authored
131
87dfd00 - MFH
Lukas Smith authored
132 Example::
1c12a65 Added how to put bug ID in commit message.
Yasuo Ohgaki authored
133
87dfd00 - MFH
Lukas Smith authored
134 Fixed bug #14016 (pgsql notice handler double free crash bug.)
1c12a65 Added how to put bug ID in commit message.
Yasuo Ohgaki authored
135
5a10841 @tony2001 remove all references to @ thing, as it's not recommended.
tony2001 authored
136 If you don't see your messages in ChangeLog right away, don't worry!
27e5fab - Bah, Jani needs to be clearer next time ;P
Derick Rethans authored
137 These files are updated once a day, so your stuff will not show up until
87dfd00 - MFH
Lukas Smith authored
138 somewhat later.
3652bc0 New files.
Andrei Zmievski authored
139
758eca1 @dsp MFH: - cvs->svn
dsp authored
140 When you change the NEWS file for a bug fix, then please keep the bugs
220049d @KalleZ MFH: State that bugs should be sorted desc.
KalleZ authored
141 sorted in decreasing order under the fixed version.
142
4d52ee2 Added notice about LXR and Bonsai.
Andrei Zmievski authored
143 You can use LXR (http://lxr.php.net/) and Bonsai (http://bonsai.php.net/)
758eca1 @dsp MFH: - cvs->svn
dsp authored
144 to look at PHP SVN repository in various ways.
4d52ee2 Added notice about LXR and Bonsai.
Andrei Zmievski authored
145
405934a Mention php-cvs-daily list.
Andrei Zmievski authored
146 To receive daily updates to ChangeLog and NEWS, send an empty message to
147 php-cvs-daily-subscribe@lists.php.net.
148
3652bc0 New files.
Andrei Zmievski authored
149 Happy hacking,
150
151 PHP Team
Something went wrong with that request. Please try again.