<pre style='margin:0'>
Perry E. Metzger (pmetzger) pushed a commit to branch master
in repository macports-guide.

</pre>
<p><a href="https://github.com/macports/macports-guide/commit/5507effee06f048ad3cbb88b3345fb31f2e495df">https://github.com/macports/macports-guide/commit/5507effee06f048ad3cbb88b3345fb31f2e495df</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 5507eff  Add new section, "Using Git and GitHub"
</span>5507eff is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 5507effee06f048ad3cbb88b3345fb31f2e495df
</span>Author: Perry E. Metzger <perry@piermont.com>
AuthorDate: Wed Apr 11 17:29:10 2018 -0400

<span style='display:block; white-space:pre;color:#404040;'>    Add new section, "Using Git and GitHub"
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    This is an initial cut.
</span><span style='display:block; white-space:pre;color:#404040;'>    Feedback and improvements are actively solicited.
</span>---
 guide/xml/project.xml | 97 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 96 insertions(+), 1 deletion(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/guide/xml/project.xml b/guide/xml/project.xml
</span><span style='display:block; white-space:pre;color:#808080;'>index 8ffa4db..bea216b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/guide/xml/project.xml
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/guide/xml/project.xml
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -491,11 +491,106 @@
</span>     </section>
   </section>
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+  <section xml:id="project.github">
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <title>Using Git and GitHub</title>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <para>The MacPorts project uses the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <link xlink:href="https://git-scm.com/">Git distributed version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    control system</link> to manage the code for the entire
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    project. Our master repositories are hosted on
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <link xlink:href="https://github.com/">GitHub</link>.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      We maintain
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <link
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          xlink:href="https://github.com/macports">
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      public repositories</link>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      for almost all our
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      project code and documentation, including a GitHub
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      repository for the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <link xlink:href="https://github.com/macports/macports-base">
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        MacPorts system itself</link>,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        for the <link
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        xlink:href="https://github.com/macports/macports-ports">MacPorts
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ports</link>,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        and <link
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        xlink:href="https://github.com/macports/macports-guide">even for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        the guide you are reading right now</link>.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    </para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      If you're not familiar with Git and need an introduction, we
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      recommend the book
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <link
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      xlink:href="https://git-scm.com/book/en/v2">Pro Git, by Scott
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      Chacon and Ben Straub</link>.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      The book is available for free
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      online, and is published under a Creative Commons license.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    </para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      You should feel free to fork any of our code repositories, make
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      improvements to the code, and contribute them back to us via a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      GitHub pull request. We are grateful for improvements to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      absolutely everything, including new ports, fixes to ports,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      improvements to our base software, improvements to our
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      documentation and our web site, or anything else you see.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    </para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      The main steps for submitting a pull request are:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    </para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <orderedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <listitem><para>Make your changes in your own Git repository:</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <orderedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <listitem><para>Fork the appropriate repository, say
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <link xlink:href="https://github.com/macports/macports-ports">macports-ports</link>.</para></listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <listitem><para>Create a branch for your changes.</para></listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <listitem><para>Make your changes.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <para>For changes to ports and code, please follow the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        information elsewhere in this guide, and test your changes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        carefully.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <para>Changes to Portfiles should also pass <command>port lint</command>.</para></listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <listitem><para>Commit your changes to your branch, making sure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        to follow the MacPorts standard for commit messages.</para></listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <listitem><para>Be sure to rebase your changes so as to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        minimize the number of commits. Ideally, you should have just
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        one.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <para>(There are exceptions. If you have several unrelated fixes, or
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        you're changing multiple packages, etc., you might need more
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        than one commit. The point is to minimize them,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ideally with one commit per logical change.)</para></listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      </orderedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <listitem><para>Push the change branch to your own GitHub repository.</para></listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <listitem><para>Make a pull request from your branch in your own
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      git repository to the appropriate MacPorts repository.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <para>You can do this on the appropriate GitHub
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      page. For example, you can request a pull of a Portfile on
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <link
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          xlink:href="https://github.com/macports/macports-ports/pulls">
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      the macports-ports repository pull request page</link>.</para></listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <listitem><para>Go through the process of waiting for the CI
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      system to build your new port, receiving feedback from our team,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      possibly being asked to make changes to your requested
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      pull, and making those changes. (If you are asked for additional
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      changes, please squish them to avoid unnecessary
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      commits.)</para></listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    </orderedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <para> We try to process pull requests very quickly. If you do not
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    see activity on your request within a few days, please feel free
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    to get in touch with us on the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <email>macports-dev@lists.macports.org</email> mailing list to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    request a review and/or commit. Please include a link to the pull
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    request in your email.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </section>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>   <section xml:id="project.contributing">
     <title>Contributing to MacPorts</title>
 
     <para>You may contribute new ports and enhancements of any kind to already
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        existing ports using Trac tickets. As an alternative, you may instead open a pull request on
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        existing ports using Trac tickets. However, we prefer that you open a pull request on
</span>         <link xlink:href="https://github.com/macports/macports-ports/pulls">GitHub</link>,
         in which case no Trac ticket is required.
     </para>
</pre><pre style='margin:0'>

</pre>