phpBB

Development Wiki

Difference between revisions of "Git"

From phpBB Development Wiki

(phpBB3: move vcs guidelines from coding guidelines to wiki)
(Moved to new dev docs.)
 
(49 intermediate revisions by 11 users not shown)
Line 1: Line 1:
This document provides details of the various repositories and branches available as part of the phpBB Git infrastructure, for details of how to use git please see [[Working with Git]].
+
This documentation has been moved.
=Branch Names=
+
Feature branches should be called *feature/feature-name*, bug or minor improvements do not need a name, their branches should be called *ticket/1234* with the correct ticket id. If you want to give something a name that is not a feature you may use *task/task-name*. When these branches go into the main phpBB repository they are renamed *<category>/<user>/<name-or-id>* to make clear from which developer's repository the branch was merged.
+
  
= Commit Messages =
+
[https://area51.phpbb.com/docs/dev/31x/development/git.html phpBB Development Documentation: Git].
You should always create a ticket before starting work. It is important that every commit references a ticket. It does not matter what state that ticket is in. No line should contain more than 80 characters. The first line should be followed by a blank line. This means you should not break the first sentence of your message! The purpose of this is to maintain useful --oneline logs which only display the first line of every message. A good commit message then looks like this:
+
 
+
[branch you are working on] A short explanation of the change.
+
+
A more detailed explanation of which things exactly were changed and for
+
what reasons. This can span multiple paragraphs for a bigger change. And
+
it should really make clear all the changes to anyone reading this commit
+
message without further context.
+
+
TICKET-ID
+
 
+
An example:
+
 
+
[feature/request-class] Adding a request class based on the one found in ascraeus-experiment.
+
+
The well known request_var function is now a wrapper that calls a method
+
on a phpbb_request object. The class provides additional functionality.
+
It can replace all super globals with special objects that throw errors
+
when being accessed. They still allow isset operations to keep backward
+
compatibility with isset($_POST['var']) checks. The phpbb_request class
+
implements the phpbb_request_interface which is available for easy mocking
+
of input in tests.
+
+
PHPBB3-1234
+
 
+
The structure of a commit message which is verified by the commit-msg hook is as follows:
+
[<branch>] <summary>
+
+
<description>
+
+
<ticket1>
+
<ticketn>
+
The required components are the summary, branch, and list of tickets; the description is optional.
+
Both the description and ticket list must be preceded by a _single_ empty line. The description element is unrestricted
+
length and may contain any number of empty lines to separate paragraphs; each ticket in the list
+
must be on its own line. If the branch is a [ticket/] branch, the ticket list must contain a matching
+
ticket, finally the ticket list may not contain any duplicates.
+
 
+
= phpBB4 =
+
== Repository ==
+
<pre>git://github.com/phpbb/phpbb.git</pre>
+
 
+
== Branches ==
+
 
+
* master - Development [http://github.com/phpbb/phpbb/tree/master View on GitHub]
+
 
+
Since phpBB 4 is still far from a stable version, there is only one development branch, in which all development takes place.
+
 
+
== How to contribute? ==
+
Please post your changes for review in a new topic on the [http://area51.phpbb.com/phpBB/viewforum.php?f=78 4.0/Rhea RFCs & Patches forum at area51]. Please either provide a link to your commit or branch on github or attach a patch created with git format-patch. For larger changes consider [[phpBB4/RFC|writing an RFC]] first.
+
 
+
= phpBB3 =
+
== Repository ==
+
<pre>git://github.com/phpbb/phpbb3.git</pre>
+
 
+
== Branches ==
+
 
+
* develop - The latest unstable development version with new features etc. [http://github.com/phpbb/phpbb3/tree/develop View on GitHub]
+
* develop-* - Development branches of stable phpBB releases. Branched off of develop.
+
** develop-olympus - Development branch of the stable 3.0 line. Bug fixes are applied here. [http://github.com/phpbb/phpbb3/tree/develop-olympus View on GitHub]
+
** develop-ascraeus - Development branch of the stable 3.1 line. Bug fixes are applied here.
+
* master - Release [http://github.com/phpbb/phpbb3/tree/master View on GitHub]
+
* qa - A branch containing all phpBB3 release candidates and stable releases. [http://github.com/phpbb/phpbb3/tree/qa View on GitHub]
+
 
+
== Tags ==
+
 
+
Released versions. Stable ones get merged into the master branch.
+
 
+
* release-3.Y-BX - Beta release X of the 3.Y line.
+
* release-3.Y-RCX - Release candidate X of the 3.Y line.
+
* release-3.Y.Z-RCX - Release candidate X of the stable 3.Y.Z release.
+
* release-3.0.X - Stable 3.0.X release.
+
* release-2.0.X - Old stable 2.0.X release.
+
 
+
This means all bugfix development should take place on develop-olympus and will be merged into develop. All feature development should take place in develop. Read more about the workflow in the next section
+
 
+
== How to contribute? ==
+
When fixing a bug, please post in the bug tracker. When adding a feature to 3.1 post your patch for review in a new topic on the [http://area51.phpbb.com/phpBB/viewforum.php?f=84 3.1/Ascraeus RFCs & Patches forum at area51]. Please either provide a link to your commit or branch on github or attach a patch created with git format-patch. For larger features or changes consider posting an RFC on area51 first.
+
 
+
== Workflow ==
+
 
+
Please see [[Development_Workflow]].
+
 
+
= phpBB2 =
+
 
+
== Repository ==
+
<pre>git://github.com/phpbb/phpbb3.git</pre>
+
 
+
== Branches ==
+
* master-phpbb2 - Release [http://github.com/phpbb/phpbb3/tree/master-phpbb2 View on GitHub]
+
 
+
= See Also =
+
* [[Working with Git]]
+
 
+
[[Category:Development]]
+

Latest revision as of 18:19, 5 December 2016

This documentation has been moved.

phpBB Development Documentation: Git.