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