1.. _development_model:
2
3Project and Governance
4#######################
5
6
7.. toctree::
8   :maxdepth: 1
9
10   tsc
11   project_roles.rst
12   working_groups
13   release_process
14   proposals
15   code_flow
16   modifying_contributions.rst
17   dev_env_and_tools
18   issues
19   communication
20   documentation
21
22
23
24The Zephyr project defines a development process workflow using GitHub
25**Issues** to track feature, enhancement, and bug reports together with GitHub
26**Pull Requests** (PRs) for submitting and reviewing changes.  Zephyr
27community members work together to review these Issues and PRs, managing
28feature enhancements and quality improvements of Zephyr through its regular
29releases, as outlined in the
30`program management overview <https://wiki.zephyrproject.org/Program-Management>`_.
31
32We can only manage the volume of Issues and PRs, by requiring timely reviews,
33feedback, and responses from the community and contributors, both for initial
34submissions and for followup questions and clarifications.  Read about the
35project's :ref:`development processes and tools <dev-environment-and-tools>`
36and specifics about :ref:`review timelines <review_time>` to learn about the
37project's goals and guidelines for our active developer community.
38
39:ref:`project_roles` describes in detail the Zephyr project roles and associated permissions
40with respect to the development process workflow.
41
42
43Terminology
44***********
45
46- mainline: The main tree where the core functionality and core features are
47  being developed.
48- subsystem/feature branch: is a branch within the same repository. In our case,
49  we will use the term branch also when referencing branches not in the same
50  repository, which are a copy of a repository sharing the same history.
51- upstream: A parent branch the source code is based on. This is the branch you
52  pull from and push to, basically your upstream.
53- LTS: Long Term Support
54