プロジェクト

全般

プロフィール

Rule of Shared Repository » 履歴 » バージョン 10

kaoru n, 2014-10-21 13:19

1 1 Kousuke Ebihara
h1. Rule of Shared Repository
2 1 Kousuke Ebihara
3 1 Kousuke Ebihara
h2. Overview
4 1 Kousuke Ebihara
5 1 Kousuke Ebihara
This document provides rule of handling shared repository of developing OpenPNE3.
6 1 Kousuke Ebihara
7 1 Kousuke Ebihara
Everyone must follow this rule to handle the shared repository.
8 1 Kousuke Ebihara
9 10 kaoru n
h2. Shared Repository
10 10 kaoru n
11 10 kaoru n
<pre>
12 10 kaoru n
git://github.com/openpne/OpenPNE3.git
13 10 kaoru n
</pre>
14 10 kaoru n
15 10 kaoru n
h2. Branches
16 10 kaoru n
17 10 kaoru n
Branches of the shared repository must limit the release branches (they contain the master branch). Don't push a branch for your work. You should create such a branch to your repository.
18 10 kaoru n
19 10 kaoru n
h2. Master Branch
20 10 kaoru n
21 10 kaoru n
In the master branch of the shared repository, to merge bug fixes and feature additions to the development version.
22 10 kaoru n
23 10 kaoru n
h3. 'stable-3.x.x' Branch
24 10 kaoru n
25 10 kaoru n
It is a branch of the order to carry out maintenance of the stable version (such as bug fixes). 
26 10 kaoru n
When bug fixed, attach a tag to a specific revision of this branch, it will be released.
27 10 kaoru n
28 6 Kousuke Ebihara
h2. "push" privilege to handle shared repository
29 1 Kousuke Ebihara
30 9 Rimpei Ogawa
GitHub accounts that are in the following list, can execute "push" operations to shared repository (as of Jun 23, 2014):
31 1 Kousuke Ebihara
32 6 Kousuke Ebihara
* "balibali":https://github.com/balibali
33 1 Kousuke Ebihara
* "martini2002jp":https://github.com/martini2002jp
34 9 Rimpei Ogawa
* "nishizoe":https://github.com/nishizoe
35 6 Kousuke Ebihara
* "ShinichiU":https://github.com/ShinichiU
36 6 Kousuke Ebihara
* "tejima":https://github.com/tejima
37 6 Kousuke Ebihara
* "upsilon":https://github.com/upsilon
38 1 Kousuke Ebihara
39 9 Rimpei Ogawa
If you think that you are worthy of getting "push" privilege, please tell your GitHub account to balibali, nishizoe, ShinichiU, or tejima.
40 1 Kousuke Ebihara
41 1 Kousuke Ebihara
h2. Committing
42 1 Kousuke Ebihara
43 1 Kousuke Ebihara
h3. Direct Committing
44 1 Kousuke Ebihara
45 1 Kousuke Ebihara
Committing direct is not allowed excepting few cases.
46 1 Kousuke Ebihara
47 1 Kousuke Ebihara
Release Manager can directly commit when he works for releasing.
48 2 Kousuke Ebihara
49 1 Kousuke Ebihara
In other cases, anyone must work in his own clone.
50 1 Kousuke Ebihara
51 1 Kousuke Ebihara
h3. Commit Messages
52 1 Kousuke Ebihara
53 1 Kousuke Ebihara
In merging, commit messages must follow the following rule:
54 1 Kousuke Ebihara
* A message must be written in English. A message can contain other languages, but that must be explained in English.
55 1 Kousuke Ebihara
* A message must contain related ticket ID. The ID must be specified with "refs" or "fixes" keyword. We have useful hook script for keeping it: http://gist.github.com/202866
56 1 Kousuke Ebihara
   e.g.  "Added ability to delete member from the mobile_backend application (refs #1)", "Added ability to configure gadgets from the mobile_backend application. Adding support to manage SNS from mobile is now completed. (fixes #1)"
57 1 Kousuke Ebihara
* A message must tell everyone what the commit is.
58 1 Kousuke Ebihara
59 1 Kousuke Ebihara
A commit that doesn't follow this rule, most likely is rejected.
60 3 Kousuke Ebihara
61 5 Kousuke Ebihara
h2. Merging
62 5 Kousuke Ebihara
63 10 kaoru n
It merge after the test is complete. 
64 10 kaoru n
Change a status of the related ticket to "Fixed".(Changing status is doing automatically if a commit is related with a ticket by the "fixes" keyword in its message)