Contributings on Laradock http://laradock.io/contributing/index.xml Recent content in Contributings on Laradock Hugo -- gohugo.io en-us Contributing http://laradock.io/contributing/ Mon, 01 Jan 0001 00:00:00 +0000 http://laradock.io/contributing/ <p>Your contribution is more than welcome.</p> <h2 id="i-have-a-question-problem">I have a Question/Problem</h2> <p>If you have questions about how to use Laradock, please direct your questions to the discussion on <a href="https://gitter.im/Laradock/laradock">Gitter</a>. If you believe your question could help others, then consider opening an <a href="https://github.com/laradock/laradock/issues">Issue</a> (it will be labeled as <code>Question</code>) And you can still seek help on Gitter for it.</p> <h2 id="i-found-an-issue">I found an Issue</h2> <p>If have an issue or you found a typo in the documentation, you can help us by opnening an <a href="https://github.com/laradock/laradock/issues">Issue</a>.</p> <p><strong>Steps to do before opening an Issue:</strong></p> <ol> <li><p>Before you submit your issue search the archive, maybe your question was already answered couple hours ago (search in the closed Issues as well).</p></li> <li><p>Decide if the Issue belongs to this project or to <a href="https://github.com/docker">Docker</a> itself! or even the tool you are using such as Nginx or MongoDB&hellip;</p></li> </ol> <p>If your issue appears to be a bug, and hasn&rsquo;t been reported, then open a new issue.</p> <p><em>This Help us to maximize the effort we can spend fixing issues and adding new features, by not reporting duplicate issues.</em></p> <h2 id="i-want-a-feature">I want a Feature</h2> <p>You can request a new feature by submitting an <a href="https://github.com/laradock/laradock/issues">Issue</a> (it will be labeled as <code>Feature Suggestion</code>). If you would like to implement a new feature then consider submitting a Pull Request yourself.</p> <h2 id="i-want-to-update-the-documentation-site">I want to update the Documentation (Site)</h2> <p>Laradock uses <a href="https://gohugo.io/">Hugo</a> as website generator tool, with the <a href="http://themes.gohugo.io/theme/material-docs/">Material Docs theme</a>. You might need to check their docs quickly.</p> <p>Go the <code>DOCUMENTATION/_settings/content</code> and search for the markdown file you want to edit</p> <p>Note: Every folder represents a section in the sidebar &ldquo;Menu&rdquo;. And every page and sidebar has a <code>weight</code> number to show it&rsquo;s position in the site.</p> <p>To update the sidebar or add a new section to it, you can edit this <code>DOCUMENTATION/_settings/config.toml</code> toml file.</p> <blockquote> <p>The site will be auto-generated in the <code>docs/</code> folder by <a href="https://travis-ci.org/laradock/laradock/">Travis CI</a>.</p> </blockquote> <p><br></p> <h3 id="to-host-the-website-locally">To Host the website locally</h3> <ol> <li>Install <a href="https://gohugo.io/">Hugo</a> on your machine.</li> <li>Edit the <code>DOCUMENTATION/_settings/content</code>.</li> <li>Delete the <code>/docs</code> folder from the root.</li> <li>After you finish the editing, go to <code>DOCUMENTATION/_settings/</code> and run the <code>hugo</code> command to generate the HTML docs (inside a new <code>/docs</code> folder).</li> </ol> <h2 id="how-to-support-new-software-add-new-container">How to support new Software (Add new Container)</h2> <ul> <li><p>Create folder with the software name.</p></li> <li><p>Add a <code>Dockerfile</code>, write your code there.</p></li> <li><p>You may add additional files in the software folder.</p></li> <li><p>Add the software to the <code>docker-compose.yml</code> file.</p></li> <li><p>Make sure you follow our commenting style.</p></li> <li><p>Add the software in the <code>Documentation</code>.</p></li> </ul> <h2 id="edit-existing-software-edit-a-container">Edit existing Software (Edit a Container)</h2> <ul> <li><p>Open the software (container) folder.</p></li> <li><p>Edit the files you want to update.</p></li> <li><p><strong>Note:</strong> If you want to edit the base image of the <code>Workspace</code> or the <code>php-fpm</code> Containers, you need to edit their Docker-files from their GitHub repositories. For more info read their Dockerfiles comment on the Laradock repository.</p></li> <li><p>Make sure to update the <code>Documentation</code> in case you made any changes.</p></li> </ul> <h2 id="pull-request">Pull Request</h2> <h3 id="1-before-submitting-a-pull-request-pr">1. Before Submitting a Pull Request (PR)</h3> <p>Always Test everything and make sure its working:</p> <ul> <li>Pull the latest updates (or fork of you don’t have permission)</li> <li>Before editing anything: <ul> <li>Test building the container (docker-compose build &ndash;no-cache container-name) build with no cache first.</li> <li>Test running the container with some other containers in real app and see of everything is working fine.</li> </ul></li> <li>Now edit the container (edit section by section and test rebuilding the container after every edited section) <ul> <li>Testing building the container (docker-compose build container-name) with no errors.</li> <li>Test it in a real App if possible.</li> </ul></li> </ul> <h3 id="2-submitting-a-pr">2. Submitting a PR</h3> <p>Consider the following guidelines:</p> <ul> <li><p>Search <a href="https://github.com/laradock/laradock/pulls">GitHub</a> for an open or closed Pull Request that relates to your submission. You don&rsquo;t want to duplicate efforts.</p></li> <li><p>Make your changes in a new git branch:</p> <pre><code class="language-shell"> git checkout -b my-fix-branch master </code></pre></li> <li><p>Commit your changes using a descriptive commit message.</p></li> <li><p>Push your branch to GitHub:</p> <pre><code class="language-shell">git push origin my-fix-branch </code></pre></li> <li><p>In GitHub, send a pull request to <code>laradock:master</code>.</p></li> <li><p>If we suggest changes then:</p> <ul> <li>Make the required updates.</li> <li>Commit your changes to your branch (e.g. <code>my-fix-branch</code>).</li> <li>Push the changes to your GitHub repository (this will update your Pull Request).</li> </ul></li> </ul> <blockquote> <p>If the PR gets too outdated we may ask you to rebase and force push to update the PR:</p> </blockquote> <pre><code class="language-shell">git rebase master -i git push origin my-fix-branch -f </code></pre> <p><em>WARNING. Squashing or reverting commits and forced push thereafter may remove GitHub comments on code that were previously made by you and others in your commits.</em></p> <h3 id="3-after-your-pr-is-merged">3. After your PR is merged</h3> <p>After your pull request is merged, you can safely delete your branch and pull the changes from the main (upstream) repository:</p> <ul> <li><p>Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows:</p> <pre><code class="language-shell">git push origin --delete my-fix-branch </code></pre></li> <li><p>Check out the master branch:</p> <pre><code class="language-shell">git checkout master -f </code></pre></li> <li><p>Delete the local branch:</p> <pre><code class="language-shell">git branch -D my-fix-branch </code></pre></li> <li><p>Update your master with the latest upstream version:</p> <pre><code class="language-shell">git pull --ff upstream master </code></pre></li> </ul> <p><br></p> <h4 id="happy-coding">Happy Coding :)</h4>