Skip to content

Commit

Permalink
Merge pull request #6 from RadarTech/staging
Browse files Browse the repository at this point in the history
Add contribution overview
  • Loading branch information
ryan-shea authored Jan 30, 2019
2 parents afec54b + 3c070c0 commit d2cbb7f
Show file tree
Hide file tree
Showing 3 changed files with 92 additions and 9 deletions.
22 changes: 21 additions & 1 deletion admin/pull-requests.md → .contributing/pull-requests.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,27 @@ Pull request guidelines are a foundational step towards a better project and con
development practices. Pull request guidelines will nurture a culture of
broader peer review and lower friction across contributors and core team members.

# How to contribute via a Pull Request

> A pull request (PR) is a method of submitting contributions to an open source project. It is often the preferred way of submitting contributions to a project using a Distributed Version Control System (DVCS) such as Git.
FreeCodeCamp is an Open Source project and all of the contents are freely editable.

- [Fork](https://help.github.com/articles/fork-a-repo/) the project on GitHub.
- [Clone](https://help.github.com/articles/cloning-a-repository/) it to a local machine. Do not edit online in github.com, as the editor may cause issues with JSON formatted data.
- [Create a branch](https://help.github.com/articles/creating-and-deleting-branches-within-your-repository/) with the form `fix/some-bug` or `feature/add-cool-thing` and make your changes in that branch and commit them.
- [Push](https://help.github.com/articles/pushing-to-a-remote/) the branch online (if editing locally).
- [Create a pull request](https://help.github.com/articles/creating-a-pull-request/) against the **"staging"** branch.
- The title (also called the subject) of your PR should be descriptive of your changes. i.e. `fixed typo in Hash`
- If the PR is meant to fix a specific issue, append to the end of your PR's commit message `closes #1337`. This tells GitHub to close that issue if the PR is merged.

## Further Reading

- [GitHub & Git Foundations Training](https://www.youtube.com/playlist?list=PLg7s6cbtAD15G8lNyoaYDuKZSKyJrgwB-) - How to use Git and GitHub
- [FreeCodeCamp Contribution Guidelines](https://github.com/FreeCodeCamp/FreeCodeCamp#contributing)
- [How to write Git commit messages](http://chris.beams.io/posts/git-commit/)
- [How to Clone FCC to a Windows PC](FreeCodeCamp-Fork-W

## Guidelines

This section outlines the guidelines that should be imposed upon pull requests for the Ion Wiki.
Expand All @@ -40,7 +61,6 @@ Finally, PRs should be atomic. That is, they should address one item (task, bug,
story, etc). Exceptions to this requirement may exist (such as content dumps) but they
should be the exception.


## On Merging

Below are some general guidelines on how merging should be handled
Expand Down
64 changes: 64 additions & 0 deletions .contributing/starthere.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
latest-revision: '2019-01-27T00:00:00.000Z'
original-author: Ryan Shea (ryan-shea)
created: '2019-01-01T00:00:00.000Z'
status: Accepted
title: Contributor Overview
contributors: Ryan Shea (ryan-shea)
type: article
description: ''
discussions-to: GitHub URL
category: org
---

# Contribution Overview

Welcome to the Ion Wiki Contributor Guide!

> [If you've never contributed to open source before, click here to watch a short course to give you a primer.](https://egghead.io/lessons/javascript-introduction-to-github)
If you have something to add, you think that something is missing, or you found something that is incorrect, you have a couple of options.

To contribute to the Ion Wiki, you need an account on GitHub. Then, you can either open an issue in the [issue tracker](https://github.com/radartech/ionwiki/issues). Alternatively, you can edit the documentation yourself.

Have a look at the top contributors to the [wiki here](https://github.com/RadarTech/ionwiki/graphs/contributors).

## Writing Markdown
GitHub and GitBook automatically renders Markdown files into nice-looking pages. You can edit the files online or locally by cloning this repository.

Here are a couple of [guides to Markdown](https://help.github.com/categories/writing-on-github/) from the folks at GitHub.

### Adding to the Table of Content
If you've created a new page and need to add it in the GitBook TOC, edit the [SUMMARY.md file](https://github.com/RadarTech/ionwiki/blob/master/SUMMARY.md).

## Quick edits to existing documents

Quick edits streamline the process to report and fix small errors and omissions in wiki articles. Despite all efforts, small grammar and spelling errors do make their way into our published articles. While you can create issues to report mistakes, it's faster and easier to create a pull request (PR) to fix the issue. Almost every article displays an edit button in the top right of the GUI.

Make your changes in the web editor. You can click the **Preview changes** tab to check the formatting of your change.

Once you have made your changes, scroll to the bottom of the page. Enter a title and description for your PR and click **Propose file change**.

Now that you've proposed your change, you need to ask the owners of the repository to "pull" your changes into their repository. This is done using something called a ["pull request"](https://github.com/RadarTech/ionwiki/tree/master/.contributing/pull-requests.md). When you clicked on **Propose file change** in the figure above, you should have been taken to a new page that looks like the following figure:

Click **Create pull request**, enter a title (and optionally a description) for the pull request, and then click **Create pull request** again.

That's it! Content team members will review and merge your PR. You may get some feedback requesting changes if you made larger changes.

We use PRs for all changes, even for contributors that have write access.

The in-browser editing experience is best for minor or infrequent changes. If you make large contributions, or use advanced Git features (such as branch management or advanced merge conflict resolution), you need to fork the repo and work locally.

## Review open PRs

You can read new topics before they are published by checking the currently open PRs. Reviews follow the [GitHub flow](https://guides.github.com/introduction/flow/) process. You can see proposed updates or new articles in public repositories. Review them and add your comments. Look at any of our docs repositories, and check the open pull requests (PRs) for areas that interest you. Community feedback on proposed updates helps the entire community.

## Create quality issues

The wiki is a continual work in progress. Good issues help us focus our efforts on the highest priorities for the community. The more detail you can provide, the more helpful the issue. Tell us what information you sought. Tell us the search terms you used. If you can't get started, tell us how you want to start exploring unfamiliar technology.

Issues start the conversation about what's needed. The content team will respond to these issues with ideas for what we can add, and ask for your opinions. When we create a draft, we'll ask you to review the PR.

#### References

[Microsoft Open Source Contribution Guide](https://github.com/MicrosoftDocs/Contribute/tree/master)
15 changes: 7 additions & 8 deletions contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ We're looking for support in the following areas:
* Improving stub articles
* Content research and roadmapping

# [Click here to get started.](https://github.com/RadarTech/ionwiki/tree/master/.contributing/starthere.md)

## Your First Contribution

Unsure where to start? You can start by looking through these beginner and help-wanted issues:
Expand All @@ -38,10 +40,10 @@ At this point, you're ready to make your changes! Feel free to ask for help; eve

#### How to submit a contribution on GitHub

Start by forking the Ion Wiki repo. From there, either:
Start by forking the Ion Wiki repo. From there, either:

1. Create an article using the [template](https://github.com/RadarRelay/ionwiki/blob/master/template.md) in the root directory
2. Edit or revise existing articles
2. Edit or revise existing articles
3. Move and restructure content

As a rule of thumb, changes are obvious fixes if they do not introduce any new pages or structural organization. Some likely examples include the following:
Expand Down Expand Up @@ -83,11 +85,8 @@ The default for each contribution is that it is accepted once no committer has a

In the case of an objection being raised in a pull request by another committer, all involved committers should seek to arrive at a consensus by way of addressing concerns being expressed by discussion, compromise on the proposed change, or withdrawal of the proposed change.

If a contribution is controversial and committers cannot agree about how to get it to land or if it should land then it will be escalated to the Ion Core team. Ion members will regularly discuss pending contributions in order to find a resolution. It is expected that only a small minority of issues be brought to the Ion Core team for resolution and that discussion and compromise among committers be the default resolution mechanism.

## Community

We don't just discuss in GitHub!
If a contribution is controversial and committers cannot agree about how to get it to land or if it should land then it will be escalated to the Ion Core team. Ion members will regularly discuss pending contributions in order to find a resolution. It is expected that only a small minority of issues be brought to the Ion Core team for resolution and that discussion and compromise among committers be the default resolution mechanism.

Chat with us on Rocket.Chat \(to be added\).
## Outreach

Have content or other suggestions, but aren't a fan of GitHub? You can reach us directly at [email protected].

0 comments on commit d2cbb7f

Please sign in to comment.