Skip to content

Commit 2170c2a

Browse files
authored
Merge pull request #792 from greg0ire/document-monorepo
Document the mono repository layout.
2 parents bb3a291 + 7c4efcb commit 2170c2a

File tree

2 files changed

+36
-0
lines changed

2 files changed

+36
-0
lines changed

docs/contributions/index.rst

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,15 @@ Contributions
77
Clone the mono repository
88
=========================
99

10+
This project uses a :doc:`mono repository </contributions/monorepository-layout>`,
11+
meaning a single git repository regroups several different Composer packages,
12+
built from several git repositories split from this repository.
13+
Contributions need to be made against that mono repository.
14+
15+
To clone the repository, run the following command::
16+
17+
git clone [email protected]:phpDocumentor/guides.git
18+
1019
Run the tests
1120
=============
1221

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
.. include:: /include.rst.txt
2+
3+
===============
4+
Mono repository
5+
===============
6+
7+
This project uses a mono repository approach. This means that all the
8+
development happens in a single repository, later split into multiple
9+
repositories for distribution.
10+
11+
Consequences:
12+
13+
- The mono repository is not installable as a Composer package, and its
14+
``composer.json`` file is not even valid because there is no package
15+
name. Its purpose is to help installing development dependencies, and
16+
dependencies of each component.
17+
- The ``require`` section of the root ``composer.json`` file should only
18+
contain the list of the components.
19+
- The ``autoload-dev`` section of the root ``composer.json`` file should
20+
make all the components's test support code available.
21+
- The ``require-dev`` section of the root ``composer.json`` file of
22+
components should only be used to mention optional dependencies, and
23+
not actual development dependencies.
24+
- Issues and pull requests should be opened in the mono repository, and
25+
not in the component repositories.
26+
27+
The components are located under the ``packages`` directory.

0 commit comments

Comments
 (0)