<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>