Merge pull request #8 from dbkinder/master

update contribute
This commit is contained in:
David Kinder 2018-03-08 16:24:22 -08:00 committed by GitHub
commit fc92a8bd4b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 41 additions and 35 deletions

View File

@ -4,7 +4,7 @@ Contribution Guidelines
####################### #######################
As an open-source project, we welcome and encourage the community to As an open-source project, we welcome and encourage the community to
submit patches directly to Project ACRN. In our collaborative open submit patches directly to project ACRN. In our collaborative open
source environment, standards and methods for submitting changes help source environment, standards and methods for submitting changes help
reduce the chaos that can result from an active development community. reduce the chaos that can result from an active development community.
@ -34,7 +34,7 @@ Developer Certification of Origin (DCO)
*************************************** ***************************************
To make a good faith effort to ensure licensing criteria are met, To make a good faith effort to ensure licensing criteria are met,
Project ACRN requires the Developer Certificate of Origin (DCO) process project ACRN requires the Developer Certificate of Origin (DCO) process
to be followed. to be followed.
The DCO is an attestation attached to every contribution made by every The DCO is an attestation attached to every contribution made by every
@ -92,12 +92,12 @@ already you'll need to force push your branch after this with ``git push -f``.
Prerequisites Prerequisites
************* *************
.. _Project ACRN website: https://projectacrn.org .. _project ACRN website: https://projectacrn.org
As a contributor, you'll want to be familiar with Project ACRN, how to As a contributor, you'll want to be familiar with project ACRN, how to
configure, install, and use it as explained in the `Project ACRN website`_ configure, install, and use it as explained in the `project ACRN website`_
and how to set up your development environment as introduced in the and how to set up your development environment as introduced in the
Project ACRN `Getting Started Guide`_. project ACRN `Getting Started Guide`_.
.. _Getting Started Guide: .. _Getting Started Guide:
https://projectacrn.github.io/getting_started/ https://projectacrn.github.io/getting_started/
@ -111,12 +111,16 @@ on https://github.com and have Git tools available on your development system.
Repository layout Repository layout
***************** *****************
To clone the main Project ACRN repository use:: To clone the ACRN hypervisor repository use::
git clone https://github.com/projectacrn/acrn-hypervisor git clone https://github.com/projectacrn/acrn-hypervisor
To clone the ACRN device model repository use::
The Project ACRN directory structure is described in the `Hypervisor git clone https://github.com/projectacrn/acrn-devicemodel
Primer`_ document. In addition to the Project ACRN hypervisor itself,
The project ACRN directory structure is described in the `Hypervisor
Primer`_ document. In addition to the ACRN hypervisor and device model itself,
you'll also find the sources for technical documentation, sample code you'll also find the sources for technical documentation, sample code
and supported board configurations. All of these are available for and supported board configurations. All of these are available for
developers to contribute to and enhance. developers to contribute to and enhance.
@ -192,11 +196,11 @@ One general practice we encourage, is to make small,
controlled changes. This practice simplifies review, makes merging and controlled changes. This practice simplifies review, makes merging and
rebasing easier, and keeps the change history clear and clean. rebasing easier, and keeps the change history clear and clean.
When contributing to Project ACRN, it is also important you provide as much When contributing to project ACRN, it is also important you provide as much
information as you can about your change, update appropriate documentation, information as you can about your change, update appropriate documentation,
and test your changes thoroughly before submitting. and test your changes thoroughly before submitting.
The general GitHub workflow used by Project ACRN developers uses a combination of The general GitHub workflow used by project ACRN developers uses a combination of
command line Git commands and browser interaction with GitHub. As it is with command line Git commands and browser interaction with GitHub. As it is with
Git, there are multiple ways of getting a task done. We'll describe a typical Git, there are multiple ways of getting a task done. We'll describe a typical
workflow here: workflow here:
@ -333,7 +337,7 @@ In cases where the file is imported from an external project, the commit
message shall contain details regarding the original project, the location of message shall contain details regarding the original project, the location of
the project, the SHA-id of the origin commit for the file, the intended the project, the SHA-id of the origin commit for the file, the intended
purpose, and if the file will be maintained by the acrn-hypervisor project, purpose, and if the file will be maintained by the acrn-hypervisor project,
(whether or not Project ACRN will contain a localized branch or if (whether or not project ACRN will contain a localized branch or if
it is a downstream copy). it is a downstream copy).
For example, a copy of a locally maintained import:: For example, a copy of a locally maintained import::

View File

