mirror of https://github.com/lukechilds/docs.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
3.3 KiB
94 lines
3.3 KiB
6 years ago
|
### Sections in this article
|
||
|
{:.no_toc}
|
||
|
* TOC
|
||
|
{:toc}
|
||
|
|
||
|
Good pull requests—patches, improvements, new features—are a fantastic help. They should remain focused in scope and avoid containing unrelated commits.
|
||
|
|
||
|
**Please ask first** before embarking on any significant pull request (e.g. implementing features, refactoring code, porting to a different language), otherwise you risk spending a lot of time working on something that the project's developers might not want to merge into the project.
|
||
|
|
||
|
Please adhere to the [coding guidelines](#code-guidelines) used throughout the project (indentation, accurate comments, etc.) and any other requirements (such as test coverage).
|
||
|
|
||
|
When contributing to Blockstack's documentation, you should edit the documentation source files in [the `/app/` directory of the `master` branch](https://github.com/blockstack/blockstack-browser/tree/master/app).
|
||
|
|
||
|
Adhering to the following process is the best way to get your work included in the project:
|
||
|
|
||
|
1. [Fork](https://help.github.com/fork-a-repo/) the project, clone your fork,
|
||
|
and configure the remotes:
|
||
|
|
||
|
```bash
|
||
|
# Clone your fork of the repo into the current directory
|
||
|
git clone https://github.com/<your-username>/blockstack-browser.git
|
||
|
# Navigate to the newly cloned directory
|
||
|
cd blockstack-browser
|
||
|
# Assign the original repo to a remote called "upstream"
|
||
|
git remote add upstream https://github.com/blockstack/blockstack-browser.git
|
||
|
```
|
||
|
|
||
|
2. If you cloned a while ago, get the latest changes from upstream:
|
||
|
|
||
|
```bash
|
||
|
git checkout master
|
||
|
git pull upstream master
|
||
|
```
|
||
|
|
||
|
3. Create a new topic branch (off the main project development branch) to
|
||
|
contain your feature, change, or fix:
|
||
|
|
||
|
```bash
|
||
|
git checkout -b <topic-branch-name>
|
||
|
```
|
||
|
|
||
|
4. Commit your changes in logical chunks. Please adhere to these [git commit
|
||
|
message guidelines](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
|
||
|
or your code is unlikely be merged into the main project. Use Git's
|
||
|
[interactive rebase](https://help.github.com/articles/interactive-rebase)
|
||
|
feature to tidy up your commits before making them public.
|
||
|
|
||
|
5. Locally merge (or rebase) the upstream development branch into your topic branch:
|
||
|
|
||
|
```bash
|
||
|
git pull [--rebase] upstream master
|
||
|
```
|
||
|
|
||
|
6. Push your topic branch up to your fork:
|
||
|
|
||
|
```bash
|
||
|
git push origin <topic-branch-name>
|
||
|
```
|
||
|
|
||
|
7. [Open a Pull Request](https://help.github.com/articles/using-pull-requests/)
|
||
|
with a clear title and description against the `master` branch.
|
||
|
|
||
|
**IMPORTANT**: By submitting a patch, you agree to allow the project owners to
|
||
|
license your work under the terms of the [MPL-2.0 License](LICENSE.md) (if it
|
||
|
includes code changes) and under the terms of the
|
||
|
[Creative Commons Attribution 3.0 Unported License](docs/LICENSE.md)
|
||
|
(if it includes documentation changes).
|
||
|
|
||
|
|
||
|
## Code guidelines
|
||
|
|
||
|
### HTML
|
||
|
|
||
|
[Adhere to the Code Guide.](http://codeguide.co/#html)
|
||
|
|
||
|
- Use tags and elements appropriate for an HTML5 doctype (e.g., self-closing tags).
|
||
|
|
||
|
### JS
|
||
|
|
||
|
- No semicolons (in client-side JS)
|
||
|
- 2 spaces (no tabs)
|
||
|
- strict mode
|
||
|
- "Attractive"
|
||
|
- Don't use jQuery (no "$" allowed)
|
||
|
|
||
|
### Checking code
|
||
|
|
||
|
Run `npm run dev` before committing to ensure your changes follow our coding standards.
|
||
|
|
||
|
|
||
|
## License
|
||
|
|
||
|
By contributing your code, you agree to license your contribution under the [MPL-2.0 License](LICENSE.md).
|