@ -100,19 +100,17 @@
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="introduction/index.html">Introduction to Project ACRN</a><ul> <li class="toctree-l1"><a class="reference internal" href="introduction/index.html">Introduction to Project ACRN</a><ul>
<li class="toctree-l2"><a class="reference internal" href="introduction/index.html#licensing">Licensing</a></li> <li class="toctree-l2"><a class="reference internal" href="introduction/index.html#licensing">Licensing</a></li>
<li class="toctree-l2"><a class="reference internal" href="introduction/index.html#architecture-overview">Architecture Overview</a><ul> <li class="toctree-l2"><a class="reference internal" href="introduction/index.html#acrn-device-model-service-os-and-user-os">ACRN Device Model, Service OS, and User OS</a></li>
<li class="toctree-l3"><a class="reference internal" href="introduction/index.html#acrn-device-model-service-os-and-user-os">ACRN Device Model, Service OS, and User OS</a></li> <li class="toctree-l2"><a class="reference internal" href="introduction/index.html#boot-sequence">Boot Sequence</a></li>
<li class="toctree-l3"><a class="reference internal" href="introduction/index.html#boot-sequence">Boot Sequence</a></li> <li class="toctree-l2"><a class="reference internal" href="introduction/index.html#acrn-hypervisor-architecture">ACRN Hypervisor Architecture</a></li>
<li class="toctree-l3"><a class="reference internal" href="introduction/index.html#acrn-hypervisor-architecture">ACRN Hypervisor Architecture</a></li> <li class="toctree-l2"><a class="reference internal" href="introduction/index.html#acrn-device-model-architecture">ACRN Device Model Architecture</a></li>
<li class="toctree-l3"><a class="reference internal" href="introduction/index.html#acrn-device-model">ACRN Device Model</a></li> <li class="toctree-l2"><a class="reference internal" href="introduction/index.html#device-pass-through">Device pass through</a><ul>
<li class="toctree-l3"><a class="reference internal" href="introduction/index.html#pass-through">Pass through</a><ul> <li class="toctree-l3"><a class="reference internal" href="introduction/index.html#hardware-support-for-device-passthrough">Hardware support for device passthrough</a></li>
<li class="toctree-l4"><a class="reference internal" href="introduction/index.html#hardware-support-for-device-passthrough">Hardware support for device passthrough</a></li> <li class="toctree-l3"><a class="reference internal" href="introduction/index.html#hypervisor-support-for-device-passthrough">Hypervisor support for device passthrough</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="introduction/index.html#acrn-i-o-mediator">ACRN I/O mediator</a></li>
<li class="toctree-l3"><a class="reference internal" href="introduction/index.html#virtio-framework-architecture">Virtio framework architecture</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l2"><a class="reference internal" href="introduction/index.html#acrn-i-o-mediator">ACRN I/O mediator</a></li>
<li class="toctree-l2"><a class="reference internal" href="introduction/index.html#virtio-framework-architecture">Virtio framework architecture</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l1"><a class="reference internal" href="hardware.html">Supported Hardware</a><ul> <li class="toctree-l1"><a class="reference internal" href="hardware.html">Supported Hardware</a><ul>
@ -217,7 +215,7 @@
<div class="section" id="contribution-guidelines"> <div class="section" id="contribution-guidelines">
<span id="contribute"></span><h1>Contribution Guidelines<a class="headerlink" href="#contribution-guidelines" title="Permalink to this headline"></a></h1> <span id="contribute"></span><h1>Contribution Guidelines<a class="headerlink" href="#contribution-guidelines" title="Permalink to this headline"></a></h1>
<p>As an open-source project, we welcome and encourage the community to <p>As an open-source project, we welcome and encourage the community to
submit patches directly to Project ACRN. In our collaborative open submit patches directly to project ACRN. In our collaborative open
source environment, standards and methods for submitting changes help source environment, standards and methods for submitting changes help
reduce the chaos that can result from an active development community.</p> reduce the chaos that can result from an active development community.</p>
<p>This document explains how to participate in project conversations, log <p>This document explains how to participate in project conversations, log
@ -239,7 +237,7 @@ doing work on behalf of a company.</p>
<div class="section" id="developer-certification-of-origin-dco"> <div class="section" id="developer-certification-of-origin-dco">
<span id="dco"></span><h2>Developer Certification of Origin (DCO)<a class="headerlink" href="#developer-certification-of-origin-dco" title="Permalink to this headline"></a></h2> <span id="dco"></span><h2>Developer Certification of Origin (DCO)<a class="headerlink" href="#developer-certification-of-origin-dco" title="Permalink to this headline"></a></h2>
<p>To make a good faith effort to ensure licensing criteria are met, <p>To make a good faith effort to ensure licensing criteria are met,
Project ACRN requires the Developer Certificate of Origin (DCO) process project ACRN requires the Developer Certificate of Origin (DCO) process
to be followed.</p> to be followed.</p>
<p>The DCO is an attestation attached to every contribution made by every <p>The DCO is an attestation attached to every contribution made by every
developer. In the commit message of the contribution, (described more developer. In the commit message of the contribution, (described more
@ -292,10 +290,10 @@ already youll need to force push your branch after this with <code class="doc
</div> </div>
<div class="section" id="prerequisites"> <div class="section" id="prerequisites">
<h2>Prerequisites<a class="headerlink" href="#prerequisites" title="Permalink to this headline"></a></h2> <h2>Prerequisites<a class="headerlink" href="#prerequisites" title="Permalink to this headline"></a></h2>
<p>As a contributor, youll want to be familiar with Project ACRN, how to <p>As a contributor, youll want to be familiar with project ACRN, how to
configure, install, and use it as explained in the <a class="reference external" href="https://projectacrn.org">Project ACRN website</a> configure, install, and use it as explained in the <a class="reference external" href="https://projectacrn.org">project ACRN website</a>
and how to set up your development environment as introduced in the and how to set up your development environment as introduced in the
Project ACRN <a class="reference external" href="https://projectacrn.github.io/getting_started/">Getting Started Guide</a>.</p> project ACRN <a class="reference external" href="https://projectacrn.github.io/getting_started/">Getting Started Guide</a>.</p>
<p>You should be familiar with common developer tools such as Git and CMake, and <p>You should be familiar with common developer tools such as Git and CMake, and
platforms such as GitHub.</p> platforms such as GitHub.</p>
<p>If you havent already done so, youll need to create a (free) GitHub account <p>If you havent already done so, youll need to create a (free) GitHub account
@ -303,12 +301,16 @@ on <a class="reference external" href="https://github.com">https://github.com</a
</div> </div>
<div class="section" id="repository-layout"> <div class="section" id="repository-layout">
<h2>Repository layout<a class="headerlink" href="#repository-layout" title="Permalink to this headline"></a></h2> <h2>Repository layout<a class="headerlink" href="#repository-layout" title="Permalink to this headline"></a></h2>
<p>To clone the main Project ACRN repository use:</p> <p>To clone the ACRN hypervisor repository use:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">git</span> <span class="n">clone</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">projectacrn</span><span class="o">/</span><span class="n">acrn</span><span class="o">-</span><span class="n">hypervisor</span> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">git</span> <span class="n">clone</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">projectacrn</span><span class="o">/</span><span class="n">acrn</span><span class="o">-</span><span class="n">hypervisor</span>
</pre></div> </pre></div>
</div> </div>
<p>The Project ACRN directory structure is described in the <a class="reference external" href="https://projectacrn.github.io/hypervisor_primer">Hypervisor <p>To clone the ACRN device model repository use:</p>
Primer</a> document. In addition to the Project ACRN hypervisor itself, <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">git</span> <span class="n">clone</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">projectacrn</span><span class="o">/</span><span class="n">acrn</span><span class="o">-</span><span class="n">devicemodel</span>
</pre></div>
</div>
<p>The project ACRN directory structure is described in the <a class="reference external" href="https://projectacrn.github.io/hypervisor_primer">Hypervisor
Primer</a> document. In addition to the ACRN hypervisor and device model itself,
youll also find the sources for technical documentation, sample code youll also find the sources for technical documentation, sample code
and supported board configurations. All of these are available for and supported board configurations. All of these are available for
developers to contribute to and enhance.</p> developers to contribute to and enhance.</p>
@ -364,10 +366,10 @@ comment, <code class="docutils literal"><span class="pre">//</span></code>, is n
<p>One general practice we encourage, is to make small, <p>One general practice we encourage, is to make small,
controlled changes. This practice simplifies review, makes merging and controlled changes. This practice simplifies review, makes merging and
rebasing easier, and keeps the change history clear and clean.</p> rebasing easier, and keeps the change history clear and clean.</p>
<p>When contributing to Project ACRN, it is also important you provide as much <p>When contributing to project ACRN, it is also important you provide as much
information as you can about your change, update appropriate documentation, information as you can about your change, update appropriate documentation,
and test your changes thoroughly before submitting.</p> and test your changes thoroughly before submitting.</p>
<p>The general GitHub workflow used by Project ACRN developers uses a combination of <p>The general GitHub workflow used by project ACRN developers uses a combination of
command line Git commands and browser interaction with GitHub. As it is with command line Git commands and browser interaction with GitHub. As it is with
Git, there are multiple ways of getting a task done. Well describe a typical Git, there are multiple ways of getting a task done. Well describe a typical
workflow here:</p> workflow here:</p>
@ -503,7 +505,7 @@ present):</p>
message shall contain details regarding the original project, the location of message shall contain details regarding the original project, the location of
the project, the SHA-id of the origin commit for the file, the intended the project, the SHA-id of the origin commit for the file, the intended
purpose, and if the file will be maintained by the acrn-hypervisor project, purpose, and if the file will be maintained by the acrn-hypervisor project,
(whether or not Project ACRN will contain a localized branch or if (whether or not project ACRN will contain a localized branch or if
it is a downstream copy).</p> it is a downstream copy).</p>
<p>For example, a copy of a locally maintained import:</p> <p>For example, a copy of a locally maintained import:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Origin</span><span class="p">:</span> <span class="n">Contiki</span> <span class="n">OS</span> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Origin</span><span class="p">:</span> <span class="n">Contiki</span> <span class="n">OS</span>

File diff suppressed because one or more lines are too long